lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202206250434.xnBtY3UR-lkp@intel.com>
Date:   Sat, 25 Jun 2022 10:59:16 +0800
From:   kernel test robot <lkp@...el.com>
To:     Oded Gabbay <ogabbay@...nel.org>
Cc:     llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
        linux-kernel@...r.kernel.org
Subject: [ogabbay:gaudi2_full 46/48]
 drivers/misc/habanalabs/goya/goya.c:392:8: error: no member named
 'cfg_base_address' in 'struct asic_fixed_properties'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git gaudi2_full
head:   91e0cd8151cd8592199b21f047a3915fe06ba098
commit: 0145cf802f6578c51c76ff60867cb00342ab8a47 [46/48] habanalabs: initialize new asic properties
config: x86_64-randconfig-a005
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 6fa9120080c35a5ff851c3fc3358692c4ef7ce0d)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git/commit/?id=0145cf802f6578c51c76ff60867cb00342ab8a47
        git remote add ogabbay https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git
        git fetch --no-tags ogabbay gaudi2_full
        git checkout 0145cf802f6578c51c76ff60867cb00342ab8a47
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/misc/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

>> drivers/misc/habanalabs/goya/goya.c:392:8: error: no member named 'cfg_base_address' in 'struct asic_fixed_properties'
           prop->cfg_base_address = CFG_BASE;
           ~~~~  ^
>> drivers/misc/habanalabs/goya/goya.c:397:8: error: no member named 'completion_mode' in 'struct asic_fixed_properties'
           prop->completion_mode = HL_COMPLETION_MODE_JOB;
           ~~~~  ^
