Bug 26654 - PCI bus not recognized
PCI bus not recognized
Product: Red Hat Linux
Classification: Retired
Component: kernel (Show other bugs)
i386 Linux
high Severity high
: ---
: ---
Assigned To: Arjan van de Ven
Brock Organ
Florence Gold
Depends On:
  Show dependency treegraph
Reported: 2001-02-07 23:31 EST by Richard Black
Modified: 2005-10-31 17:00 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2001-02-09 18:18:16 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Richard Black 2001-02-07 23:31:21 EST
Red Hat 7.1 Linux Beta - beta3
Feb 7, 2001
Failing HW: ML570, DL580
Passing HW: DL360, ML350, ML370, ML530 

More than one secondary bus for a given north bridge is not recognized.  
This leaves PCI slots that are inaccessible.

It appears that the following email and patch corrects the issue:

The patch below (against vanilla 2.4.0) makes Linux recognize
PCI-Devices sitting in another PCI bus than 0 (or 1).

This was tested on a Netfinity 7100-8666 using a ServerWorks chipset.

00:00.0 Host bridge: ServerWorks CNB20HE (rev 21)
00:00.1 Host bridge: ServerWorks CNB20HE (rev 01)
00:00.2 Host bridge: ServerWorks: Unknown device 0006
00:00.3 Host bridge: ServerWorks: Unknown device 0006
00:01.0 SCSI storage controller: Adaptec 7896
00:01.1 SCSI storage controller: Adaptec 7896
00:05.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet 
LANCE] (rev 44)
00:06.0 VGA compatible controller: S3 Inc. Trio 64 3D (rev 01)
00:0f.0 ISA bridge: ServerWorks OSB4 (rev 4f)
00:0f.1 IDE interface: ServerWorks: Unknown device 0211
00:0f.2 USB Controller: ServerWorks: Unknown device 0220 (rev 04)
02:04.0 Ethernet controller: Digital Equipment Corporation DECchip 
21142/43 (rev 41)
02:06.0 RAID bus controller: IBM: Unknown device 01bd

The last two lines do not occur without the patch.

diff -ur linux-2.4.0/linux/arch/i386/kernel/pci-pc.c 
--- linux-2.4.0/linux/arch/i386/kernel/pci-pc.c Thu Jun 22 16:17:16 2000
+++ linux/arch/i386/kernel/pci-pc.c     Tue Jan 16 18:10:30 2001
@@ -849,10 +849,13 @@
         * ServerWorks host bridges -- Find and scan all secondary buses.
         * Register 0x44 contains first, 0x45 last bus number routed there.
-       u8 busno;
-       pci_read_config_byte(d, 0x44, &busno);
-       printk("PCI: ServerWorks host bridge: secondary bus %02x\n", 
-       pci_scan_bus(busno, pci_root_ops, NULL);
+       u8 busno_first, busno_last, i;
+       pci_read_config_byte(d, 0x44, &busno_first);
+       pci_read_config_byte(d, 0x45, &busno_last);
+       for (i = busno_first; i <= busno_last; i++) {
+               printk("PCI: ServerWorks host bridge: secondary bus %
02x\n", i);
+               pci_scan_bus(i, pci_root_ops, NULL);
+       }
        pcibios_last_bus = -1;

Adam                 al10@inf.tu-dresden.de
  Lackorzynski         http://a.home.dhs.org

Reproducible: Yes.

Compaq Bug #: 194031

Compaq considers this defect a  MUST-FIX for Florence.
Comment 1 Michael Fulbright 2001-02-08 11:48:07 EST
Assigning to correct component.
Comment 2 Arjan van de Ven 2001-02-08 12:49:15 EST
Will use the agreed (on l-k) patch on this for the next build.
(the patch in the bug has been superseeded by an other one)
Comment 3 Arjan van de Ven 2001-02-08 13:52:53 EST
Are you prepared to test a patch or do you want to wait for the next
kernel rpm to be released?
Comment 4 Glen Foster 2001-02-08 18:42:52 EST
This defect is considered MUST-FIX for Florence Gold release
Comment 5 Richard Black 2001-02-09 17:06:09 EST
Tested patch from arjanv@redhat.com and it works, thanks.
Comment 6 Glen Foster 2001-02-09 18:18:12 EST
This defect is considered MUST-FIX for Florence Gold release
Comment 7 Arjan van de Ven 2001-02-12 04:07:40 EST
I will close this bug as "deferred" as it is fixed and confirmed, and the fix
will be in the next kernel we release.

Note You need to log in before you can comment on or make changes to this bug.