From: John Fastabend <john.r.fastabend@intel.com>
To: Or Gerlitz <or.gerlitz@gmail.com>
Cc: davem@davemloft.net, roland@kernel.org, netdev@vger.kernel.org,
ali@mellanox.com, sean.hefty@intel.com, shlomop@mellanox.com
Subject: Re: [RFC PATCH] net: Add support for virtual machine device queues (VMDQ)
Date: Sun, 26 Aug 2012 12:09:22 -0700 [thread overview]
Message-ID: <503A7462.1030803@intel.com> (raw)
In-Reply-To: <CAJZOPZJBhDdQp2-8WG-UsToPHwyawYYVctqjZMT8JN85DK3XYQ@mail.gmail.com>
On 8/26/2012 6:11 AM, Or Gerlitz wrote:
> On Thu, Jul 19, 2012 at 1:05 AM, John Fastabend
> <john.r.fastabend@intel.com> wrote:
>> This adds support to allow virtual net devices to be created. These
>> devices can be managed independently of the physical function but
>> use the same physical link.
>>
>> This is analogous to an offloaded macvlan device. The primary
>> advantage to VMDQ net devices over virtual functions is they can
>> be added and removed dynamically as needed.
>
> Hi John,
>
> When VMDQ devices are opened over a virtual function which is
> assigned to guest, the design should include a way to apply the
> following ndo_set_vf_yyy calls to them
>
> int (*ndo_set_vf_mac)(struct net_device *dev, int vf, u8* mac);
> int (*ndo_set_vf_vlan)(struct net_device *dev, int vf, u16 vlan, u8 qos);
> int (*ndo_set_vf_tx_rate)(struct net_device *dev, int vf, int rate);
> int (*ndo_set_vf_spoofchk)(struct net_device *dev, int vf, bool setting);
>
>
> Someone here suggested using a sub-index notation, that is m.n
> represents vmdq device index = n on VF index = m where vf.0 is
> the non vmdq VF device, makes sense? other thoughts?
>
> Or.
>
That seems reasonable to me. Adding a 'sub' argument to the set
routines should do it. Also the 'get' routines would need to be
extended to report back these virtual net devices.
int (*ndo_set_vf_mac)(struct net_device *dev, int vf, int sub, u8* mac);
int (*ndo_set_vf_vlan)(struct net_device *dev,
int vf, int sub,
u16 vlan, u8 qos);
int (*ndo_set_vf_tx_rate)(struct net_device *dev,
int vf, int sub,
int rate);
int (*ndo_set_vf_spoofchk)(struct net_device *dev,
int vf, int sub,
bool setting);
int (*ndo_get_vf_config)(struct net_device *dev,
int vf, int sub,
struct fila_vf_info *ivf)
I would need to check if any of the ixgbe/igb supported hardware can
support virtual device queues on virtual functions like this but I
presume if your looking at this you have some hardware that can.
I was hoping to get back to this in September, of course if someone
beats me to it that would be great also.
.John
next prev parent reply other threads:[~2012-08-26 19:09 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-18 22:05 [RFC PATCH] net: Add support for virtual machine device queues (VMDQ) John Fastabend
2012-07-19 6:42 ` Jiri Pirko
2012-07-20 16:30 ` John Fastabend
2012-07-20 18:01 ` Ben Hutchings
2012-07-20 20:58 ` John Fastabend
2012-07-20 18:09 ` Ben Hutchings
2012-08-26 13:11 ` Or Gerlitz
2012-08-26 19:09 ` John Fastabend [this message]
2012-08-27 9:47 ` Or Gerlitz
2012-08-27 17:21 ` John Fastabend
2012-08-27 21:39 ` Or Gerlitz
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=503A7462.1030803@intel.com \
--to=john.r.fastabend@intel.com \
--cc=ali@mellanox.com \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=or.gerlitz@gmail.com \
--cc=roland@kernel.org \
--cc=sean.hefty@intel.com \
--cc=shlomop@mellanox.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.