From: Jakub Kicinski <jakub.kicinski@netronome.com>
To: "Samudrala, Sridhar" <sridhar.samudrala@intel.com>
Cc: Or Gerlitz <gerlitz.or@gmail.com>,
Florian Fainelli <f.fainelli@gmail.com>,
Simon Horman <simon.horman@netronome.com>,
Andy Gospodarek <andy@greyhouse.net>,
"mchan@broadcom.com" <mchan@broadcom.com>,
Jiri Pirko <jiri@resnulli.us>,
Alexander Duyck <alexander.duyck@gmail.com>,
Frederick Botha <frederick.botha@netronome.com>,
nick viljoen <nick.viljoen@netronome.com>,
Linux Netdev List <netdev@vger.kernel.org>
Subject: Re: phys_port_id in switchdev mode?
Date: Wed, 5 Sep 2018 18:47:13 +0200 [thread overview]
Message-ID: <20180905184713.4704c9ce@cakuba> (raw)
In-Reply-To: <ee10a22c-3605-e60e-391e-4eee322021dc@intel.com>
On Wed, 5 Sep 2018 09:20:43 -0700, Samudrala, Sridhar wrote:
> > With this libvirt on Host0 should easily find the actual PF0 netdev to
> > run the NDO on, if it wants to use VFs:
> > - libvrit finds act VF0/0 to plug into the VF;
> > - reads its phys_port_id -> "PF0 SN";
> > - finds netdev with "PF0 SN" linked to physfn -> "act PF0";
> > - runs NDOs on "act PF0" for PF0's VF correctly.
>
> I think Host0 corresponds to embedded OS on the NIC. Is this correct?
> I guess in this setup, only PF0's PCI interface on Host0 is in switchdev mode and
> the representors for PF0 and its VFs are created on Host0 when they come up
> on Host1. I would think PF0 on Host0 acts as a Control PF for PF1 on Host1.
>
> Isn't hypervisor running only on Host1?
The main hypervisor is, but Host0 can very easily want to run some DPI
or some such on flows before it allows them though, and people like
running DPI-like apps in VMs/containers..
> > The other problem remains unsolved - Host0 can't be sure without
> > vendor-specific knowledge whether it's connected to PF0 or PF1.
> > That's why I was thinking maybe we should provide phys_port_id
> > on PF representors as well. That means we'd have to provide the
> > legacy NDOs on PF reprs too because libvirt may now find PF repr...
> > Would it be cleaner to add a new attribute?
> >
> > Should Host0 in bare metal cloud have access to SR-IOV NDOs of Host1?
>
> Do you mean the legacy VF ndo ops on the PF? I think it is possible to configure
> the VFs on Host1 via the port representors except for the MAC address.
Yes, the MAC address would be the only one. Could Host0 care about
which MACs Host1 assigned to its VFs? I'm not sure..
prev parent reply other threads:[~2018-09-05 21:18 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20180828200539.1c0fe607@cakuba.netronome.com>
2018-08-28 18:43 ` phys_port_id in switchdev mode? Jakub Kicinski
2018-08-31 20:13 ` Marcelo Ricardo Leitner
2018-09-01 11:34 ` Jakub Kicinski
2018-09-03 13:55 ` Marcelo Ricardo Leitner
2018-09-03 9:43 ` Or Gerlitz
2018-09-03 9:40 ` Or Gerlitz
2018-09-04 10:20 ` Jakub Kicinski
2018-09-04 20:37 ` Or Gerlitz
2018-09-05 16:43 ` Jakub Kicinski
2018-09-05 16:20 ` Samudrala, Sridhar
2018-09-05 16:47 ` Jakub Kicinski [this message]
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=20180905184713.4704c9ce@cakuba \
--to=jakub.kicinski@netronome.com \
--cc=alexander.duyck@gmail.com \
--cc=andy@greyhouse.net \
--cc=f.fainelli@gmail.com \
--cc=frederick.botha@netronome.com \
--cc=gerlitz.or@gmail.com \
--cc=jiri@resnulli.us \
--cc=mchan@broadcom.com \
--cc=netdev@vger.kernel.org \
--cc=nick.viljoen@netronome.com \
--cc=simon.horman@netronome.com \
--cc=sridhar.samudrala@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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