From: Matt Domsch <Matt_Domsch@dell•com>
To: Eilon Greenstein <eilong@broadcom•com>
Cc: Dmitry Kravkov <dmitry@broadcom•com>,
"davem@davemloft•net" <davem@davemloft•net>,
"netdev@vger•kernel.org" <netdev@vger•kernel.org>,
"narendra_k@dell•com" <narendra_k@dell•com>,
"jordan_hargrave@dell•com" <jordan_hargrave@dell•com>
Subject: Re: [PATCH net-next] bnx2x: Add Nic partitioning mode (57712 devices)
Date: Mon, 6 Dec 2010 11:35:34 -0600 [thread overview]
Message-ID: <20101206173534.GC13628@auslistsprd01.us.dell.com> (raw)
In-Reply-To: <1291023192.9770.0.camel@lb-tlvb-eilong.il.broadcom.com>
On Mon, Nov 29, 2010 at 11:33:12AM +0200, Eilon Greenstein wrote:
> The main difference here is that we are talking about multiple PFs - so
> each can be brought up or down independently of the others. So there is
> no one master PF that controls the port and once it is brought down, the
> port is down too. At any given moment, one of the PFs is acting as the
> port master and controls the shared HW - but once this PF is brought
> down, another PF is seamlessly taking over.
Hmm, that complicates things a bit.
> I think the main difference is that we have real PCI functions and not
> virtual ones. On the same PCI bus, we have two physical ports, and 8
> physical functions - 4 on each port. I agree that exposing which
> functions are using the same port can really help - so I'm open to
> suggestions on the "how".
We really need, for NPAR, SR-IOV, and the Chelsio
multiple-ports-per-PCI-device model, a "network port" abstraction in
sysfs. We need the ability to map M ports to N PCI devices, and
expose that mapping in sysfs.
For SR-IOV, biosdevname follows the physfn and virtfn* pointers to map
VFs to the PF. But it assumes 1 PF -> 1 port. For the Intel 1GbE and
10GbE cards I have, this is true, but nothing says it has to be true.
Maybe something like:
/sys/class/net_port/<port_name>/<ifname> -> /sys/class/net/<ifname>
/sys/class/net/<ifname>/port -> /sys/class/net_port/<port_name>
This introduces the idea of ports, though adds the complication of
needing to name them somehow. But it would expose the relationship of
each net interface to a specific port, as well as allow multiple
interfaces per port, conceptually independent of the PCI device
mapping. That way, each driver, which must know the mapping somehow,
could fill these links out?
--
Matt Domsch
Technology Strategist
Dell | Office of the CTO
next prev parent reply other threads:[~2010-12-06 17:35 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-28 22:09 [PATCH net-next] bnx2x: Add Nic partitioning mode (57712 devices) Dmitry Kravkov
2010-11-29 6:01 ` Matt Domsch
2010-11-29 9:33 ` Eilon Greenstein
2010-12-06 17:35 ` Matt Domsch [this message]
2010-12-06 18:21 ` Dimitris Michailidis
2010-12-09 14:49 ` Eilon Greenstein
2010-12-17 2:45 ` Matt Domsch
2010-12-17 13:22 ` Ben Hutchings
2010-12-19 5:57 ` Matt Domsch
2010-12-19 21:21 ` Ben Hutchings
2010-12-17 23:13 ` Dimitris Michailidis
2010-12-19 5:49 ` Matt Domsch
2010-12-20 19:44 ` Dimitris Michailidis
2011-01-06 14:40 ` Eilon Greenstein
2010-12-01 20:40 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101206173534.GC13628@auslistsprd01.us.dell.com \
--to=matt_domsch@dell$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=dmitry@broadcom$(echo .)com \
--cc=eilong@broadcom$(echo .)com \
--cc=jordan_hargrave@dell$(echo .)com \
--cc=narendra_k@dell$(echo .)com \
--cc=netdev@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox