[radeon-alex:amd-staging-dkms-4.13 1811/2206] drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h:517:80: sparse: dubious one-bit signed bitfield

kbuild test robot fengguang.wu at intel.com
Fri Oct 20 09:28:19 UTC 2017


tree:   git://people.freedesktop.org/~agd5f/linux.git amd-staging-dkms-4.13
head:   2b14e1f4fded74b9efeb990869076cebb06d27ee
commit: c5a743365208938dae80f1cca8df9c370ba54292 [1811/2206] drm/amdkfd: fix in tree build
reproduce:
        # apt-get install sparse
        git checkout c5a743365208938dae80f1cca8df9c370ba54292
        make ARCH=x86_64 allmodconfig
        make C=1 CF=-D__CHECK_ENDIAN__


sparse warnings: (new ones prefixed by >>)


vim +517 drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h

cab7e222 Felix Kuehling 2017-03-14  492  
cab7e222 Felix Kuehling 2017-03-14  493  struct pm4_mec_release_mem {
cab7e222 Felix Kuehling 2017-03-14  494  	union {
cab7e222 Felix Kuehling 2017-03-14  495  		union PM4_MES_TYPE_3_HEADER header;     /*header */
cab7e222 Felix Kuehling 2017-03-14  496  		unsigned int ordinal1;
cab7e222 Felix Kuehling 2017-03-14  497  	};
cab7e222 Felix Kuehling 2017-03-14  498  
cab7e222 Felix Kuehling 2017-03-14  499  	union {
cab7e222 Felix Kuehling 2017-03-14  500  		struct {
cab7e222 Felix Kuehling 2017-03-14  501  			unsigned int event_type:6;
cab7e222 Felix Kuehling 2017-03-14  502  			unsigned int reserved1:2;
cab7e222 Felix Kuehling 2017-03-14  503  			enum mec_release_mem_event_index_enum event_index:4;
cab7e222 Felix Kuehling 2017-03-14  504  			unsigned int tcl1_vol_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  505  			unsigned int tc_vol_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  506  			unsigned int reserved2:1;
cab7e222 Felix Kuehling 2017-03-14  507  			unsigned int tc_wb_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  508  			unsigned int tcl1_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  509  			unsigned int tc_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  510  			uint32_t reserved3:1;
cab7e222 Felix Kuehling 2017-03-14  511  			uint32_t tc_nc_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  512  			uint32_t tc_wc_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  513  			uint32_t tc_md_action_ena:1;
cab7e222 Felix Kuehling 2017-03-14  514  			uint32_t reserved4:3;
cab7e222 Felix Kuehling 2017-03-14  515  			enum mec_release_mem_cache_policy_enum cache_policy:2;
cab7e222 Felix Kuehling 2017-03-14  516  			uint32_t reserved5:2;
cab7e222 Felix Kuehling 2017-03-14 @517  			enum mec_release_mem_pq_exe_status_enum pq_exe_status:1;
cab7e222 Felix Kuehling 2017-03-14  518  			uint32_t reserved6:2;
cab7e222 Felix Kuehling 2017-03-14  519  		} bitfields2;
cab7e222 Felix Kuehling 2017-03-14  520  		unsigned int ordinal2;
cab7e222 Felix Kuehling 2017-03-14  521  	};
cab7e222 Felix Kuehling 2017-03-14  522  
cab7e222 Felix Kuehling 2017-03-14  523  	union {
cab7e222 Felix Kuehling 2017-03-14  524  		struct {
cab7e222 Felix Kuehling 2017-03-14  525  			uint32_t reserved7:16;
cab7e222 Felix Kuehling 2017-03-14  526  			enum mec_release_mem_dst_sel_enum dst_sel:2;
cab7e222 Felix Kuehling 2017-03-14  527  			uint32_t reserved8:6;
cab7e222 Felix Kuehling 2017-03-14  528  			enum mec_release_mem_int_sel_enum int_sel:3;
cab7e222 Felix Kuehling 2017-03-14  529  			uint32_t reserved9:2;
cab7e222 Felix Kuehling 2017-03-14  530  			enum mec_release_mem_data_sel_enum data_sel:3;
cab7e222 Felix Kuehling 2017-03-14  531  		} bitfields3;
cab7e222 Felix Kuehling 2017-03-14  532  		unsigned int ordinal3;
cab7e222 Felix Kuehling 2017-03-14  533  	};
cab7e222 Felix Kuehling 2017-03-14  534  
cab7e222 Felix Kuehling 2017-03-14  535  	union {
cab7e222 Felix Kuehling 2017-03-14  536  		struct {
cab7e222 Felix Kuehling 2017-03-14  537  			uint32_t reserved10:2;
cab7e222 Felix Kuehling 2017-03-14  538  			unsigned int address_lo_32b:30;
cab7e222 Felix Kuehling 2017-03-14  539  		} bitfields4;
cab7e222 Felix Kuehling 2017-03-14  540  		struct {
cab7e222 Felix Kuehling 2017-03-14  541  			uint32_t reserved11:3;
cab7e222 Felix Kuehling 2017-03-14  542  			uint32_t address_lo_64b:29;
cab7e222 Felix Kuehling 2017-03-14  543  		} bitfields4b;
cab7e222 Felix Kuehling 2017-03-14  544  		uint32_t reserved12;
cab7e222 Felix Kuehling 2017-03-14  545  		unsigned int ordinal4;
cab7e222 Felix Kuehling 2017-03-14  546  	};
cab7e222 Felix Kuehling 2017-03-14  547  
cab7e222 Felix Kuehling 2017-03-14  548  	union {
cab7e222 Felix Kuehling 2017-03-14  549  		uint32_t address_hi;
cab7e222 Felix Kuehling 2017-03-14  550  		uint32_t reserved13;
cab7e222 Felix Kuehling 2017-03-14  551  		uint32_t ordinal5;
cab7e222 Felix Kuehling 2017-03-14  552  	};
cab7e222 Felix Kuehling 2017-03-14  553  
cab7e222 Felix Kuehling 2017-03-14  554  	union {
cab7e222 Felix Kuehling 2017-03-14  555  		uint32_t data_lo;
cab7e222 Felix Kuehling 2017-03-14  556  		uint32_t cmp_data_lo;
cab7e222 Felix Kuehling 2017-03-14  557  		struct {
cab7e222 Felix Kuehling 2017-03-14  558  			uint32_t dw_offset:16;
cab7e222 Felix Kuehling 2017-03-14  559  			uint32_t num_dwords:16;
cab7e222 Felix Kuehling 2017-03-14  560  		} bitfields6c;
cab7e222 Felix Kuehling 2017-03-14  561  		uint32_t reserved14;
cab7e222 Felix Kuehling 2017-03-14  562  		uint32_t ordinal6;
cab7e222 Felix Kuehling 2017-03-14  563  	};
cab7e222 Felix Kuehling 2017-03-14  564  
cab7e222 Felix Kuehling 2017-03-14  565  	union {
cab7e222 Felix Kuehling 2017-03-14  566  		uint32_t data_hi;
cab7e222 Felix Kuehling 2017-03-14  567  		uint32_t cmp_data_hi;
cab7e222 Felix Kuehling 2017-03-14  568  		uint32_t reserved15;
cab7e222 Felix Kuehling 2017-03-14  569  		uint32_t reserved16;
cab7e222 Felix Kuehling 2017-03-14  570  		uint32_t ordinal7;
cab7e222 Felix Kuehling 2017-03-14  571  	};
cab7e222 Felix Kuehling 2017-03-14  572  
cab7e222 Felix Kuehling 2017-03-14  573  	uint32_t int_ctxid;
cab7e222 Felix Kuehling 2017-03-14  574  

:::::: The code at line 517 was first introduced by commit
:::::: cab7e2227b1b41824cff022c263cc15867b9909b drm/amdkfd: Add Vega10 support for KFD

:::::: TO: Felix Kuehling <Felix.Kuehling at amd.com>
:::::: CC: Le.Ma <Le.Ma at amd.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation


More information about the dri-devel mailing list