Distribution: Debian testing Hardware Environment: i386, laptop HP Compaq nx8220 Software Environment: Problem Description: When booting Linux kernel, it says: PCI: Transparent bridge - 0000:00:1e.0 PCI: Bus #03 (-#06) is hidden behind transparent bridge #02 (-#03) (try 'pci=assign-busses') Please report the result to linux-kernel to fix this permanently Steps to reproduce: Every time I boot.
Created attachment 10089 [details] dmesg without assign-busses
Created attachment 10090 [details] lspci without assign-busses
Created attachment 10091 [details] dmesg with assign-busses
Created attachment 10092 [details] lspci with assign-busses
For Greg and others: This is a similiar text as I used in bug 8591, (only a bit improved) so you do not have to read it again. Many thanks for the report, I reviewed it and have this result: The message Bus #03 (-#06) is hidden behind transparent bridge #02 (-#03) indicates that some PCI busses may not reachable by your system, but it is very likely that if these bus is CardBus slots, then yenta-socket fixes this in current kernels, and lets you see your cardbus cards, so when they are, there is no issue at all and you'll see your CardBus cards in lspci and they should be picked up by the drivers which are loaded also. Unless you have PCI hardware (such as CardBus cards, not old PCMCIA cards) connected to your machine which is not shown by lspci after loading all neccessary drivers (eg. yenta_socket), we can close this bug: I'd then go forward and simply propose to either delete this warning check or to change it it a PCI-internal warning message and refine it a bit (so that it only is triggered in cases which are not addressed by yenta-socket) Not that if a secific driver is not working, then this is not in relation to this bug report, this bug report is only about PCI devices which may potentially not show up in lspci and for which the driver also will never see. Unless the PCI device is not shown in PCI, open a new bug if you have an issue with a driver. With your laptop, there would only be an issue if you connect an external PCI enclosure which itself has further internal PCI busses thru your cardbus slot to your laptop, but that case is also adressed by yenta-socket in current kernels. Again many thanks for the report and if I hear nothing new regarding this bug report, I'll close it when the 'bus hidden behind bridge' message is fixed.
The PCI misconfiguration which is being indicated in this message only turned out to be an issue with CardBus and it is being fixed up within the possible limits of that approach in CardBus driver with yenta_fixup_parent_bridge() (since 2.6.18) and as that has turned out as sufficient, we changed the reporting of this misconfiguration to be printed only when debugging PCI: In a patch which is merged mainline with 2.6.22.6 and 2.6.23, I improved the the message and changed it a PCI debugging message only, so it's not shown unless PCI is being debugged. The issue can be considered to be closed now. Is this just a warning which I left in to be sure that the reason for it is properly dealt with, but we removed it from the normal user's sight now because we found * that the PCI misconfiguration which is being indicated in this message only seems to be an issue with CardBus. * that the CardBus fixup code which we have in place since 2.6.18 with appears to be sufficient. Thus, I submitted a patch which was merged mainline with 2.6.22.6 and 2.6.23 that turns it into a message which is only enabled when debugging PCI, so in practical users terms, the warning is gone. *** This bug has been marked as a duplicate of bug 7531 ***