kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
@ 2021-08-27 15:12 kernel test robot
  2021-08-27 15:34 ` Jason Gunthorpe
  0 siblings, 1 reply; 7+ messages in thread
From: kernel test robot @ 2021-08-27 15:12 UTC (permalink / raw)
  To: Max Gurtovoy
  Cc: llvm, kbuild-all, kvm, Alex Williamson, Jason Gunthorpe, Yishai Hadas

[-- Attachment #1: Type: text/plain, Size: 18997 bytes --]

tree:   https://github.com/awilliam/linux-vfio.git next
head:   ea870730d83fc13a5fa2bd0e175176d7ac8a400a
commit: 343b7258687ecfbb363bfda8833a7cf641aac524 [33/38] PCI: Add 'override_only' field to struct pci_device_id
config: i386-randconfig-a004-20210827 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
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://github.com/awilliam/linux-vfio/commit/343b7258687ecfbb363bfda8833a7cf641aac524
        git remote add vfio https://github.com/awilliam/linux-vfio.git
        git fetch --no-tags vfio next
        git checkout 343b7258687ecfbb363bfda8833a7cf641aac524
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   drivers/gpu/drm/i915/i915_pci.c:953:2: note: previous initialization is here
           GEN12_FEATURES,
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:862:2: note: expanded from macro 'GEN12_FEATURES'
           GEN11_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:833:15: note: expanded from macro 'GEN11_FEATURES'
           .dbuf.size = 2048, \
                        ^~~~
   drivers/gpu/drm/i915/i915_pci.c:954:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
           XE_LPD_FEATURES,
           ^~~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:950:21: note: expanded from macro 'XE_LPD_FEATURES'
           .dbuf.slice_mask = BIT(DBUF_S1) | BIT(DBUF_S2) | BIT(DBUF_S3) | BIT(DBUF_S4)
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/vdso/bits.h:7:19: note: expanded from macro 'BIT'
   #define BIT(nr)                 (UL(1) << (nr))
                                   ^
   drivers/gpu/drm/i915/i915_pci.c:953:2: note: previous initialization is here
           GEN12_FEATURES,
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:862:2: note: expanded from macro 'GEN12_FEATURES'
           GEN11_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:834:21: note: expanded from macro 'GEN11_FEATURES'
           .dbuf.slice_mask = BIT(DBUF_S1) | BIT(DBUF_S2), \
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/vdso/bits.h:7:19: note: expanded from macro 'BIT'
   #define BIT(nr)                 (UL(1) << (nr))
                                   ^
   drivers/gpu/drm/i915/i915_pci.c:960:3: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
                   BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2),
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/vdso/bits.h:7:19: note: expanded from macro 'BIT'
   #define BIT(nr)                 (UL(1) << (nr))
                                   ^
   drivers/gpu/drm/i915/i915_pci.c:953:2: note: previous initialization is here
           GEN12_FEATURES,
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:862:2: note: expanded from macro 'GEN12_FEATURES'
           GEN11_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:810:2: note: expanded from macro 'GEN11_FEATURES'
           GEN10_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:791:2: note: expanded from macro 'GEN10_FEATURES'
           GEN9_FEATURES, \
           ^~~~~~~~~~~~~
   note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
   drivers/gpu/drm/i915/i915_pci.c:573:2: note: expanded from macro 'GEN8_FEATURES'
           G75_FEATURES, \
           ^~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:540:26: note: expanded from macro 'G75_FEATURES'
           .platform_engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/vdso/bits.h:7:19: note: expanded from macro 'BIT'
   #define BIT(nr)                 (UL(1) << (nr))
                                   ^
   drivers/gpu/drm/i915/i915_pci.c:961:16: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
           .ppgtt_size = 48,
                         ^~
   drivers/gpu/drm/i915/i915_pci.c:953:2: note: previous initialization is here
           GEN12_FEATURES,
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:862:2: note: expanded from macro 'GEN12_FEATURES'
           GEN11_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:810:2: note: expanded from macro 'GEN11_FEATURES'
           GEN10_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:791:2: note: expanded from macro 'GEN10_FEATURES'
           GEN9_FEATURES, \
           ^~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:643:2: note: expanded from macro 'GEN9_FEATURES'
           GEN8_FEATURES, \
           ^~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:578:16: note: expanded from macro 'GEN8_FEATURES'
           .ppgtt_size = 48, \
                         ^~
   drivers/gpu/drm/i915/i915_pci.c:962:19: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
           .dma_mask_size = 39,
                            ^~
   drivers/gpu/drm/i915/i915_pci.c:953:2: note: previous initialization is here
           GEN12_FEATURES,
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:862:2: note: expanded from macro 'GEN12_FEATURES'
           GEN11_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:810:2: note: expanded from macro 'GEN11_FEATURES'
           GEN10_FEATURES, \
           ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:791:2: note: expanded from macro 'GEN10_FEATURES'
           GEN9_FEATURES, \
           ^~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:643:2: note: expanded from macro 'GEN9_FEATURES'
           GEN8_FEATURES, \
           ^~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_pci.c:576:19: note: expanded from macro 'GEN8_FEATURES'
           .dma_mask_size = 39, \
                            ^~
>> drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I830_IDS(&i830_info),
           ^
   include/drm/i915_pciids.h:59:2: note: expanded from macro 'INTEL_I830_IDS'
           INTEL_VGA_DEVICE(0x3577, info)
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:976:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I845G_IDS(&i845g_info),
           ^
   include/drm/i915_pciids.h:62:2: note: expanded from macro 'INTEL_I845G_IDS'
           INTEL_VGA_DEVICE(0x2562, info)
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:977:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I85X_IDS(&i85x_info),
           ^
   include/drm/i915_pciids.h:65:2: note: expanded from macro 'INTEL_I85X_IDS'
           INTEL_VGA_DEVICE(0x3582, info), /* I855_GM */ \
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:977:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
   include/drm/i915_pciids.h:66:2: note: expanded from macro 'INTEL_I85X_IDS'
           INTEL_VGA_DEVICE(0x358e, info)
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:978:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I865G_IDS(&i865g_info),
           ^
   include/drm/i915_pciids.h:69:2: note: expanded from macro 'INTEL_I865G_IDS'
           INTEL_VGA_DEVICE(0x2572, info) /* I865_G */
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:979:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I915G_IDS(&i915g_info),
           ^
   include/drm/i915_pciids.h:72:2: note: expanded from macro 'INTEL_I915G_IDS'
           INTEL_VGA_DEVICE(0x2582, info), /* I915_G */ \
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:979:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
   include/drm/i915_pciids.h:73:2: note: expanded from macro 'INTEL_I915G_IDS'
           INTEL_VGA_DEVICE(0x258a, info)  /* E7221_G */
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:980:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I915GM_IDS(&i915gm_info),
           ^
   include/drm/i915_pciids.h:76:2: note: expanded from macro 'INTEL_I915GM_IDS'
           INTEL_VGA_DEVICE(0x2592, info) /* I915_GM */
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:981:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I945G_IDS(&i945g_info),
           ^
   include/drm/i915_pciids.h:79:2: note: expanded from macro 'INTEL_I945G_IDS'
           INTEL_VGA_DEVICE(0x2772, info) /* I945_G */
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:982:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I945GM_IDS(&i945gm_info),
           ^
   include/drm/i915_pciids.h:82:2: note: expanded from macro 'INTEL_I945GM_IDS'
           INTEL_VGA_DEVICE(0x27a2, info), /* I945_GM */ \
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:982:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
   include/drm/i915_pciids.h:83:2: note: expanded from macro 'INTEL_I945GM_IDS'
           INTEL_VGA_DEVICE(0x27ae, info)  /* I945_GME */
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }
                                ^
   drivers/gpu/drm/i915/i915_pci.c:983:2: warning: missing field 'override_only' initializer [-Wmissing-field-initializers]
           INTEL_I965G_IDS(&i965g_info),
           ^
   include/drm/i915_pciids.h:86:2: note: expanded from macro 'INTEL_I965G_IDS'
           INTEL_VGA_DEVICE(0x2972, info), /* I946_GZ */   \
           ^
   include/drm/i915_pciids.h:42:23: note: expanded from macro 'INTEL_VGA_DEVICE'
           (unsigned long) info }


vim +/override_only +975 drivers/gpu/drm/i915/i915_pci.c

bc76298e68e791 Chris Wilson    2018-02-15   967  
42f5551d276921 Chris Wilson    2016-06-24   968  /*
42f5551d276921 Chris Wilson    2016-06-24   969   * Make sure any device matches here are from most specific to most
42f5551d276921 Chris Wilson    2016-06-24   970   * general.  For example, since the Quanta match is based on the subsystem
42f5551d276921 Chris Wilson    2016-06-24   971   * and subvendor IDs, we need it to come before the more general IVB
42f5551d276921 Chris Wilson    2016-06-24   972   * PCI ID matches, otherwise we'll use the wrong info struct above.
42f5551d276921 Chris Wilson    2016-06-24   973   */
42f5551d276921 Chris Wilson    2016-06-24   974  static const struct pci_device_id pciidlist[] = {
31409fff1a392f Lucas De Marchi 2019-12-24  @975  	INTEL_I830_IDS(&i830_info),
31409fff1a392f Lucas De Marchi 2019-12-24   976  	INTEL_I845G_IDS(&i845g_info),
31409fff1a392f Lucas De Marchi 2019-12-24   977  	INTEL_I85X_IDS(&i85x_info),
31409fff1a392f Lucas De Marchi 2019-12-24   978  	INTEL_I865G_IDS(&i865g_info),
31409fff1a392f Lucas De Marchi 2019-12-24   979  	INTEL_I915G_IDS(&i915g_info),
31409fff1a392f Lucas De Marchi 2019-12-24   980  	INTEL_I915GM_IDS(&i915gm_info),
31409fff1a392f Lucas De Marchi 2019-12-24   981  	INTEL_I945G_IDS(&i945g_info),
31409fff1a392f Lucas De Marchi 2019-12-24   982  	INTEL_I945GM_IDS(&i945gm_info),
31409fff1a392f Lucas De Marchi 2019-12-24   983  	INTEL_I965G_IDS(&i965g_info),
31409fff1a392f Lucas De Marchi 2019-12-24   984  	INTEL_G33_IDS(&g33_info),
31409fff1a392f Lucas De Marchi 2019-12-24   985  	INTEL_I965GM_IDS(&i965gm_info),
31409fff1a392f Lucas De Marchi 2019-12-24   986  	INTEL_GM45_IDS(&gm45_info),
31409fff1a392f Lucas De Marchi 2019-12-24   987  	INTEL_G45_IDS(&g45_info),
31409fff1a392f Lucas De Marchi 2019-12-24   988  	INTEL_PINEVIEW_G_IDS(&pnv_g_info),
31409fff1a392f Lucas De Marchi 2019-12-24   989  	INTEL_PINEVIEW_M_IDS(&pnv_m_info),
31409fff1a392f Lucas De Marchi 2019-12-24   990  	INTEL_IRONLAKE_D_IDS(&ilk_d_info),
31409fff1a392f Lucas De Marchi 2019-12-24   991  	INTEL_IRONLAKE_M_IDS(&ilk_m_info),
31409fff1a392f Lucas De Marchi 2019-12-24   992  	INTEL_SNB_D_GT1_IDS(&snb_d_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24   993  	INTEL_SNB_D_GT2_IDS(&snb_d_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24   994  	INTEL_SNB_M_GT1_IDS(&snb_m_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24   995  	INTEL_SNB_M_GT2_IDS(&snb_m_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24   996  	INTEL_IVB_Q_IDS(&ivb_q_info), /* must be first IVB */
31409fff1a392f Lucas De Marchi 2019-12-24   997  	INTEL_IVB_M_GT1_IDS(&ivb_m_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24   998  	INTEL_IVB_M_GT2_IDS(&ivb_m_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24   999  	INTEL_IVB_D_GT1_IDS(&ivb_d_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1000  	INTEL_IVB_D_GT2_IDS(&ivb_d_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1001  	INTEL_HSW_GT1_IDS(&hsw_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1002  	INTEL_HSW_GT2_IDS(&hsw_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1003  	INTEL_HSW_GT3_IDS(&hsw_gt3_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1004  	INTEL_VLV_IDS(&vlv_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1005  	INTEL_BDW_GT1_IDS(&bdw_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1006  	INTEL_BDW_GT2_IDS(&bdw_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1007  	INTEL_BDW_GT3_IDS(&bdw_gt3_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1008  	INTEL_BDW_RSVD_IDS(&bdw_rsvd_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1009  	INTEL_CHV_IDS(&chv_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1010  	INTEL_SKL_GT1_IDS(&skl_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1011  	INTEL_SKL_GT2_IDS(&skl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1012  	INTEL_SKL_GT3_IDS(&skl_gt3_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1013  	INTEL_SKL_GT4_IDS(&skl_gt4_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1014  	INTEL_BXT_IDS(&bxt_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1015  	INTEL_GLK_IDS(&glk_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1016  	INTEL_KBL_GT1_IDS(&kbl_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1017  	INTEL_KBL_GT2_IDS(&kbl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1018  	INTEL_KBL_GT3_IDS(&kbl_gt3_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1019  	INTEL_KBL_GT4_IDS(&kbl_gt3_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1020  	INTEL_AML_KBL_GT2_IDS(&kbl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1021  	INTEL_CFL_S_GT1_IDS(&cfl_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1022  	INTEL_CFL_S_GT2_IDS(&cfl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1023  	INTEL_CFL_H_GT1_IDS(&cfl_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1024  	INTEL_CFL_H_GT2_IDS(&cfl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1025  	INTEL_CFL_U_GT2_IDS(&cfl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1026  	INTEL_CFL_U_GT3_IDS(&cfl_gt3_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1027  	INTEL_WHL_U_GT1_IDS(&cfl_gt1_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1028  	INTEL_WHL_U_GT2_IDS(&cfl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1029  	INTEL_AML_CFL_GT2_IDS(&cfl_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1030  	INTEL_WHL_U_GT3_IDS(&cfl_gt3_info),
5f4ae2704d59ee Chris Wilson    2020-06-02  1031  	INTEL_CML_GT1_IDS(&cml_gt1_info),
5f4ae2704d59ee Chris Wilson    2020-06-02  1032  	INTEL_CML_GT2_IDS(&cml_gt2_info),
5f4ae2704d59ee Chris Wilson    2020-06-02  1033  	INTEL_CML_U_GT1_IDS(&cml_gt1_info),
5f4ae2704d59ee Chris Wilson    2020-06-02  1034  	INTEL_CML_U_GT2_IDS(&cml_gt2_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1035  	INTEL_CNL_IDS(&cnl_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1036  	INTEL_ICL_11_IDS(&icl_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1037  	INTEL_EHL_IDS(&ehl_info),
24ea098b7c0d80 Tejas Upadhyay  2020-10-14  1038  	INTEL_JSL_IDS(&jsl_info),
31409fff1a392f Lucas De Marchi 2019-12-24  1039  	INTEL_TGL_12_IDS(&tgl_info),
123f62de419f2a Matt Roper      2020-05-04  1040  	INTEL_RKL_IDS(&rkl_info),
0883d63b19bbd6 Caz Yokoyama    2021-01-19  1041  	INTEL_ADLS_IDS(&adl_s_info),
bdd27cad22379a Clinton Taylor  2021-05-06  1042  	INTEL_ADLP_IDS(&adl_p_info),
42f5551d276921 Chris Wilson    2016-06-24  1043  	{0, 0, 0}
42f5551d276921 Chris Wilson    2016-06-24  1044  };
42f5551d276921 Chris Wilson    2016-06-24  1045  MODULE_DEVICE_TABLE(pci, pciidlist);
42f5551d276921 Chris Wilson    2016-06-24  1046  

:::::: The code at line 975 was first introduced by commit
:::::: 31409fff1a392fabebf59e3c58f606c7a1a2d24e drm/i915: simplify prefixes on device_info

:::::: TO: Lucas De Marchi <lucas.demarchi@intel.com>
:::::: CC: Lucas De Marchi <lucas.demarchi@intel.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 45706 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
  2021-08-27 15:12 [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer kernel test robot
@ 2021-08-27 15:34 ` Jason Gunthorpe
  2021-10-01 11:04   ` Jani Nikula
  0 siblings, 1 reply; 7+ messages in thread
From: Jason Gunthorpe @ 2021-08-27 15:34 UTC (permalink / raw)
  To: kernel test robot
  Cc: Max Gurtovoy, llvm, kbuild-all, kvm, Alex Williamson,
	Yishai Hadas, Jani Nikula, Joonas Lahtinen, Rodrigo Vivi,
	intel-gfx

On Fri, Aug 27, 2021 at 03:12:36PM +0000, kernel test robot wrote:
> tree:   https://github.com/awilliam/linux-vfio.git next
> head:   ea870730d83fc13a5fa2bd0e175176d7ac8a400a
> commit: 343b7258687ecfbb363bfda8833a7cf641aac524 [33/38] PCI: Add 'override_only' field to struct pci_device_id
> config: i386-randconfig-a004-20210827 (attached as .config)
> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
> 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://github.com/awilliam/linux-vfio/commit/343b7258687ecfbb363bfda8833a7cf641aac524
>         git remote add vfio https://github.com/awilliam/linux-vfio.git
>         git fetch --no-tags vfio next
>         git checkout 343b7258687ecfbb363bfda8833a7cf641aac524
>         # save the attached .config to linux build tree
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>

Ugh, this is due to this code:

#define INTEL_VGA_DEVICE(id, info) {		\
	0x8086,	id,				\
	~0, ~0,					\
	0x030000, 0xff0000,			\
	(unsigned long) info }

#define INTEL_QUANTA_VGA_DEVICE(info) {		\
	0x8086,	0x16a,				\
	0x152d,	0x8990,				\
	0x030000, 0xff0000,			\
	(unsigned long) info }


Which really should be using the normal pattern for defining these
structs:

#define PCI_DEVICE_CLASS(dev_class,dev_class_mask) \
        .class = (dev_class), .class_mask = (dev_class_mask), \
        .vendor = PCI_ANY_ID, .device = PCI_ANY_ID, \
        .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID

The warning is also not a real issue, just clang being overzealous.

Jason

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
  2021-08-27 15:34 ` Jason Gunthorpe
@ 2021-10-01 11:04   ` Jani Nikula
  2021-10-01 11:51     ` Jason Gunthorpe
                       ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Jani Nikula @ 2021-10-01 11:04 UTC (permalink / raw)
  To: Jason Gunthorpe, kernel test robot
  Cc: Max Gurtovoy, llvm, kbuild-all, kvm, Alex Williamson,
	Yishai Hadas, Joonas Lahtinen, Rodrigo Vivi, intel-gfx

On Fri, 27 Aug 2021, Jason Gunthorpe <jgg@nvidia.com> wrote:
> On Fri, Aug 27, 2021 at 03:12:36PM +0000, kernel test robot wrote:
>> tree:   https://github.com/awilliam/linux-vfio.git next
>> head:   ea870730d83fc13a5fa2bd0e175176d7ac8a400a
>> commit: 343b7258687ecfbb363bfda8833a7cf641aac524 [33/38] PCI: Add 'override_only' field to struct pci_device_id
>> config: i386-randconfig-a004-20210827 (attached as .config)
>> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
>> 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://github.com/awilliam/linux-vfio/commit/343b7258687ecfbb363bfda8833a7cf641aac524
>>         git remote add vfio https://github.com/awilliam/linux-vfio.git
>>         git fetch --no-tags vfio next
>>         git checkout 343b7258687ecfbb363bfda8833a7cf641aac524
>>         # save the attached .config to linux build tree
>>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 
>> 
>> If you fix the issue, kindly add following tag as appropriate
>> Reported-by: kernel test robot <lkp@intel.com>
>
> Ugh, this is due to this code:
>
> #define INTEL_VGA_DEVICE(id, info) {		\
> 	0x8086,	id,				\
> 	~0, ~0,					\
> 	0x030000, 0xff0000,			\
> 	(unsigned long) info }
>
> #define INTEL_QUANTA_VGA_DEVICE(info) {		\
> 	0x8086,	0x16a,				\
> 	0x152d,	0x8990,				\
> 	0x030000, 0xff0000,			\
> 	(unsigned long) info }
>
>
> Which really should be using the normal pattern for defining these
> structs:
>
> #define PCI_DEVICE_CLASS(dev_class,dev_class_mask) \
>         .class = (dev_class), .class_mask = (dev_class_mask), \
>         .vendor = PCI_ANY_ID, .device = PCI_ANY_ID, \
>         .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID
>
> The warning is also not a real issue, just clang being overzealous.

