From: Chris Wright <chrisw@redhat.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Scott Feldman <scofeldm@cisco.com>,
Chris Wright <chrisw@redhat.com>,
davem@davemloft.net, netdev@vger.kernel.org
Subject: Re: [net-next,1/2] add iovnl netlink support
Date: Wed, 21 Apr 2010 15:48:02 -0700 [thread overview]
Message-ID: <20100421224802.GF28829@x200.localdomain> (raw)
In-Reply-To: <201004212313.05060.arnd@arndb.de>
* Arnd Bergmann (arnd@arndb.de) wrote:
> On Wednesday 21 April 2010, Scott Feldman wrote:
> > On 4/21/10 12:39 PM, "Arnd Bergmann" <arnd@arndb.de> wrote:
> >
> > >>> 1. Setting up the slave device
> > >>> a) create an SR-IOV VF to assign to a guest
> > >>> b) create a macvtap device to pass to qemu or vhost
> > >>> c) attach a tap device to a bridge
> > >>> d) create a macvlan device and put it into a container
> > >>> e) create a virtual interface for a VMDq adapter
> > >>
> > >> OK, but iovnl isn't doing this.
> > >
> > > The set_mac_vlan that Scott's patch adds seems to implement 1a), as far
> > > as I can tell. Interestingly, this is not actually implemented in
> > > the enic driver in patch 2/2. So if we all agree that this is out of the
> > > scope of iovnl, let's just remove it from the interface and find another
> > > way for it (ethtool, iplink, ..., as listed above).
> >
> > You're right, not needed for enic since mac addr is included with
> > port-profile push and vlan membership is implied by port-profile. So I put
> > set_mac_vlan in there basically to elicit feedback.
>
> Ok. Two points though:
>
> - when you say that the mac address is included in the port-profile push,
> does that imply that the VF does not have a mac address prior to this?
> This would again mix the NIC configuration phase with the switch
> association, which I think we really need to avoid if we want to be
> able to implement the association in user space!
>
> - The VLAN ID being implied in the port profile seems to be another
> difference between what enic is doing and the current draft VDP
> that will eventually become 802.1Qbg, and I fear that this difference
> will be visible in the iovnl protocol.
>
> > There really wouldn't be much different between iplink and iovnl since
> > they're both rtnetlink...seems we should keep IOV-related APIs in one place.
> > Maybe there are other IOV APIs to add to iovnl in the future like:
> >
> > vf <- add_vf(pf)
> > del_vf(pf, vf)
> >
> > Ethtool doesn't seem the right place for this.
>
> Right. My preference would probably be make these a subcategory of
> the if_link, and use the existing RTM_NEWLINK/RTM_DELLINK commands.
> This would make it resemble the existing interfaces and mean you can
> use
>
> ip link add link eth0 type macvlan # for a container
> ip link add link eth0 type macvtap # for qemu/vhost
> ip link add link eth0 type vf # for device assignment
BTW, what do you mean by device assignment?
> There are obviously significant differences between these three, but
> they also share enough of their properties to let us treat them
> in similar ways.
>
> If we integrate the iovnl client into iproute2, the sequence for setting
> up an enic VF and associating it to the port profile could be
>
> # create vf0, pass mac and vlan id to HW, no association yet
> ip link add link eth0 name vf0 type vf mac fe:dc:ba:12:34:56 vlan 78
Just to clarify...right now, the normal SR-IOV VF is already there.
And, or course, can have its mac addr/vlan set already.
> # associate vf with port profile, mac address must match the one assigned
> # to the interface before.
> ip iov assoc eth0 port-profile "general" host-uuid "dcf2a873-f5ee-41dd-a7ad-802a544e48c2" \
> mac fe:dc:ba:12:34:56
At that point you could just do s/mac fe:.*/link vf0/
thanks,
-chris
next prev parent reply other threads:[~2010-04-21 22:48 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-19 19:18 [net-next PATCH 0/2] iovnl netlink ops + enic dynamic vnics Scott Feldman
2010-04-19 19:18 ` [net-next PATCH 1/2] add iovnl netlink support Scott Feldman
2010-04-20 13:48 ` [net-next,1/2] " Arnd Bergmann
2010-04-20 14:34 ` Chris Wright
2010-04-20 14:57 ` Arnd Bergmann
2010-04-20 15:22 ` Chris Wright
2010-04-20 16:19 ` Arnd Bergmann
2010-04-20 20:26 ` Scott Feldman
2010-04-21 13:17 ` Arnd Bergmann
2010-04-21 16:28 ` Scott Feldman
2010-04-21 18:04 ` Arnd Bergmann
2010-04-20 19:56 ` Scott Feldman
2010-04-21 11:26 ` Arnd Bergmann
2010-04-21 11:42 ` Selective MD5 Checksum Failuers Bijay Singh
2010-04-21 16:18 ` [net-next,1/2] add iovnl netlink support Chris Wright
2010-04-21 17:52 ` Arnd Bergmann
2010-04-21 18:10 ` Chris Wright
2010-04-21 19:39 ` Arnd Bergmann
2010-04-21 20:25 ` Scott Feldman
2010-04-21 21:13 ` Arnd Bergmann
2010-04-21 22:48 ` Chris Wright [this message]
2010-04-22 6:51 ` Arnd Bergmann
2010-04-22 17:47 ` Chris Wright
2010-04-22 18:48 ` Arnd Bergmann
2010-04-22 19:02 ` Chris Wright
2010-04-22 19:36 ` Arnd Bergmann
2010-04-22 21:03 ` Chris Wright
2010-04-21 23:54 ` Scott Feldman
2010-04-22 12:49 ` Arnd Bergmann
2010-04-22 7:09 ` David Miller
2010-04-21 22:18 ` Chris Wright
2010-04-22 0:01 ` Scott Feldman
2010-04-21 21:22 ` Arnd Bergmann
2010-04-22 6:48 ` [net-next PATCH 1/2] " David Miller
2010-04-22 21:23 ` Scott Feldman
2010-04-22 23:04 ` David Miller
2010-04-22 23:16 ` eSwitch management Anirban Chakraborty
2010-04-23 0:47 ` Scott Feldman
2010-04-23 1:29 ` Scott Feldman
2010-04-23 5:57 ` Anirban Chakraborty
2010-04-23 12:42 ` Arnd Bergmann
2010-04-23 16:23 ` Chris Wright
2010-04-23 19:00 ` Anirban Chakraborty
2010-04-23 19:44 ` Chris Wright
2010-04-23 21:08 ` Anirban Chakraborty
2010-04-23 23:04 ` Chris Wright
2010-04-24 6:21 ` Anirban Chakraborty
2010-04-22 6:52 ` [net-next PATCH 1/2] add iovnl netlink support David Miller
2010-04-22 10:53 ` Arnd Bergmann
2010-04-22 10:56 ` David Miller
2010-04-22 11:12 ` Arnd Bergmann
2010-04-19 19:18 ` [net-next PATCH 2/2] add enic iovnl ops for dynamic vnics Scott Feldman
2010-04-19 21:35 ` [net-next PATCH 0/2] iovnl netlink ops + enic " Chris Wright
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=20100421224802.GF28829@x200.localdomain \
--to=chrisw@redhat.com \
--cc=arnd@arndb.de \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=scofeldm@cisco.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