From: Matt Domsch <Matt_Domsch@dell.com>
To: stable@kernel.org
Cc: Yinghai Lu <yhlu.kernel@gmail.com>, Ingo Molnar <mingo@elte.hu>,
Thomas Gleixner <tglx@linutronix.de>,
Jesse Barnes <jbarnes@virtuousgeek.org>,
linux-kernel@vger.kernel.org,
Michal Schmidt <mschmidt@redhat.com>,
davej@redhat.com, Andy Gospodarek <andy@greyhouse.net>,
john.cagle@hp.com, Greg KH <greg@kroah.com>
Subject: [PATCH stable] x86 PCI: call dmi_check_pciprobe()
Date: Mon, 5 May 2008 21:59:58 -0500 [thread overview]
Message-ID: <20080506025958.GA26913@auslistsprd01.us.dell.com> (raw)
This is a backport of the noted commit which is in 2.6.26-rc1
now. This is necessary to enable pci=bfsort automatically on a number
of Dell and HP servers, as well as pci=assign-busses for a few other
systems, which was broken between 2.6.22 and 2.6.23.
commit 0df18ff366853cdf31e5238764ec5c63e6b5a398
Author: Yinghai Lu <yhlu.kernel@gmail.com>
Date: Mon Apr 14 15:40:37 2008 -0700
x86 PCI: call dmi_check_pciprobe()
this change:
| commit 08f1c192c3c32797068bfe97738babb3295bbf42
| Author: Muli Ben-Yehuda <muli@il.ibm.com>
| Date: Sun Jul 22 00:23:39 2007 +0300
|
| x86-64: introduce struct pci_sysdata to facilitate sharing of ->sysdata
|
| This patch introduces struct pci_sysdata to x86 and x86-64, and
| converts the existing two users (NUMA, Calgary) to use it.
|
| This lays the groundwork for having other users of sysdata, such as
| the PCI domains work.
|
| The Calgary bits are tested, the NUMA bits just look ok.
replaces pcibios_scan_root with pci_scan_bus_parented...
but in pcibios_scan_root we have a DMI check:
dmi_check_system(pciprobe_dmi_table);
when when have several peer root buses this could be called multiple
times (which is bad), so move that call to pci_access_init().
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
--
Matt Domsch
Linux Technology Strategist, Dell Office of the CTO
linux.dell.com & www.dell.com/linux
diff -urNp --exclude-from=/home/mdomsch/excludes --minimal linux-2.6.25.1.orig/arch/x86/pci/common.c linux-2.6.25.1/arch/x86/pci/common.c
--- linux-2.6.25.1.orig/arch/x86/pci/common.c 2008-05-01 16:45:25.000000000 -0500
+++ linux-2.6.25.1/arch/x86/pci/common.c 2008-05-05 20:49:52.000000000 -0500
@@ -372,13 +372,16 @@ static struct dmi_system_id __devinitdat
{}
};
+void __init dmi_check_pciprobe(void)
+{
+ dmi_check_system(pciprobe_dmi_table);
+}
+
struct pci_bus * __devinit pcibios_scan_root(int busnum)
{
struct pci_bus *bus = NULL;
struct pci_sysdata *sd;
- dmi_check_system(pciprobe_dmi_table);
-
while ((bus = pci_find_next_bus(bus)) != NULL) {
if (bus->number == busnum) {
/* Already scanned */
diff -urNp --exclude-from=/home/mdomsch/excludes --minimal linux-2.6.25.1.orig/arch/x86/pci/init.c linux-2.6.25.1/arch/x86/pci/init.c
--- linux-2.6.25.1.orig/arch/x86/pci/init.c 2008-05-01 16:45:25.000000000 -0500
+++ linux-2.6.25.1/arch/x86/pci/init.c 2008-05-05 20:51:02.000000000 -0500
@@ -32,6 +32,8 @@ static __init int pci_access_init(void)
printk(KERN_ERR
"PCI: Fatal: No config space access function found\n");
+ dmi_check_pciprobe();
+
return 0;
}
arch_initcall(pci_access_init);
diff -urNp --exclude-from=/home/mdomsch/excludes --minimal linux-2.6.25.1.orig/arch/x86/pci/pci.h linux-2.6.25.1/arch/x86/pci/pci.h
--- linux-2.6.25.1.orig/arch/x86/pci/pci.h 2008-05-01 16:45:25.000000000 -0500
+++ linux-2.6.25.1/arch/x86/pci/pci.h 2008-05-05 20:50:29.000000000 -0500
@@ -39,6 +39,8 @@ enum pci_bf_sort_state {
pci_dmi_bf,
};
+extern void __init dmi_check_pciprobe(void);
+
/* pci-i386.c */
extern unsigned int pcibios_max_latency;
reply other threads:[~2008-05-06 3:00 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080506025958.GA26913@auslistsprd01.us.dell.com \
--to=matt_domsch@dell.com \
--cc=andy@greyhouse.net \
--cc=davej@redhat.com \
--cc=greg@kroah.com \
--cc=jbarnes@virtuousgeek.org \
--cc=john.cagle@hp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mschmidt@redhat.com \
--cc=stable@kernel.org \
--cc=tglx@linutronix.de \
--cc=yhlu.kernel@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox