Red Hat Bugzilla – Bug 136723
Low limit for number of PCI buses seen through an mptable
Last modified: 2015-01-04 17:11:03 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1)
Description of problem:
The number of PCI busses usable through an mptable, defined in
MP_MAX_BUSSES is 32 (file include/asm-x86_64/mpsspec.h).
When you boot a system with more than 32 busses or with PCI bus
numbers (passed via the mptable) going above 32, the IRQ assignment
goes wrong causing several IOAPIC vectors to be assigned to IRQ0
(erroneously). This doesn't allow many devices to function properly.
This value above should be set to a value of 257 or more.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Boot a system with more than 32 PCI busses or bus numbers in the
mptable going above 32. (boot with this kernel).
Actual Results: SCSI drivers failed to detect the drives.
Expected Results: SCSI drives drives should have been visible and the
kernel should have booted to a SCSI partition as a root filesystem.
Just need to set MAX_MP_BUSSES (in include/asm-x86_64/mpsspec.h, line
160) to 257 or more (like in 2.4.21 or later kernels or in 2.6.9)
instead of the current value of 32 (which remains so until 2.6.8).
this has been changed for beta2 (due to a rebase to 2.6.9)
Closing out. Please reopen if the problem is still present with recent code.