Re: [rafael-pm:bleeding-edge 113/118] arch/x86/kernel/acpi/boot.c:1476:8: warning: excess elements in array initializer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 3/2/22 03:51, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge
> head:   f7307721a01f4f14d21c699b270a870370cf34b9
> commit: ed00b2b8d737f87a2437d7bd7c7f90124b50da05 [113/118] x86 / ACPI: Work around broken XSDT on SEGA AALE board
> config: i386-randconfig-a011 (https://download.01.org/0day-ci/archive/20220302/202203020737.wa9uc4gW-lkp@xxxxxxxxx/config)
> compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project d271fc04d5b97b12e6b797c6067d3c96a8d7470e)
> 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/rafael/linux-pm.git/commit/?id=ed00b2b8d737f87a2437d7bd7c7f90124b50da05
>         git remote add rafael-pm https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
>         git fetch --no-tags rafael-pm bleeding-edge
>         git checkout ed00b2b8d737f87a2437d7bd7c7f90124b50da05
>         # save the config file to linux build tree
>         mkdir build_dir
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash arch/x86/kernel/acpi/
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> 
> All warnings (new ones prefixed by >>):
> 
>>> arch/x86/kernel/acpi/boot.c:1476:8: warning: excess elements in array initializer [-Wexcess-initializers]
>                         DMI_MATCH(DMI_BIOS_DATE, "02/01/2011"),
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    include/linux/mod_devicetable.h:587:25: note: expanded from macro 'DMI_MATCH'
>    #define DMI_MATCH(a, b) { .slot = a, .substr = b }
>                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
>    1 warning generated.
> 
> 
> vim +1476 arch/x86/kernel/acpi/boot.c
> 
>   1389	
>   1390	/*
>   1391	 * If your system is blacklisted here, but you find that acpi=force
>   1392	 * works for you, please contact linux-acpi@xxxxxxxxxxxxxxx
>   1393	 */
>   1394	static const struct dmi_system_id acpi_dmi_table[] __initconst = {
>   1395		/*
>   1396		 * Boxes that need ACPI disabled
>   1397		 */
>   1398		{
>   1399		 .callback = dmi_disable_acpi,
>   1400		 .ident = "IBM Thinkpad",
>   1401		 .matches = {
>   1402			     DMI_MATCH(DMI_BOARD_VENDOR, "IBM"),
>   1403			     DMI_MATCH(DMI_BOARD_NAME, "2629H1G"),
>   1404			     },
>   1405		 },
>   1406	
>   1407		/*
>   1408		 * Boxes that need ACPI PCI IRQ routing disabled
>   1409		 */
>   1410		{
>   1411		 .callback = disable_acpi_irq,
>   1412		 .ident = "ASUS A7V",
>   1413		 .matches = {
>   1414			     DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC"),
>   1415			     DMI_MATCH(DMI_BOARD_NAME, "<A7V>"),
>   1416			     /* newer BIOS, Revision 1011, does work */
>   1417			     DMI_MATCH(DMI_BIOS_VERSION,
>   1418				       "ASUS A7V ACPI BIOS Revision 1007"),
>   1419			     },
>   1420		 },
>   1421		{
>   1422			/*
>   1423			 * Latest BIOS for IBM 600E (1.16) has bad pcinum
>   1424			 * for LPC bridge, which is needed for the PCI
>   1425			 * interrupt links to work. DSDT fix is in bug 5966.
>   1426			 * 2645, 2646 model numbers are shared with 600/600E/600X
>   1427			 */
>   1428		 .callback = disable_acpi_irq,
>   1429		 .ident = "IBM Thinkpad 600 Series 2645",
>   1430		 .matches = {
>   1431			     DMI_MATCH(DMI_BOARD_VENDOR, "IBM"),
>   1432			     DMI_MATCH(DMI_BOARD_NAME, "2645"),
>   1433			     },
>   1434		 },
>   1435		{
>   1436		 .callback = disable_acpi_irq,
>   1437		 .ident = "IBM Thinkpad 600 Series 2646",
>   1438		 .matches = {
>   1439			     DMI_MATCH(DMI_BOARD_VENDOR, "IBM"),
>   1440			     DMI_MATCH(DMI_BOARD_NAME, "2646"),
>   1441			     },
>   1442		 },
>   1443		/*
>   1444		 * Boxes that need ACPI PCI IRQ routing and PCI scan disabled
>   1445		 */
>   1446		{			/* _BBN 0 bug */
>   1447		 .callback = disable_acpi_pci,
>   1448		 .ident = "ASUS PR-DLS",
>   1449		 .matches = {
>   1450			     DMI_MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
>   1451			     DMI_MATCH(DMI_BOARD_NAME, "PR-DLS"),
>   1452			     DMI_MATCH(DMI_BIOS_VERSION,
>   1453				       "ASUS PR-DLS ACPI BIOS Revision 1010"),
>   1454			     DMI_MATCH(DMI_BIOS_DATE, "03/21/2003")
>   1455			     },
>   1456		 },
>   1457		{
>   1458		 .callback = disable_acpi_pci,
>   1459		 .ident = "Acer TravelMate 36x Laptop",
>   1460		 .matches = {
>   1461			     DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
>   1462			     DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 360"),
>   1463			     },
>   1464		 },
>   1465		/*
>   1466		 * Boxes that need ACPI XSDT use disabled due to corrupted tables
>   1467		 */
>   1468		{
>   1469		 .callback = disable_acpi_xsdt,
>   1470		 .ident = "SEGA AALE",
>   1471		 .matches = {
>   1472			     DMI_MATCH(DMI_SYS_VENDOR, "NEC"),
>   1473			     DMI_MATCH(DMI_PRODUCT_NAME, "Bearlake CRB Board"),
>   1474			     DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
>   1475			     DMI_MATCH(DMI_BIOS_VERSION, "V1.12"),
>> 1476			     DMI_MATCH(DMI_BIOS_DATE, "02/01/2011"),
>   1477			     },

Ah, right there can be max 4 matches for a single dmi_system_id table entry.

Mark, I think the BIOS-vendor match has little value, so that can be dropped, do you
agree?

Regards,

Hans








[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux