[radeon-alex:amd-mainline-hybrid-4.12 1596/2092] 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
Tue Aug 29 03:21:33 UTC 2017


tree:   git://people.freedesktop.org/~agd5f/linux.git amd-mainline-hybrid-4.12
head:   0439a4b45dfef1c775f45f29831bfbcee37a582f
commit: 86a60e76532a64856c762cd98ee612a6cadf3fd2 [1596/2092] Change fence references to dma_fence
reproduce:
        # apt-get install sparse
        git checkout 86a60e76532a64856c762cd98ee612a6cadf3fd2
        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

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

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

:::::: TO: Felix Kuehling <Felix.Kuehling at amd.com>
:::::: CC: Evan Quan <evan.quan 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