public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
@ 2004-05-28 11:55 Andrey Panin
  0 siblings, 0 replies; 11+ messages in thread
From: Andrey Panin @ 2004-05-28 11:55 UTC (permalink / raw)
  To: Andrew Morton, linux-kernel

simplify DMI blacklist table by removing the need to fill
unused slots with NO_MATCH macro.

diff -urpN -X /usr/share/dontdiff linux-2.6.7-rc1-mm1.vanilla/arch/i386/kernel/dmi_scan.c linux-2.6.7-rc1-mm1/arch/i386/kernel/dmi_scan.c
--- linux-2.6.7-rc1-mm1.vanilla/arch/i386/kernel/dmi_scan.c	Wed Apr 28 22:56:08 2004
+++ linux-2.6.7-rc1-mm1/arch/i386/kernel/dmi_scan.c	Wed Apr 28 23:07:48 2004
@@ -142,6 +142,7 @@ static int __init dmi_iterate(void (*dec
 
 enum
 {
+	DMI_NONE,
 	DMI_BIOS_VENDOR,
 	DMI_BIOS_VERSION,
 	DMI_BIOS_DATE,
@@ -185,8 +186,6 @@ struct dmi_strmatch
 	char *substr;
 };
 
-#define NONE	255
-
 struct dmi_blacklist
 {
 	int (*callback)(struct dmi_blacklist *);
@@ -194,7 +193,6 @@ struct dmi_blacklist
 	struct dmi_strmatch matches[4];
 };
 
-#define NO_MATCH	{ NONE, NULL}
 #define MATCH(a,b)	{ a, b }
 
 /* 
@@ -590,12 +588,10 @@ static __initdata struct dmi_blacklist d
 	{ broken_ps2_resume, "Dell Latitude C600", {	/* Handle problems with APM on the C600 */
 			MATCH(DMI_SYS_VENDOR, "Dell"),
 			MATCH(DMI_PRODUCT_NAME, "Latitude C600"),
-			NO_MATCH, NO_MATCH
 			} },
 	{ set_apm_ints, "Dell Latitude", {  /* Allow interrupts during suspend on Dell Latitude laptops*/
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "Latitude C510"),
-			NO_MATCH, NO_MATCH
 			} },
 	{ apm_is_horked, "Dell Inspiron 2500", { /* APM crashes */
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
@@ -606,17 +602,16 @@ static __initdata struct dmi_blacklist d
 	{ set_apm_ints, "Dell Inspiron", {	/* Allow interrupts during suspend on Dell Inspiron laptops*/
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "Inspiron 4000"),
-			NO_MATCH, NO_MATCH
 			} },
 	{ broken_apm_power, "Dell Inspiron 5000e", {	/* Handle problems with APM on Inspiron 5000e */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "A04"),
-			MATCH(DMI_BIOS_DATE, "08/24/2000"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "08/24/2000"),
 			} },
 	{ broken_apm_power, "Dell Inspiron 2500", {	/* Handle problems with APM on Inspiron 2500 */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "A12"),
-			MATCH(DMI_BIOS_DATE, "02/04/2002"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "02/04/2002"),
 			} },
 	{ apm_is_horked, "Dell Dimension 4100", { /* APM crashes */
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
@@ -627,22 +622,19 @@ static __initdata struct dmi_blacklist d
 	{ set_realmode_power_off, "Award Software v4.60 PGMA", {	/* broken PM poweroff bios */
 			MATCH(DMI_BIOS_VENDOR, "Award Software International, Inc."),
 			MATCH(DMI_BIOS_VERSION, "4.60 PGMA"),
-			MATCH(DMI_BIOS_DATE, "134526184"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "134526184"),
 			} },
 	{ set_smp_bios_reboot, "Dell PowerEdge 1300", {	/* Handle problems with rebooting on Dell 1300's */
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "PowerEdge 1300/"),
-			NO_MATCH, NO_MATCH
 			} },
 	{ set_bios_reboot, "Dell PowerEdge 300", {	/* Handle problems with rebooting on Dell 300's */
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "PowerEdge 300/"),
-			NO_MATCH, NO_MATCH
 			} },
 	{ set_bios_reboot, "Dell PowerEdge 2400", {  /* Handle problems with rebooting on Dell 2400's */
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400"),
-			NO_MATCH, NO_MATCH
 			} },
 	{ set_apm_ints, "Compaq 12XL125", {	/* Allow interrupts during suspend on Compaq Laptops*/
 			MATCH(DMI_SYS_VENDOR, "Compaq"),
@@ -653,38 +645,31 @@ static __initdata struct dmi_blacklist d
 	{ set_apm_ints, "ASUSTeK", {   /* Allow interrupts during APM or the clock goes slow */
 			MATCH(DMI_SYS_VENDOR, "ASUSTeK Computer Inc."),
 			MATCH(DMI_PRODUCT_NAME, "L8400K series Notebook PC"),
-			NO_MATCH, NO_MATCH
 			} },					
 	{ apm_is_horked, "ABIT KX7-333[R]", { /* APM blows on shutdown */
 			MATCH(DMI_BOARD_VENDOR, "ABIT"),
 			MATCH(DMI_BOARD_NAME, "VT8367-8233A (KX7-333[R])"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ apm_is_horked, "Trigem Delhi3", { /* APM crashes */
 			MATCH(DMI_SYS_VENDOR, "TriGem Computer, Inc"),
 			MATCH(DMI_PRODUCT_NAME, "Delhi3"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ apm_is_horked, "Fujitsu-Siemens", { /* APM crashes */
 			MATCH(DMI_BIOS_VENDOR, "hoenix/FUJITSU SIEMENS"),
 			MATCH(DMI_BIOS_VERSION, "Version1.01"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ apm_is_horked_d850md, "Intel D850MD", { /* APM crashes */
 			MATCH(DMI_BIOS_VENDOR, "Intel Corp."),
 			MATCH(DMI_BIOS_VERSION, "MV85010A.86A.0016.P07.0201251536"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ apm_is_horked, "Intel D810EMO", { /* APM crashes */
 			MATCH(DMI_BIOS_VENDOR, "Intel Corp."),
 			MATCH(DMI_BIOS_VERSION, "MO81010A.86A.0008.P04.0004170800"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ apm_is_horked, "Dell XPS-Z", { /* APM crashes */
 			MATCH(DMI_BIOS_VENDOR, "Intel Corp."),
 			MATCH(DMI_BIOS_VERSION, "A11"),
 			MATCH(DMI_PRODUCT_NAME, "XPS-Z"),
-			NO_MATCH,
 			} },
 	{ apm_is_horked, "Sharp PC-PJ/AX", { /* APM crashes */
 			MATCH(DMI_SYS_VENDOR, "SHARP"),
@@ -701,94 +686,91 @@ static __initdata struct dmi_blacklist d
 	{ apm_likes_to_melt, "Jabil AMD", { /* APM idle hangs */
 			MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."),
 			MATCH(DMI_BIOS_VERSION, "0AASNP06"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ apm_likes_to_melt, "AMI Bios", { /* APM idle hangs */
 			MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."),
 			MATCH(DMI_BIOS_VERSION, "0AASNP05"), 
-			NO_MATCH, NO_MATCH,
 			} },
 	{ sony_vaio_laptop, "Sony Vaio", { /* This is a Sony Vaio laptop */
 			MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "PCG-"),
-			NO_MATCH, NO_MATCH,
 			} },
 	{ swab_apm_power_in_minutes, "Sony VAIO", { /* Handle problems with APM on Sony Vaio PCG-N505X(DE) */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0206H"),
-			MATCH(DMI_BIOS_DATE, "08/23/99"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "08/23/99"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", { /* Handle problems with APM on Sony Vaio PCG-N505VX */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "W2K06H0"),
-			MATCH(DMI_BIOS_DATE, "02/03/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "02/03/00"),
 			} },
 			
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-XG29 */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0117A0"),
-			MATCH(DMI_BIOS_DATE, "04/25/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "04/25/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-Z600NE */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0121Z1"),
-			MATCH(DMI_BIOS_DATE, "05/11/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "05/11/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-Z600NE */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "WME01Z1"),
-			MATCH(DMI_BIOS_DATE, "08/11/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "08/11/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-Z600LEK(DE) */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0206Z3"),
-			MATCH(DMI_BIOS_DATE, "12/25/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "12/25/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-Z505LS */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0203D0"),
-			MATCH(DMI_BIOS_DATE, "05/12/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "05/12/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-Z505LS */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0203Z3"),
-			MATCH(DMI_BIOS_DATE, "08/25/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "08/25/00"),
 			} },
 	
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-Z505LS (with updated BIOS) */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0209Z3"),
-			MATCH(DMI_BIOS_DATE, "05/12/01"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "05/12/01"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-F104K */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0204K2"),
-			MATCH(DMI_BIOS_DATE, "08/28/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "08/28/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-C1VN/C1VE */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0208P1"),
-			MATCH(DMI_BIOS_DATE, "11/09/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "11/09/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-C1VE */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "R0204P1"),
-			MATCH(DMI_BIOS_DATE, "09/12/00"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "09/12/00"),
 			} },
 
 	{ swab_apm_power_in_minutes, "Sony VAIO", {	/* Handle problems with APM on Sony Vaio PCG-C1VE */
 			MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
 			MATCH(DMI_BIOS_VERSION, "WXPO1Z3"),
-			MATCH(DMI_BIOS_DATE, "10/26/01"), NO_MATCH
+			MATCH(DMI_BIOS_DATE, "10/26/01"),
 			} },
 			
 	{ exploding_pnp_bios, "Higraded P14H", {	/* PnPBIOS GPF on boot */
@@ -807,52 +789,43 @@ static __initdata struct dmi_blacklist d
 	{ local_apic_kills_bios, "Dell Inspiron", {
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "Inspiron"),
-			NO_MATCH, NO_MATCH
 			} },
 
 	{ local_apic_kills_bios, "Dell Latitude", {
 			MATCH(DMI_SYS_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_PRODUCT_NAME, "Latitude"),
-			NO_MATCH, NO_MATCH
 			} },
 
 	{ local_apic_kills_bios, "IBM Thinkpad T20", {
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_BOARD_NAME, "264741U"),
-			NO_MATCH, NO_MATCH
 			} },
 
 	{ local_apic_kills_bios, "ASUS L3C", {
 			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
 			MATCH(DMI_BOARD_NAME, "P4_L3C"),
-			NO_MATCH, NO_MATCH
 			} },
 
 	{ broken_acpi_Sx, "ASUS K7V-RM", {		/* Bad ACPI Sx table */
 			MATCH(DMI_BIOS_VERSION,"ASUS K7V-RM ACPI BIOS Revision 1003A"),
 			MATCH(DMI_BOARD_NAME, "<K7V-RM>"),
-			NO_MATCH, NO_MATCH
 			} },
 
 	{ broken_toshiba_keyboard, "Toshiba Satellite 4030cdt", { /* Keyboard generates spurious repeats */
 			MATCH(DMI_PRODUCT_NAME, "S4030CDT/4.3"),
-			NO_MATCH, NO_MATCH, NO_MATCH
 			} },
 	{ init_ints_after_s1, "Toshiba Satellite 4030cdt", { /* Reinitialization of 8259 is needed after S1 resume */
 			MATCH(DMI_PRODUCT_NAME, "S4030CDT/4.3"),
-			NO_MATCH, NO_MATCH, NO_MATCH
 			} },
 #ifdef CONFIG_ACPI_SLEEP
 	{ reset_videomode_after_s3, "Toshiba Satellite 4030cdt", { /* Reset video mode after returning from ACPI S3 sleep */
 			MATCH(DMI_PRODUCT_NAME, "S4030CDT/4.3"),
-			NO_MATCH, NO_MATCH, NO_MATCH
 			} },
 #endif
 
 	{ print_if_true, KERN_WARNING "IBM T23 - BIOS 1.03b+ and controller firmware 1.02+ may be needed for Linux APM.", {
 			MATCH(DMI_SYS_VENDOR, "IBM"),
 			MATCH(DMI_BIOS_VERSION, "1AET38WW (1.01b)"),
-			NO_MATCH, NO_MATCH
 			} },
 	 
 	{ fix_broken_hp_bios_irq9, "HP Pavilion N5400 Series Laptop", {
@@ -869,7 +842,6 @@ static __initdata struct dmi_blacklist d
 	 
 	{ set_apm_ints, "IBM", {	/* Allow interrupts during suspend on IBM laptops */
 			MATCH(DMI_SYS_VENDOR, "IBM"),
-			NO_MATCH, NO_MATCH, NO_MATCH
 			} },
 
 	/*
@@ -878,7 +850,6 @@ static __initdata struct dmi_blacklist d
 	 
 	{ disable_smbus, "IBM", {
 			MATCH(DMI_SYS_VENDOR, "IBM"),
-			NO_MATCH, NO_MATCH, NO_MATCH
 			} },
 
 	/*
@@ -889,7 +860,6 @@ static __initdata struct dmi_blacklist d
 	{ acer_cpufreq_pst, "Acer Aspire", {
 			MATCH(DMI_SYS_VENDOR, "Insyde Software"),
 			MATCH(DMI_BIOS_VERSION, "3A71"),
-			NO_MATCH, NO_MATCH,
 			} },
 
 #ifdef	CONFIG_ACPI_BOOT
@@ -905,7 +875,7 @@ static __initdata struct dmi_blacklist d
 	{ dmi_disable_acpi, "IBM Thinkpad", {
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_BOARD_NAME, "2629H1G"),
-			NO_MATCH, NO_MATCH }},
+			} },
 
 	/*
 	 *	Boxes that need acpi=ht 
@@ -914,85 +884,85 @@ static __initdata struct dmi_blacklist d
 	{ force_acpi_ht, "FSC Primergy T850", {
 			MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
 			MATCH(DMI_PRODUCT_NAME, "PRIMERGY T850"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "DELL GX240", {
 			MATCH(DMI_BOARD_VENDOR, "Dell Computer Corporation"),
 			MATCH(DMI_BOARD_NAME, "OptiPlex GX240"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "HP VISUALIZE NT Workstation", {
 			MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"),
 			MATCH(DMI_PRODUCT_NAME, "HP VISUALIZE NT Workstation"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "Compaq ProLiant DL380 G2", {
 			MATCH(DMI_SYS_VENDOR, "Compaq"),
 			MATCH(DMI_PRODUCT_NAME, "ProLiant DL380 G2"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "Compaq ProLiant ML530 G2", {
 			MATCH(DMI_SYS_VENDOR, "Compaq"),
 			MATCH(DMI_PRODUCT_NAME, "ProLiant ML530 G2"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "Compaq ProLiant ML350 G3", {
 			MATCH(DMI_SYS_VENDOR, "Compaq"),
 			MATCH(DMI_PRODUCT_NAME, "ProLiant ML350 G3"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 #ifdef CONFIG_SERIO_I8042
 	{ set_8042_nomux, "Compaq Proliant 8500", {
 			MATCH(DMI_SYS_VENDOR, "Compaq"),
 			MATCH(DMI_PRODUCT_NAME , "ProLiant"),
 			MATCH(DMI_PRODUCT_VERSION, "8500"),
-			NO_MATCH }},
+			}},
 #endif
 
 	{ force_acpi_ht, "Compaq Workstation W8000", {
 			MATCH(DMI_SYS_VENDOR, "Compaq"),
 			MATCH(DMI_PRODUCT_NAME, "Workstation W8000"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "ASUS P4B266", {
 			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
 			MATCH(DMI_BOARD_NAME, "P4B266"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "ASUS P2B-DS", {
 			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
 			MATCH(DMI_BOARD_NAME, "P2B-DS"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "ASUS CUR-DLS", {
 			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
 			MATCH(DMI_BOARD_NAME, "CUR-DLS"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "ABIT i440BX-W83977", {
 			MATCH(DMI_BOARD_VENDOR, "ABIT <http://www.abit.com>"),
 			MATCH(DMI_BOARD_NAME, "i440BX-W83977 (BP6)"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "IBM Bladecenter", {
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_BOARD_NAME, "IBM eServer BladeCenter HS20"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "IBM eServer xSeries 360", {
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_BOARD_NAME, "eServer xSeries 360"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "IBM eserver xSeries 330", {
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_BOARD_NAME, "eserver xSeries 330"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	{ force_acpi_ht, "IBM eserver xSeries 440", {
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_PRODUCT_NAME, "eserver xSeries 440"),
-			NO_MATCH, NO_MATCH }},
+			}},
 
 	/*
 	 * Systems with nForce2 BIOS timer override bug
@@ -1048,7 +1018,7 @@ static __initdata struct dmi_blacklist d
 			MATCH(DMI_BOARD_NAME, "<A7V>"),
 			/* newer BIOS, Revision 1011, does work */
 			MATCH(DMI_BIOS_VERSION, "ASUS A7V ACPI BIOS Revision 1007"),
-			NO_MATCH }},
+			}},
 
 	/*
 	 *	Boxes that need ACPI PCI IRQ routing and PCI scan disabled
@@ -1103,7 +1073,7 @@ static __init void dmi_check_blacklist(v
 		for(i=0;i<4;i++)
 		{
 			int s = d->matches[i].slot;
-			if(s==NONE)
+			if(s==DMI_NONE)
 				continue;
 			if(dmi_ident[s] && strstr(dmi_ident[s], d->matches[i].substr))
 				continue;


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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
       [not found] <20Oc4-HT-25@gated-at.bofh.it>
@ 2004-05-28 12:18 ` Andi Kleen
  2004-05-28 12:54   ` Dave Jones
                     ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Andi Kleen @ 2004-05-28 12:18 UTC (permalink / raw)
  To: Andrey Panin; +Cc: Andrew Morton, linux-kernel

Andrey Panin <pazke@donpac.ru> writes:

> simplify DMI blacklist table by removing the need to fill
> unused slots with NO_MATCH macro.

Can you please delay that patch for 2.7?
2.6 is for bug fixes, not for cleanups.

There are large third party patchkits for DMI and "cleaning up" 
the format will just cause lots of rejects and pain. A stable kernel
is supposed to be somewhat stable in internal interfaces too.

Thanks,

-Andi


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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 12:18 ` [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data Andi Kleen
@ 2004-05-28 12:54   ` Dave Jones
  2004-05-28 13:23     ` Andi Kleen
  2004-05-28 14:39   ` Rik van Riel
  2004-06-01 12:46   ` Pavel Machek
  2 siblings, 1 reply; 11+ messages in thread
From: Dave Jones @ 2004-05-28 12:54 UTC (permalink / raw)
  To: Andi Kleen; +Cc: Andrey Panin, Andrew Morton, linux-kernel

On Fri, May 28, 2004 at 02:18:52PM +0200, Andi Kleen wrote:

 > > simplify DMI blacklist table by removing the need to fill
 > > unused slots with NO_MATCH macro.
 > 
 > Can you please delay that patch for 2.7?
 > 2.6 is for bug fixes, not for cleanups.
 > 
 > There are large third party patchkits for DMI and "cleaning up" 
 > the format will just cause lots of rejects and pain. 

Alternatively, those third parties could get their act
together and submit those patches back upstream.

		Dave


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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 12:54   ` Dave Jones
@ 2004-05-28 13:23     ` Andi Kleen
  2004-05-28 13:37       ` Christoph Hellwig
  2004-05-28 13:46       ` Andrey Panin
  0 siblings, 2 replies; 11+ messages in thread
From: Andi Kleen @ 2004-05-28 13:23 UTC (permalink / raw)
  To: Dave Jones, Andi Kleen, Andrey Panin, Andrew Morton, linux-kernel

On Fri, May 28, 2004 at 01:54:47PM +0100, Dave Jones wrote:
> On Fri, May 28, 2004 at 02:18:52PM +0200, Andi Kleen wrote:
> 
>  > > simplify DMI blacklist table by removing the need to fill
>  > > unused slots with NO_MATCH macro.
>  > 
>  > Can you please delay that patch for 2.7?
>  > 2.6 is for bug fixes, not for cleanups.
>  > 
>  > There are large third party patchkits for DMI and "cleaning up" 
>  > the format will just cause lots of rejects and pain. 
> 
> Alternatively, those third parties could get their act
> together and submit those patches back upstream.

Often this is not the best thing to do - e.g. for upstream it is 
better to track down the bugs and try to fix them, even if that
takes a long time or find some other cleaner solution that doesn't
involve blacklisting. For a third party there are often time constraints 
(e.g. for a release) where there is no time to track down everything and 
blacklisting has to be more extensively used.

My point stays that kernel interfaces should stay stable in the stable
series as far as possible (= unless terminally broken, but that's
clearly not the case here).  If you feel the need to clean up
something better wait for the unstable series.

-Andi

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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 13:23     ` Andi Kleen
@ 2004-05-28 13:37       ` Christoph Hellwig
  2004-05-28 13:46       ` Andrey Panin
  1 sibling, 0 replies; 11+ messages in thread
From: Christoph Hellwig @ 2004-05-28 13:37 UTC (permalink / raw)
  To: Andi Kleen; +Cc: Dave Jones, Andrey Panin, Andrew Morton, linux-kernel

On Fri, May 28, 2004 at 03:23:58PM +0200, Andi Kleen wrote:
> My point stays that kernel interfaces should stay stable in the stable
> series as far as possible (= unless terminally broken, but that's
> clearly not the case here).  If you feel the need to clean up
> something better wait for the unstable series.

So what interface doews the patch break?  I can only see that it
adds interfaces.

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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 13:23     ` Andi Kleen
  2004-05-28 13:37       ` Christoph Hellwig
@ 2004-05-28 13:46       ` Andrey Panin
  2004-05-28 15:19         ` Andi Kleen
  1 sibling, 1 reply; 11+ messages in thread
From: Andrey Panin @ 2004-05-28 13:46 UTC (permalink / raw)
  To: Andi Kleen; +Cc: linux-kernel

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

On 149, 05 28, 2004 at 03:23:58PM +0200, Andi Kleen wrote:
> On Fri, May 28, 2004 at 01:54:47PM +0100, Dave Jones wrote:
> > On Fri, May 28, 2004 at 02:18:52PM +0200, Andi Kleen wrote:
> > 
> >  > > simplify DMI blacklist table by removing the need to fill
> >  > > unused slots with NO_MATCH macro.
> >  > 
> >  > Can you please delay that patch for 2.7?
> >  > 2.6 is for bug fixes, not for cleanups.
> >  > 
> >  > There are large third party patchkits for DMI and "cleaning up" 
> >  > the format will just cause lots of rejects and pain. 
> > 
> > Alternatively, those third parties could get their act
> > together and submit those patches back upstream.
> 
> Often this is not the best thing to do - e.g. for upstream it is 
> better to track down the bugs and try to fix them, even if that
> takes a long time or find some other cleaner solution that doesn't
> involve blacklisting. For a third party there are often time constraints 
> (e.g. for a release) where there is no time to track down everything and 
> blacklisting has to be more extensively used.

See the next patch then, it should make life of third party developers
much simpler. Also I can modify the patch to provide NO_MATCH constant,
so there will be no visible differencies.
 
> My point stays that kernel interfaces should stay stable in the stable
> series as far as possible (= unless terminally broken, but that's
> clearly not the case here).  If you feel the need to clean up
> something better wait for the unstable series.

I can't call dmi_scan.c a kernel interface, currently it's a crap.

-- 
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 12:18 ` [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data Andi Kleen
  2004-05-28 12:54   ` Dave Jones
@ 2004-05-28 14:39   ` Rik van Riel
  2004-06-01 12:46   ` Pavel Machek
  2 siblings, 0 replies; 11+ messages in thread
From: Rik van Riel @ 2004-05-28 14:39 UTC (permalink / raw)
  To: Andi Kleen; +Cc: Andrey Panin, Andrew Morton, linux-kernel

On Fri, 28 May 2004, Andi Kleen wrote:

> There are large third party patchkits for DMI

I think you just identified the problem...

> and "cleaning up"  the format will just cause lots of rejects and pain.

And this isn't it. ;)

-- 
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it." - Brian W. Kernighan


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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 13:46       ` Andrey Panin
@ 2004-05-28 15:19         ` Andi Kleen
  2004-05-28 15:22           ` Dave Jones
  0 siblings, 1 reply; 11+ messages in thread
From: Andi Kleen @ 2004-05-28 15:19 UTC (permalink / raw)
  To: Andi Kleen, linux-kernel

> > My point stays that kernel interfaces should stay stable in the stable
> > series as far as possible (= unless terminally broken, but that's
> > clearly not the case here).  If you feel the need to clean up
> > something better wait for the unstable series.
> 
> I can't call dmi_scan.c a kernel interface, currently it's a crap.

Disagree. It works just fine in its current form, your patch doesn't
fix any bugs.

-Andi

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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 15:19         ` Andi Kleen
@ 2004-05-28 15:22           ` Dave Jones
  2004-05-28 15:42             ` Andi Kleen
  0 siblings, 1 reply; 11+ messages in thread
From: Dave Jones @ 2004-05-28 15:22 UTC (permalink / raw)
  To: Andi Kleen; +Cc: linux-kernel

On Fri, May 28, 2004 at 05:19:30PM +0200, Andi Kleen wrote:
 > > > My point stays that kernel interfaces should stay stable in the stable
 > > > series as far as possible (= unless terminally broken, but that's
 > > > clearly not the case here).  If you feel the need to clean up
 > > > something better wait for the unstable series.
 > > 
 > > I can't call dmi_scan.c a kernel interface, currently it's a crap.
 > 
 > Disagree. It works just fine in its current form, your patch doesn't
 > fix any bugs.

Actually it does.  The ASUS P4P800 entry is very broken.
Andrey's patches inadvertantly fix it by doing away with the
necessity for NO_MATCH entries.

		Dave


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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 15:22           ` Dave Jones
@ 2004-05-28 15:42             ` Andi Kleen
  0 siblings, 0 replies; 11+ messages in thread
From: Andi Kleen @ 2004-05-28 15:42 UTC (permalink / raw)
  To: Dave Jones, Andi Kleen, linux-kernel

> Actually it does.  The ASUS P4P800 entry is very broken.
> Andrey's patches inadvertantly fix it by doing away with the
> necessity for NO_MATCH entries.

Well, several thousand lines of changes for a trivial bug fix 
that could be done much simpler also doesn't seem like the right 
approach for bug fixing in a stable kernel.

We can only hope that 2.7 opens soon, so that all those
"I really need to clean up something NOW" people leave 2.6
alone,  so that it can finally mature and become stable.

-Andi

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

* Re: [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data
  2004-05-28 12:18 ` [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data Andi Kleen
  2004-05-28 12:54   ` Dave Jones
  2004-05-28 14:39   ` Rik van Riel
@ 2004-06-01 12:46   ` Pavel Machek
  2 siblings, 0 replies; 11+ messages in thread
From: Pavel Machek @ 2004-06-01 12:46 UTC (permalink / raw)
  To: Andi Kleen; +Cc: Andrey Panin, Andrew Morton, linux-kernel

Hi!

> > simplify DMI blacklist table by removing the need to fill
> > unused slots with NO_MATCH macro.
> 
> Can you please delay that patch for 2.7?
> 2.6 is for bug fixes, not for cleanups.

Current DMI setup is terminally broken by keeping whole blacklist in
one place. Fixing it very good idea.
								Pavel
-- 
934a471f20d6580d5aad759bf0d97ddc

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

end of thread, other threads:[~2004-06-01 12:46 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20Oc4-HT-25@gated-at.bofh.it>
2004-05-28 12:18 ` [PATCH 0/13] 2.6.7-rc1-mm1, Simplify DMI matching data Andi Kleen
2004-05-28 12:54   ` Dave Jones
2004-05-28 13:23     ` Andi Kleen
2004-05-28 13:37       ` Christoph Hellwig
2004-05-28 13:46       ` Andrey Panin
2004-05-28 15:19         ` Andi Kleen
2004-05-28 15:22           ` Dave Jones
2004-05-28 15:42             ` Andi Kleen
2004-05-28 14:39   ` Rik van Riel
2004-06-01 12:46   ` Pavel Machek
2004-05-28 11:55 Andrey Panin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox