Problem adding more than 8 network adapters

Gustau Pérez i Querol gperez at
Wed Aug 29 13:13:08 UTC 2012

Al 29/08/2012 14:13, En/na John Baldwin ha escrit:
> On Wednesday, August 29, 2012 6:12:02 am Peter Jeremy wrote:
>> [Moving to -stable and adding jhb@ for his input]
>> On 2012-Aug-29 11:32:44 +0200, Gustau Pérez i Querol <gperez at> wrote:
>>> Al 29/08/2012 11:02, En/na Peter Jeremy ha escrit:
>>>> On 2012-Aug-28 11:44:44 +0200, Gustau Pérez i Querol <gperez at> wrote:
>>>>>     I'm running FreeBSD 9.1 RC1/AMD64 with VirtualBox. The problem I'm
>>>>> facing is that I can't use more than 8 network adapters plugged to the
>>>>> virtual machine.
>>>> ...
>>>>>      I don't know if it's a net@ problem or maybe it is a problem with
>>>>> the emulated PCI-bridge and then stable@ should be contacted. Also, I'm
>>>>> not sure if a real machine would support more than 8 network adapters or
>>>>> not. Any hints would be appreciated.
>>>> I don't think I've ever used more than 6 physical NICs in a host but don't
>>>> know of any reason for >8 to not work.
>>>> Can you please post a "pciconf -lv" from FreeBSD and the equivalent
>>>> "lspci" from Linux.  A FreeBSD verbose boot log might also help.
>>>     Sure. I'm attaching them to this mail. I hope the mailing list
>>> doesn't eat them. If it does, I will post them online and send the URL
>>> to the mailing list.
>> Ah..  lspci shows the 9th LANCE at 02:00.0.  The verbose boot shows
>> FreeBSD finds pcib2 (at pci0 device 25.0) but doesn't see anything
>> on that bus.  ISTR jhb@ will recognize that problem.
> Silly firmware, VM, whatever it is. :)  It's buggy.
>>> pcib1: <PCI-PCI bridge> at device 24.0 on pci0
>>> pcib1:   domain            0
>>> pcib1:   secondary bus     1
>>> pcib1:   subordinate bus   2
>>> pcib1:   no prefetched decode
>>> pcib1:   Subtractively decoded bridge.
>>> pci1: <PCI bus> on pcib1
>>> pci1: domain=0, physical bus=1
>>> pcib2: <PCI-PCI bridge> at device 25.0 on pci0
>>> pcib2:   domain            0
>>> pcib2:   secondary bus     2
>>> pcib2:   subordinate bus   3
>>> pcib2:   no prefetched decode
>>> pcib2:   Subtractively decoded bridge.
>>> pci2: <PCI bus> on pcib2
>>> pci2: domain=0, physical bus=2
> This is indeed the problem.  PCI bus 2 is "claimed" by both pcib1 and pcib2
> since the VM author programmed the bridges incorrectly.  In this case, the
> subordinate bus should be "1" and "2", not "2" and "3".  You could add a hack
> to pci_pci.c to fix the subordinate bus on these bridges which should probably
> fix this.

    I guess a quirk should be added to pci_pci.c:572? I guess it would 
be enough to check the chipid and then set the secbus and subbus 
according to the supbus, am I right? That quirk should be also added to 

    But this would be a temporary hack, fortunately this hardware can be 
fixed (because it's virtual); so I guess the VBox team should be 
notified about this one.

Prou top-posting :
Stop top-posting :	

O O O Gustau Pérez i Querol
O O O Departament d'Enginyeria Telemàtica
O O O Universitat Politècnica de Catalunya
       Edifici C3 - Despatx S101-B
  UPC  Campus Nord UPC
       C/ Jordi Girona, 1-3
       08034 - Barcelona

More information about the freebsd-stable mailing list