Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Aug 2012 13:32:35 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Andriy Gapon <avg@freebsd.org>
Cc:        Gustau =?utf-8?q?P=C3=A9rez_i_Querol?= <gperez@entel.upc.edu>, freebsd-stable@freebsd.org
Subject:   Re: Problem adding more than 8 network adapters
Message-ID:  <201208291332.35888.jhb@freebsd.org>
In-Reply-To: <503E2453.9040407@FreeBSD.org>
References:  <503C930C.3010405@entel.upc.edu> <503E1F02.6050505@entel.upc.edu> <503E2453.9040407@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday, August 29, 2012 10:16:51 am Andriy Gapon wrote:
> on 29/08/2012 16:54 Gustau P=C3=A9rez i Querol said the following:
> > Al 29/08/2012 15:30, En/na Andriy Gapon ha escrit:
> >> I wonder where the discrepancy could come from.
> >> Why would VirtualBox emulate the bridge differently for different OSes?
> >> And I do not see any quirks related to bus numbers for this PCI ID in =
either
> >> Linux, FreeBSD or lspci code...
> >>
> >> I think that output of lspci on FreeBSD could be interesting too (it's=
 available
> >> via sysutils/pciutils port).
> >>
> >=20
> >    The output of lspci gives the same info as pciconf. I'm attaching it=
 however.
> [snip]
> > 00:18.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f2) =
(prog-if 01 [Subtractive decode])
> > 	Flags: bus master, 66MHz, fast devsel, latency 0
> > 	Bus: primary=3D01, secondary=3D01, subordinate=3D02, sec-latency=3D0
> > 	!!! Unknown I/O range types e0/df
> > 	!!! Unknown memory range types f100/f0ff
> >=20
> > 00:19.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f2) =
(prog-if 01 [Subtractive decode])
> > 	Flags: bus master, 66MHz, fast devsel, latency 0
> > 	Bus: primary=3D02, secondary=3D02, subordinate=3D03, sec-latency=3D0
> > 	!!! Unknown I/O range types e0/df
> > 	!!! Unknown memory range types f100/f0ff
>=20
> I think that I was wrong with regard to Linux.  I see that it does extens=
ive
> bridge reconfiguring if it notices any insanity.  And I'd say that Virtua=
lBix does
> create an insane config here.
> I believe that primary should be 0, secondary should be 1 and 2 respectiv=
ely (as
> they are) and subordinate should be equal to secondary.  So primary bus n=
umbers
> and subordinate bus numbers are insane here.
> I am not sure how much the incorrect bus numbers actually affect FreeBSD =
PCI-PCI
> driver as it does not seem to use primary and subordinate numbers for any=
thing
> important.

The problem is that it affects the routing of PCI config requests, so it ne=
eds
to be correct.  Fixing our PCI code to properly renumber buses as needed is=
 a
WIP I have, but it's not ready for testing yet to see if it would help with=
 this
case.

=2D-=20
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208291332.35888.jhb>