x86/PCI: Preserve existing pci=bfsort whitelist for Dell systems
authorNarendra_K@Dell.com <Narendra_K@Dell.com>
Fri, 18 Mar 2011 17:22:14 +0000 (10:22 -0700)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Fri, 22 Jul 2011 15:44:28 +0000 (08:44 -0700)
Commit 6e8af08dfa40b747002207d3ce8e8b43a050d99f enables pci=bfsort on
future Dell systems. But the identification string 'Dell System' matches
on already existing whitelist, which do not have SMBIOS type 0xB1,
causing pci=bfsort not being set on existing whitelist.

This patch fixes the regression by moving the type 0xB1 check beyond the
existing whitelist so that existing whitelist is walked before.

Signed-off-by: Shyam Iyer <shyam_iyer@dell.com>
Signed-off-by: Narendra K <narendra_k@dell.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
arch/x86/pci/common.c

index 5fe7502..92df322 100644 (file)
@@ -247,13 +247,6 @@ static const struct dmi_system_id __devinitconst pciprobe_dmi_table[] = {
        },
 #endif         /* __i386__ */
        {
-               .callback = find_sort_method,
-               .ident = "Dell System",
-               .matches = {
-                       DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
-               },
-       },
-       {
                .callback = set_bf_sort,
                .ident = "Dell PowerEdge 1950",
                .matches = {
@@ -294,6 +287,13 @@ static const struct dmi_system_id __devinitconst pciprobe_dmi_table[] = {
                },
        },
        {
+               .callback = find_sort_method,
+               .ident = "Dell System",
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc"),
+               },
+       },
+       {
                .callback = set_bf_sort,
                .ident = "HP ProLiant BL20p G3",
                .matches = {