[PATCH] Buglet in 2.4.19's arch/i386/kernel/pci-pc.c

James Cleverdon (jamesclv@us.ibm.com)
Tue, 10 Sep 2002 15:20:42 -0700


Despite the comment, the return from direct check function was overwriting the
value found by the BIOS check, assuming both are enabled. Oddly, this was
keeping my 2.4.20-pre-ac Summit backport from booting.

Please apply.

--- 2.4.19/arch/i386/kernel/pci-pc.c Fri Aug 2 17:39:42 2002
+++ acx/arch/i386/kernel/pci-pc.c Tue Sep 10 15:14:55 2002
@@ -1276,6 +1276,8 @@

void __devinit pcibios_config_init(void)
{
+ struct pci_ops *pcip;
+
/*
* Try all known PCI access methods. Note that we support using
* both PCI BIOS and direct access, with a preference for direct.
@@ -1293,7 +1295,8 @@

#ifdef CONFIG_PCI_DIRECT
if ((pci_probe & (PCI_PROBE_CONF1 | PCI_PROBE_CONF2))
- && (pci_root_ops = pci_check_direct())) {
+ && (pcip = pci_check_direct())) {
+ pci_root_ops = pcip;
if (pci_root_ops == &pci_direct_conf1) {
pci_config_read = pci_conf1_read;
pci_config_write = pci_conf1_write;

-- 
James Cleverdon
IBM xSeries Linux Solutions
{jamesclv(Unix, preferred), cleverdj(Notes)} at us dot ibm dot com

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/