Stumbled upon this old report, sorry for the delayed response.

The reason it's not using designated initializers is that the same file
gets synced to some userspace projects (at least libdrm and
igt-gpu-tools) which use the macros to initialize slightly different
structs. For example, igt uses struct pci_id_match from libpciaccess-dev
(/usr/include/pciaccess.h) and can't easily adapt to different member
names.

Anyway, we've got

subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)

in drivers/gpu/drm/i915/Makefile, so I wonder why they're not respected.

BR,
Jani.

-- 
Jani Nikula, Intel Open Source Graphics Center

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
  2021-10-01 11:04   ` Jani Nikula
@ 2021-10-01 11:51     ` Jason Gunthorpe
  2021-10-05  9:00       ` Jani Nikula
  2021-10-01 17:18     ` Nick Desaulniers
  2021-10-01 17:45     ` [Intel-gfx] " Nathan Chancellor
  2 siblings, 1 reply; 7+ messages in thread
From: Jason Gunthorpe @ 2021-10-01 11:51 UTC (permalink / raw)
  To: Jani Nikula
  Cc: kernel test robot, Max Gurtovoy, llvm, kbuild-all, kvm,
	Alex Williamson, Yishai Hadas, Joonas Lahtinen, Rodrigo Vivi,
	intel-gfx

On Fri, Oct 01, 2021 at 02:04:04PM +0300, Jani Nikula wrote:
> On Fri, 27 Aug 2021, Jason Gunthorpe <jgg@nvidia.com> wrote:
> > On Fri, Aug 27, 2021 at 03:12:36PM +0000, kernel test robot wrote:
> >> tree:   https://github.com/awilliam/linux-vfio.git next
> >> head:   ea870730d83fc13a5fa2bd0e175176d7ac8a400a
> >> commit: 343b7258687ecfbb363bfda8833a7cf641aac524 [33/38] PCI: Add 'override_only' field to struct pci_device_id
> >> config: i386-randconfig-a004-20210827 (attached as .config)
> >> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
> >> 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://github.com/awilliam/linux-vfio/commit/343b7258687ecfbb363bfda8833a7cf641aac524
> >>         git remote add vfio https://github.com/awilliam/linux-vfio.git
> >>         git fetch --no-tags vfio next
> >>         git checkout 343b7258687ecfbb363bfda8833a7cf641aac524
> >>         # save the attached .config to linux build tree
> >>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 
> >> 
> >> If you fix the issue, kindly add following tag as appropriate
> >> Reported-by: kernel test robot <lkp@intel.com>
> >
> > Ugh, this is due to this code:
> >
> > #define INTEL_VGA_DEVICE(id, info) {		\
> > 	0x8086,	id,				\
> > 	~0, ~0,					\
> > 	0x030000, 0xff0000,			\
> > 	(unsigned long) info }
> >
> > #define INTEL_QUANTA_VGA_DEVICE(info) {		\
> > 	0x8086,	0x16a,				\
> > 	0x152d,	0x8990,				\
> > 	0x030000, 0xff0000,			\
> > 	(unsigned long) info }
> >
> >
> > Which really should be using the normal pattern for defining these
> > structs:
> >
> > #define PCI_DEVICE_CLASS(dev_class,dev_class_mask) \
> >         .class = (dev_class), .class_mask = (dev_class_mask), \
> >         .vendor = PCI_ANY_ID, .device = PCI_ANY_ID, \
> >         .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID
> >
> > The warning is also not a real issue, just clang being overzealous.
> 
> Stumbled upon this old report, sorry for the delayed response.
> 
> The reason it's not using designated initializers is that the same file
> gets synced to some userspace projects (at least libdrm and
> igt-gpu-tools) which use the macros to initialize slightly different
> structs. For example, igt uses struct pci_id_match from libpciaccess-dev
> (/usr/include/pciaccess.h) and can't easily adapt to different member
> names.

Do it like this:


#ifdef __KERNEL__
#define INTEL_VGA_DEVICE(..)
#endif


And userspace does

#define INTEL_VGA_DEVICE(..)
#include <foo.h>

> Anyway, we've got
> 
> subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
> subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)
> 
> in drivers/gpu/drm/i915/Makefile, so I wonder why they're not respected.

Disabling kernel warnings because some userspace wants to copy a
kernel header is horrific, don't do that.

Jason

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
  2021-10-01 11:04   ` Jani Nikula
  2021-10-01 11:51     ` Jason Gunthorpe
@ 2021-10-01 17:18     ` Nick Desaulniers
  2021-10-01 17:45     ` [Intel-gfx] " Nathan Chancellor
  2 siblings, 0 replies; 7+ messages in thread
From: Nick Desaulniers @ 2021-10-01 17:18 UTC (permalink / raw)
  To: Jani Nikula
  Cc: Jason Gunthorpe, kernel test robot, Max Gurtovoy, llvm,
	kbuild-all, kvm, Alex Williamson, Yishai Hadas, Joonas Lahtinen,
	Rodrigo Vivi, intel-gfx

On Fri, Oct 1, 2021 at 4:04 AM Jani Nikula <jani.nikula@linux.intel.com> wrote:
>
> Anyway, we've got
>
> subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
> subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)
>
> in drivers/gpu/drm/i915/Makefile, so I wonder why they're not respected.

You do have to be super careful with `:=` assignment in Make;
generally folks mean to use `+=` and end up overwriting the existing
KBUILD_CFLAGS.  I'm not sure if that's the issue here, but it's worth
an audit of your Makefiles.
-- 
Thanks,
~Nick Desaulniers

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Intel-gfx] [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
  2021-10-01 11:04   ` Jani Nikula
  2021-10-01 11:51     ` Jason Gunthorpe
  2021-10-01 17:18     ` Nick Desaulniers
