[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