From: Chris Wright <chrisw@redhat.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Chris Wright <chrisw@redhat.com>,
Scott Feldman <scofeldm@cisco.com>,
davem@davemloft.net, netdev@vger.kernel.org
Subject: Re: [net-next,1/2] add iovnl netlink support
Date: Wed, 21 Apr 2010 11:10:21 -0700 [thread overview]
Message-ID: <20100421181021.GC25928@x200.localdomain> (raw)
In-Reply-To: <201004211952.29145.arnd@arndb.de>
* Arnd Bergmann (arnd@arndb.de) wrote:
> On Wednesday 21 April 2010, Chris Wright wrote:
> > * Arnd Bergmann (arnd@arndb.de) wrote:
> > > Since it seems what you really want to do is to do the exchange with the
> > > switch from here, maybe the hardware configuration part should be moved
> > > the DCB interface?
> >
> > I suppose this would work (although it's a bit odd being out of scope
> > of DCB spec).
>
> It could be anywhere, it doesn't have to be the DCB interface, but could
> be anything ranging from ethtool to iplink I guess. And we should define
> it in a way that works for any SR-IOV card, whether it's using Cisco's
> protocol in firmware, 802.1Qbg VDP in firmware, lldpad to do VDP or
> none of the above and just provides an internal switch like all the
> existing NICs.
Heh, that's exactly what iovnl does ;-)
> > I don't expect mgmt app to care about the implementation
> > specifics of an adapter, so it will always send this and iovnl message
> > too. All as part of same setup.
>
> Why? I really see these things as separate. Obviously a management
> tool like libvirt would need to do both these things eventually, but
> each of them has multiple options that can be combined in various
> ways:
>
> 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.
> 2) Registering the slave with the switch
> a) use Cisco protocol in enic firmware (see patch 2/2)
> b) use standard VDP in lldpad
> c) use reverse-engineered cisco protocol in some user tool for
> non-enic adapters.
> d) use standard VDP in firmware (hopefully this never happens)
> e) do nothing at all (as we do today)
And this is the step that is the main purpose of iovnl.
Here's the simplest snippet of libvirt to show this. It sends
set_port_profile netlink messages and then creates macvtap. As simple
as it gets...
--- a/src/qemu/qemu_conf.c
+++ b/src/qemu/qemu_conf.c
@@ -1470,6 +1470,11 @@ qemudPhysIfaceConnect(virConnectPtr conn,
net->model && STREQ(net->model, "virtio"))
vnet_hdr = 1;
+ setPortProfileId(net->data.direct.linkdev,
+ net->data.direct.mode,
+ net->data.direct.profileid,
+ net->mac);
+
rc = openMacvtapTap(net->ifname, net->mac, linkdev, brmode,
&res_ifname, vnet_hdr);
next prev parent reply other threads:[~2010-04-21 18:10 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 [this message]
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
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=20100421181021.GC25928@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;
as well as URLs for NNTP newsgroup(s).