@ 2021-10-01 17:45     ` Nathan Chancellor
  2 siblings, 0 replies; 7+ messages in thread
From: Nathan Chancellor @ 2021-10-01 17:45 UTC (permalink / raw)
  To: Jani Nikula
  Cc: Jason Gunthorpe, kernel test robot, Max Gurtovoy, llvm,
	kbuild-all, kvm, Alex Williamson, Yishai Hadas, Joonas Lahtinen,
	Rodrigo Vivi, intel-gfx

On Fri, Oct 01, 2021 at 02:04:04PM +0300, Jani Nikula wrote:
> On Fri, 27 Aug 2021, Jason Gunthorpe <jgg@nvidia.com> wrote:
> > On Fri, Aug 27, 2021 at 03:12:36PM +0000, kernel test robot wrote:
> >> tree:   https://github.com/awilliam/linux-vfio.git next
> >> head:   ea870730d83fc13a5fa2bd0e175176d7ac8a400a
> >> commit: 343b7258687ecfbb363bfda8833a7cf641aac524 [33/38] PCI: Add 'override_only' field to struct pci_device_id
> >> config: i386-randconfig-a004-20210827 (attached as .config)
> >> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
> >> 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://github.com/awilliam/linux-vfio/commit/343b7258687ecfbb363bfda8833a7cf641aac524
> >>         git remote add vfio https://github.com/awilliam/linux-vfio.git
> >>         git fetch --no-tags vfio next
> >>         git checkout 343b7258687ecfbb363bfda8833a7cf641aac524
> >>         # save the attached .config to linux build tree
> >>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 
> >> 
> >> If you fix the issue, kindly add following tag as appropriate
> >> Reported-by: kernel test robot <lkp@intel.com>
> >
> > Ugh, this is due to this code:
> >
> > #define INTEL_VGA_DEVICE(id, info) {		\
> > 	0x8086,	id,				\
> > 	~0, ~0,					\
> > 	0x030000, 0xff0000,			\
> > 	(unsigned long) info }
> >
> > #define INTEL_QUANTA_VGA_DEVICE(info) {		\
> > 	0x8086,	0x16a,				\
> > 	0x152d,	0x8990,				\
> > 	0x030000, 0xff0000,			\
> > 	(unsigned long) info }
> >
> >
> > Which really should be using the normal pattern for defining these
> > structs:
> >
> > #define PCI_DEVICE_CLASS(dev_class,dev_class_mask) \
> >         .class = (dev_class), .class_mask = (dev_class_mask), \
> >         .vendor = PCI_ANY_ID, .device = PCI_ANY_ID, \
> >         .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID
> >
> > The warning is also not a real issue, just clang being overzealous.
> 
> Stumbled upon this old report, sorry for the delayed response.
> 
> The reason it's not using designated initializers is that the same file
> gets synced to some userspace projects (at least libdrm and
> igt-gpu-tools) which use the macros to initialize slightly different
> structs. For example, igt uses struct pci_id_match from libpciaccess-dev
> (/usr/include/pciaccess.h) and can't easily adapt to different member
> names.
> 
> Anyway, we've got
> 
> subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
> subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)
> 
> in drivers/gpu/drm/i915/Makefile, so I wonder why they're not respected.

This report was from an i386 randconfig, which we recently had a lot of
issues with:

https://git.kernel.org/linus/7fa6a2746616c8de4c40b748c2bb0656e00624ff

Applying my patch to remove most of the cc-disable-warnings in your
Makefile would help avoid these reports in the future :)

https://lore.kernel.org/r/20210914194944.4004260-1-nathan@kernel.org/

Cheers,
Nathan

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer
  2021-10-01 11:51     ` Jason Gunthorpe
