Bug 7664

Summary: PCI Bus hidden behind transparent bridge
Product: Drivers Reporter: Steve Hull (steve)
Component: PCIAssignee: Bernhard Kaindl (bk)
Status: RESOLVED DUPLICATE    
Severity: low CC: bunk, greg, mike.cloaked
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.18 Subsystem:
Regression: --- Bisected commit-id:
Attachments: Systemd journal for two boots with and without pci=assign-busses

Description Steve Hull 2006-12-11 04:28:10 UTC
Most recent kernel where this bug did *NOT* occur:
   I never had a kernel without this bug.  It happens 100% of the time.
Distribution:
   Fedora Core 6
Hardware Environment:
   Dell Inspiron 600m notebook
   Intel Pentium M 1.5 Ghz
   1 GB memory
   Intel 82801 Mobile PCI Bridge
      OZ711EC1 SmartCardBus Controller
      AR5212 802.11 abg Wireless NIC
   82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M)USB UHCI Controller #1
      Unknown (this is a Dell 300 Bluetooth card)
   82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M)USB UHCI Controller #2
   82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M)AC'97 Audio Controller
   82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M)AC'97 Modem Controller
   82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M)USB UHCI Controller #3
   82801DBM (ICH4-M)USB IDE Controller
      HTS721080G9AT00 (Hitach 80 GB HD)
      SONY DVD-RW DW-Q58A
   82801DBM (ICH4-M)LPC Interface Bridge
   82801DB/DBM (ICH4/ICH4-M)USB2 EHCI Controller
   82855PM Processor to IO Controller
   82855PM Processor to AGP Controller
      Radeon R250 [Mobility FireGL 9000]
   Platform Device (bluetooth)
   Platform Device (i8042)
      i8042 Aux Port - Alps/PS2 ALPS GlidePoint
   Platform Device (serial8250)
   
Software Environment:
   Fedora Core 6, kernel 2.6.18-1.2849
Problem Description:
   When I boot, error messages in the System Log indicate that 2 PCI Busses are
hidden behind a transparent bridge.  Per the suggestion in the error message, I
added pci=assign-busses to my grub.conf file but it didn't help.  The error
message said to inform you of the results.
Dec 11 06:15:00 localhost kernel: PCI: PCI BIOS revision 2.10 entry at 0xfc96e,
last bus=2
Dec 11 06:15:00 localhost kernel: PCI: Using configuration type 1
Dec 11 06:15:00 localhost kernel: Setting up standard PCI resources
Dec 11 06:15:00 localhost kernel: ACPI: Interpreter enabled
Dec 11 06:15:00 localhost kernel: ACPI: Using PIC for interrupt routing
Dec 11 06:15:00 localhost kernel: ACPI: PCI Root Bridge [PCI0] (0000:00)
Dec 11 06:15:00 localhost kernel: ACPI: Assume root bridge [\_SB_.PCI0] bus is 0
Dec 11 06:15:00 localhost kernel: PCI quirk: region 0800-087f claimed by ICH4
ACPI/GPIO/TCO
Dec 11 06:15:00 localhost kernel: PCI quirk: region 0880-08bf claimed by ICH4 GPIO
Dec 11 06:15:00 localhost kernel: PCI: Ignoring BAR0-3 of IDE controller
0000:00:1f.1
Dec 11 06:15:00 localhost kernel: PCI: Transparent bridge - 0000:00:1e.0
Dec 11 06:15:00 localhost kernel: PCI: Bus #03 (-#06) is hidden behind
transparent bridge #02 (-#02) (try 'pci=assign-busses')
Dec 11 06:15:00 localhost kernel: Please report the result to linux-kernel to
fix this permanently
Dec 11 06:15:00 localhost kernel: PCI: Bus #07 (-#0a) is hidden behind
transparent bridge #02 (-#02) (try 'pci=assign-busses')
Dec 11 06:15:00 localhost kernel: Please report the result to linux-kernel to
fix this permanently
Dec 11 06:15:00 localhost kernel: ACPI: PCI Interrupt Link [LNKA] (IRQs 9 10 *11)
Dec 11 06:15:00 localhost kernel: ACPI: PCI Interrupt Link [LNKB] (IRQs 5 7) *11
Dec 11 06:15:00 localhost kernel: ACPI: PCI Interrupt Link [LNKC] (IRQs 9 10 *11)
Dec 11 06:15:00 localhost kernel: ACPI: PCI Interrupt Link [LNKD] (IRQs 5 7 9 10
*11)
Dec 11 06:15:00 localhost kernel: ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6
7 9 10 11 12 14 15) *0, disabled.
Dec 11 06:15:00 localhost kernel: ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6
7 9 10 *11 12 14 15)
Dec 11 06:15:00 localhost kernel: PCI: Using ACPI for IRQ routing
Dec 11 06:15:00 localhost kernel: PCI: If a device doesn't work, try
"pci=routeirq".  If it helps, post a report

Steps to reproduce: I suspect you may need a Dell 600m or another machine with
an identical motherboard to duplicate the hardware setup.
Comment 1 Bernhard Kaindl 2007-07-26 05:29:59 UTC
Hi, you wrote:

> When I boot, error messages in the System Log indicate that 2 PCI Busses
> are hidden behind a transparent bridge.
> Per the suggestion in the error message, I added pci=assign-busses to my
> grub.conf file but it didn't help.
> The error message said to inform you of the results.

When the kernel boots with pci=assign-busses (should be found also in /proc/cmdline after booting, it it was indeed booted with it), then the
warning should not appear.

To check what pci=assign-busses did, can you paste the output of

lspci -v | grep -e ^0 -e primary | grep -B1 primary

into this bug report when pci=assign-busses is found in /proc/cmdline?

If your kernel loads the yenta-socket driver, you should also find some kernel message from "Yenta" in the output of dmesg (or your kernel log from boot).
If you have them, just paste them here also.

As you only pasted the messages, I assume that you are not missing PCI
devices or cardbus cards in lspci, right?
Comment 2 Bernhard Kaindl 2007-10-16 04:44:17 UTC
The message is has been disabled in the latest upstream kernel release (2.6.22
stable series as well as 2.6.23), it's now a debug message which is not shown
when not debugging.

*** This bug has been marked as a duplicate of bug 8074 ***
Comment 3 Mike Cloaked 2014-07-19 15:36:59 UTC
I have had the same problem with a boot message suggesting adding pci=assign-busses in a Samsung Q35 running archlinux with 3.15 kernels.

After adding the above to the kernel boot line here is some diagnostic data:

[mike@samsung1 ~]$ lspci -v | grep -e ^0 -e primary | grep -B1 primary
00:1c.0 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 1 (rev 02) (prog-if 00 [Normal decode])
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
00:1c.1 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 2 (rev 02) (prog-if 00 [Normal decode])
        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
--
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) (prog-if 01 [Subtractive decode])
        Bus: primary=00, secondary=03, subordinate=07, sec-latency=32
--
03:09.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b4)
        Bus: primary=03, secondary=04, subordinate=07, sec-latency=176

I will attach the systemd journal for the last two boots - the first section contains the original boot log and the second after adding pci=assign-busses
Comment 4 Mike Cloaked 2014-07-19 15:39:01 UTC
Created attachment 143511 [details]
Systemd journal for two boots with and without pci=assign-busses