>> drivers/misc/habanalabs/goya/goya.c:397:26: error: use of undeclared identifier 'HL_COMPLETION_MODE_JOB'
           prop->completion_mode = HL_COMPLETION_MODE_JOB;
                                   ^
   drivers/misc/habanalabs/goya/goya.c:5260:5: warning: no previous prototype for function 'goya_pre_schedule_cs' [-Wmissing-prototypes]
   int goya_pre_schedule_cs(struct hl_cs *cs)
       ^
   drivers/misc/habanalabs/goya/goya.c:5260:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int goya_pre_schedule_cs(struct hl_cs *cs)
   ^
   static 
   drivers/misc/habanalabs/goya/goya.c:5344:5: warning: no previous prototype for function 'goya_ack_mmu_page_fault_or_access_error' [-Wmissing-prototypes]
   int goya_ack_mmu_page_fault_or_access_error(struct hl_device *hdev,
       ^
   drivers/misc/habanalabs/goya/goya.c:5344:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int goya_ack_mmu_page_fault_or_access_error(struct hl_device *hdev,
   ^
   static 
   2 warnings and 3 errors generated.
--
>> drivers/misc/habanalabs/gaudi/gaudi.c:585:8: error: no member named 'cache_line_size' in 'struct asic_fixed_properties'
           prop->cache_line_size = DEVICE_CACHE_LINE_SIZE;
           ~~~~  ^
>> drivers/misc/habanalabs/gaudi/gaudi.c:586:8: error: no member named 'cfg_base_address' in 'struct asic_fixed_properties'
           prop->cfg_base_address = CFG_BASE;
           ~~~~  ^
>> drivers/misc/habanalabs/gaudi/gaudi.c:591:8: error: no member named 'completion_mode' in 'struct asic_fixed_properties'
           prop->completion_mode = HL_COMPLETION_MODE_JOB;
           ~~~~  ^
>> drivers/misc/habanalabs/gaudi/gaudi.c:591:26: error: use of undeclared identifier 'HL_COMPLETION_MODE_JOB'
           prop->completion_mode = HL_COMPLETION_MODE_JOB;
                                   ^
>> drivers/misc/habanalabs/gaudi/gaudi.c:618:8: error: no member named 'mmu_cache_mng_addr' in 'struct asic_fixed_properties'
           prop->mmu_cache_mng_addr = MMU_CACHE_MNG_ADDR;
           ~~~~  ^
>> drivers/misc/habanalabs/gaudi/gaudi.c:619:8: error: no member named 'mmu_cache_mng_size' in 'struct asic_fixed_properties'
           prop->mmu_cache_mng_size = MMU_CACHE_MNG_SIZE;
           ~~~~  ^
   drivers/misc/habanalabs/gaudi/gaudi.c:3883:43: error: no member named 'mmu_cache_mng_addr' in 'struct asic_fixed_properties'
           WREG32(mmSTLB_CACHE_INV_BASE_39_8, prop->mmu_cache_mng_addr >> 8);
                                              ~~~~  ^
   drivers/misc/habanalabs/gaudi/../common/habanalabs.h:2272:61: note: expanded from macro 'WREG32'
   #define WREG32(reg, v) hdev->asic_funcs->wreg(hdev, (reg), (v))
                                                               ^
   drivers/misc/habanalabs/gaudi/gaudi.c:3884:44: error: no member named 'mmu_cache_mng_addr' in 'struct asic_fixed_properties'
           WREG32(mmSTLB_CACHE_INV_BASE_49_40, prop->mmu_cache_mng_addr >> 40);
                                               ~~~~  ^
   drivers/misc/habanalabs/gaudi/../common/habanalabs.h:2272:61: note: expanded from macro 'WREG32'
   #define WREG32(reg, v) hdev->asic_funcs->wreg(hdev, (reg), (v))
                                                               ^
   drivers/misc/habanalabs/gaudi/gaudi.c:6082:20: error: no member named 'mmu_cache_mng_size' in 'struct asic_fixed_properties'
                           hdev->asic_prop.mmu_cache_mng_size;
                           ~~~~~~~~~~~~~~~ ^
   drivers/misc/habanalabs/gaudi/gaudi.c:8601:5: warning: no previous prototype for function 'gaudi_pre_schedule_cs' [-Wmissing-prototypes]
   int gaudi_pre_schedule_cs(struct hl_cs *cs)
       ^
   drivers/misc/habanalabs/gaudi/gaudi.c:8601:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int gaudi_pre_schedule_cs(struct hl_cs *cs)
   ^
   static 
   drivers/misc/habanalabs/gaudi/gaudi.c:8977:5: warning: no previous prototype for function 'gaudi_ack_mmu_page_fault_or_access_error' [-Wmissing-prototypes]
   int gaudi_ack_mmu_page_fault_or_access_error(struct hl_device *hdev,
       ^
   drivers/misc/habanalabs/gaudi/gaudi.c:8977:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int gaudi_ack_mmu_page_fault_or_access_error(struct hl_device *hdev,
   ^
   static 
   2 warnings and 9 errors generated.


vim +392 drivers/misc/habanalabs/goya/goya.c

   359	
   360	int goya_set_fixed_properties(struct hl_device *hdev)
   361	{
   362		struct asic_fixed_properties *prop = &hdev->asic_prop;
   363		int i;
   364	
   365		prop->max_queues = GOYA_QUEUE_ID_SIZE;
   366		prop->hw_queues_props = kcalloc(prop->max_queues,
   367				sizeof(struct hw_queue_properties),
   368				GFP_KERNEL);
   369	
   370		if (!prop->hw_queues_props)
   371			return -ENOMEM;
   372	
   373		for (i = 0 ; i < NUMBER_OF_EXT_HW_QUEUES ; i++) {
   374			prop->hw_queues_props[i].type = QUEUE_TYPE_EXT;
   375			prop->hw_queues_props[i].driver_only = 0;
   376			prop->hw_queues_props[i].cb_alloc_flags = CB_ALLOC_KERNEL;
   377		}
   378	
   379		for (; i < NUMBER_OF_EXT_HW_QUEUES + NUMBER_OF_CPU_HW_QUEUES ; i++) {
   380			prop->hw_queues_props[i].type = QUEUE_TYPE_CPU;
   381			prop->hw_queues_props[i].driver_only = 1;
   382			prop->hw_queues_props[i].cb_alloc_flags = CB_ALLOC_KERNEL;
   383		}
   384	
   385		for (; i < NUMBER_OF_EXT_HW_QUEUES + NUMBER_OF_CPU_HW_QUEUES +
   386				NUMBER_OF_INT_HW_QUEUES; i++) {
   387			prop->hw_queues_props[i].type = QUEUE_TYPE_INT;
   388			prop->hw_queues_props[i].driver_only = 0;
   389			prop->hw_queues_props[i].cb_alloc_flags = CB_ALLOC_USER;
   390		}
   391	
 > 392		prop->cfg_base_address = CFG_BASE;
   393		prop->device_dma_offset_for_host_access = HOST_PHYS_BASE;
   394		prop->host_base_address = HOST_PHYS_BASE;
   395		prop->host_end_address = prop->host_base_address + HOST_PHYS_SIZE;
   396		prop->completion_queues_count = NUMBER_OF_CMPLT_QUEUES;
 > 397		prop->completion_mode = HL_COMPLETION_MODE_JOB;
   398		prop->dram_base_address = DRAM_PHYS_BASE;
   399		prop->dram_size = DRAM_PHYS_DEFAULT_SIZE;
   400		prop->dram_end_address = prop->dram_base_address + prop->dram_size;
   401		prop->dram_user_base_address = DRAM_BASE_ADDR_USER;
   402	
   403		prop->sram_base_address = SRAM_BASE_ADDR;
   404		prop->sram_size = SRAM_SIZE;
   405		prop->sram_end_address = prop->sram_base_address + prop->sram_size;
   406		prop->sram_user_base_address = prop->sram_base_address +
   407							SRAM_USER_BASE_OFFSET;
   408	
   409		prop->mmu_pgt_addr = MMU_PAGE_TABLES_ADDR;
   410		prop->mmu_dram_default_page_addr = MMU_DRAM_DEFAULT_PAGE_ADDR;
   411		if (hdev->pldm)
   412			prop->mmu_pgt_size = 0x800000; /* 8MB */
   413		else
   414			prop->mmu_pgt_size = MMU_PAGE_TABLES_SIZE;
   415		prop->mmu_pte_size = HL_PTE_SIZE;
   416		prop->mmu_hop_table_size = HOP_TABLE_SIZE_512_PTE;
   417		prop->mmu_hop0_tables_total_size = HOP0_512_PTE_TABLES_TOTAL_SIZE;
   418		prop->dram_page_size = PAGE_SIZE_2MB;
   419		prop->device_mem_alloc_default_page_size = prop->dram_page_size;
   420		prop->dram_supports_virtual_memory = true;
   421	
   422		prop->dmmu.hop_shifts[MMU_HOP0] = MMU_V1_0_HOP0_SHIFT;
   423		prop->dmmu.hop_shifts[MMU_HOP1] = MMU_V1_0_HOP1_SHIFT;
   424		prop->dmmu.hop_shifts[MMU_HOP2] = MMU_V1_0_HOP2_SHIFT;
   425		prop->dmmu.hop_shifts[MMU_HOP3] = MMU_V1_0_HOP3_SHIFT;
   426		prop->dmmu.hop_shifts[MMU_HOP4] = MMU_V1_0_HOP4_SHIFT;
   427		prop->dmmu.hop_masks[MMU_HOP0] = MMU_V1_0_HOP0_MASK;
   428		prop->dmmu.hop_masks[MMU_HOP1] = MMU_V1_0_HOP1_MASK;
   429		prop->dmmu.hop_masks[MMU_HOP2] = MMU_V1_0_HOP2_MASK;
   430		prop->dmmu.hop_masks[MMU_HOP3] = MMU_V1_0_HOP3_MASK;
   431		prop->dmmu.hop_masks[MMU_HOP4] = MMU_V1_0_HOP4_MASK;
   432		prop->dmmu.start_addr = VA_DDR_SPACE_START;
   433		prop->dmmu.end_addr = VA_DDR_SPACE_END;
   434		prop->dmmu.page_size = PAGE_SIZE_2MB;
   435		prop->dmmu.num_hops = MMU_ARCH_5_HOPS;
   436		prop->dmmu.last_mask = LAST_MASK;
   437		/* TODO: will be duplicated until implementing per-MMU props */
   438		prop->dmmu.hop_table_size = prop->mmu_hop_table_size;
   439		prop->dmmu.hop0_tables_total_size = prop->mmu_hop0_tables_total_size;
   440	
   441		/* shifts and masks are the same in PMMU and DMMU */
   442		memcpy(&prop->pmmu, &prop->dmmu, sizeof(prop->dmmu));
   443		prop->pmmu.start_addr = VA_HOST_SPACE_START;
   444		prop->pmmu.end_addr = VA_HOST_SPACE_END;
   445		prop->pmmu.page_size = PAGE_SIZE_4KB;
   446		prop->pmmu.num_hops = MMU_ARCH_5_HOPS;
   447		prop->pmmu.last_mask = LAST_MASK;
   448		/* TODO: will be duplicated until implementing per-MMU props */
   449		prop->pmmu.hop_table_size = prop->mmu_hop_table_size;
   450		prop->pmmu.hop0_tables_total_size = prop->mmu_hop0_tables_total_size;
   451	
   452		/* PMMU and HPMMU are the same except of page size */
   453		memcpy(&prop->pmmu_huge, &prop->pmmu, sizeof(prop->pmmu));
   454		prop->pmmu_huge.page_size = PAGE_SIZE_2MB;
   455	
   456		prop->dram_size_for_default_page_mapping = VA_DDR_SPACE_END;
   457		prop->cfg_size = CFG_SIZE;
   458		prop->max_asid = MAX_ASID;
   459		prop->num_of_events = GOYA_ASYNC_EVENT_ID_SIZE;
   460		prop->high_pll = PLL_HIGH_DEFAULT;
   461		prop->cb_pool_cb_cnt = GOYA_CB_POOL_CB_CNT;
   462		prop->cb_pool_cb_size = GOYA_CB_POOL_CB_SIZE;
   463		prop->max_power_default = MAX_POWER_DEFAULT;
   464		prop->dc_power_default = DC_POWER_DEFAULT;
   465		prop->tpc_enabled_mask = TPC_ENABLED_MASK;
   466		prop->pcie_dbi_base_address = mmPCIE_DBI_BASE;
   467		prop->pcie_aux_dbi_reg_addr = CFG_BASE + mmPCIE_AUX_DBI;
   468	
   469		strncpy(prop->cpucp_info.card_name, GOYA_DEFAULT_CARD_NAME,
   470			CARD_NAME_MAX_LEN);
   471	
   472		prop->max_pending_cs = GOYA_MAX_PENDING_CS;
   473	
   474		prop->first_available_user_msix_interrupt = USHRT_MAX;
   475	
   476		for (i = 0 ; i < HL_MAX_DCORES ; i++)
   477			prop->first_available_cq[i] = USHRT_MAX;
   478	
   479		prop->fw_cpu_boot_dev_sts0_valid = false;
   480		prop->fw_cpu_boot_dev_sts1_valid = false;
   481		prop->hard_reset_done_by_fw = false;
   482		prop->gic_interrupts_enable = true;
   483	
   484		prop->server_type = HL_SERVER_TYPE_UNKNOWN;
   485	
   486		prop->clk_pll_index = HL_GOYA_MME_PLL;
   487	
   488		prop->use_get_power_for_reset_history = true;
   489	
   490		prop->configurable_stop_on_err = true;
   491	
   492		prop->set_max_power_on_device_init = true;
   493	
   494		prop->dma_mask = 48;
   495	
   496		return 0;
   497	}
   498	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

View attachment "config" of type "text/plain" (138247 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