@ 2021-10-05  9:00       ` Jani Nikula
  0 siblings, 0 replies; 7+ messages in thread
From: Jani Nikula @ 2021-10-05  9:00 UTC (permalink / raw)
  To: Jason Gunthorpe
  Cc: kernel test robot, Max Gurtovoy, llvm, kbuild-all, kvm,
	Alex Williamson, Yishai Hadas, Joonas Lahtinen, Rodrigo Vivi,
	intel-gfx

On Fri, 01 Oct 2021, Jason Gunthorpe <jgg@nvidia.com> wrote:
> On Fri, Oct 01, 2021 at 02:04:04PM +0300, Jani Nikula wrote:
>> On Fri, 27 Aug 2021, Jason Gunthorpe <jgg@nvidia.com> wrote:
>> > On Fri, Aug 27, 2021 at 03:12:36PM +0000, kernel test robot wrote:
>> >> tree:   https://github.com/awilliam/linux-vfio.git next
>> >> head:   ea870730d83fc13a5fa2bd0e175176d7ac8a400a
>> >> commit: 343b7258687ecfbb363bfda8833a7cf641aac524 [33/38] PCI: Add 'override_only' field to struct pci_device_id
>> >> config: i386-randconfig-a004-20210827 (attached as .config)
>> >> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
>> >> 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://github.com/awilliam/linux-vfio/commit/343b7258687ecfbb363bfda8833a7cf641aac524
>> >>         git remote add vfio https://github.com/awilliam/linux-vfio.git
>> >>         git fetch --no-tags vfio next
>> >>         git checkout 343b7258687ecfbb363bfda8833a7cf641aac524
>> >>         # save the attached .config to linux build tree
>> >>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=i386 
>> >> 
>> >> If you fix the issue, kindly add following tag as appropriate
>> >> Reported-by: kernel test robot <lkp@intel.com>
>> >
>> > Ugh, this is due to this code:
>> >
>> > #define INTEL_VGA_DEVICE(id, info) {		\
>> > 	0x8086,	id,				\
>> > 	~0, ~0,					\
>> > 	0x030000, 0xff0000,			\
>> > 	(unsigned long) info }
>> >
>> > #define INTEL_QUANTA_VGA_DEVICE(info) {		\
>> > 	0x8086,	0x16a,				\
>> > 	0x152d,	0x8990,				\
>> > 	0x030000, 0xff0000,			\
>> > 	(unsigned long) info }
>> >
>> >
>> > Which really should be using the normal pattern for defining these
>> > structs:
>> >
>> > #define PCI_DEVICE_CLASS(dev_class,dev_class_mask) \
>> >         .class = (dev_class), .class_mask = (dev_class_mask), \
>> >         .vendor = PCI_ANY_ID, .device = PCI_ANY_ID, \
>> >         .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID
>> >
>> > The warning is also not a real issue, just clang being overzealous.
>> 
>> Stumbled upon this old report, sorry for the delayed response.
>> 
>> The reason it's not using designated initializers is that the same file
>> gets synced to some userspace projects (at least libdrm and
>> igt-gpu-tools) which use the macros to initialize slightly different
>> structs. For example, igt uses struct pci_id_match from libpciaccess-dev
>> (/usr/include/pciaccess.h) and can't easily adapt to different member
>> names.
>
> Do it like this:
>
>
> #ifdef __KERNEL__
> #define INTEL_VGA_DEVICE(..)
> #endif
>
>
> And userspace does
>
> #define INTEL_VGA_DEVICE(..)
> #include <foo.h>

Sure.

>> Anyway, we've got
>> 
>> subdir-ccflags-y += $(call cc-disable-warning, missing-field-initializers)
>> subdir-ccflags-y += $(call cc-disable-warning, initializer-overrides)
>> 
>> in drivers/gpu/drm/i915/Makefile, so I wonder why they're not respected.
>
> Disabling kernel warnings because some userspace wants to copy a
> kernel header is horrific, don't do that.

We've disabled some warnings because those lines are preceded by

subdir-ccflags-y := -Wall -Wextra

enabling more warnings than the kernel build generally does.


BR,
Jani.



-- 
Jani Nikula, Intel Open Source Graphics Center

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-10-05  9:01 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-27 15:12 [vfio:next 33/38] drivers/gpu/drm/i915/i915_pci.c:975:2: warning: missing field 'override_only' initializer kernel test robot
2021-08-27 15:34 ` Jason Gunthorpe
2021-10-01 11:04   ` Jani Nikula
2021-10-01 11:51     ` Jason Gunthorpe
2021-10-05  9:00       ` Jani Nikula
2021-10-01 17:18     ` Nick Desaulniers
2021-10-01 17:45     ` [Intel-gfx] " Nathan Chancellor

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).