From: Ben Hutchings <bhutchings@solarflare.com>
To: Chris Wright <chrisw@redhat.com>
Cc: Greg Rose <gregory.v.rose@intel.com>,
Roopa Prabhu <roprabhu@cisco.com>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"davem@davemloft.net" <davem@davemloft.net>,
"sri@us.ibm.com" <sri@us.ibm.com>,
"dragos.tatulea@gmail.com" <dragos.tatulea@gmail.com>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"arnd@arndb.de" <arnd@arndb.de>,
"mst@redhat.com" <mst@redhat.com>,
"mchan@broadcom.com" <mchan@broadcom.com>,
"dwang2@cisco.com" <dwang2@cisco.com>,
"shemminger@vyatta.com" <shemminger@vyatta.com>,
"eric.dumazet@gmail.com" <eric.dumazet@gmail.com>,
"kaber@trash.net" <kaber@trash.net>,
"benve@cisco.com" <benve@cisco.com>
Subject: Re: [net-next-2.6 PATCH 0/6 v4] macvlan: MAC Address filtering support for passthru mode
Date: Wed, 30 Nov 2011 21:34:03 +0000 [thread overview]
Message-ID: <1322688843.2762.45.camel@bwh-desktop> (raw)
In-Reply-To: <20111130210454.GC29071@x200.localdomain>
On Wed, 2011-11-30 at 13:04 -0800, Chris Wright wrote:
> * Ben Hutchings (bhutchings@solarflare.com) wrote:
> > On Wed, 2011-11-30 at 09:34 -0800, Greg Rose wrote:
> > > On 11/29/2011 9:19 AM, Ben Hutchings wrote:
> > > > On Tue, 2011-11-29 at 16:35 +0000, Ben Hutchings wrote:
> > > >>
> > > >> Maybe I missed something!
> > [...]
> > > >> If not, please explain what the new model *is*.
> > >
> > > The new model is to incorporate a VEB into the NIC. The current model
> > > doesn't address any of the requirements of a VEB in the NIC and this
> > > proposed set of patches allow us to set MAC filters for the *ports* on
> > > the internal NIC VEB. Consider the PF and each of the VFs as just a
> > > port on the VEB. We need the ability to set L2 filters (MAC, MC and
> > > VLAN) for each of the ports on that VEB. There is no currently
> > > supported method for doing this. So yes, this is a new model although
> > > it's a fairly simple one.
> >
> > Explain precisely how the VEB changes the existing model. Explain how
> > the existing MAC filter and VF filter APIs interact with port filters on
> > the VEB. Refer to any relevant standards.
>
> I agree that it's confusing. Couldn't you simplify your ascii art
> (hopefully removing hw assumptions about receive processing, and
> completely ignoring vlans for the moment) to something like:
>
> |RX
> v
> +------------+-------------+
> | +------+--------+ |
> | | RX MAC filter | |
> | |and port select| |
> | +---------------+ |
> | /|\ |
> | / | \ match 2|
> | / v \ |
> | /match \ |
> | / 1 | \ |
> | / | \ |
> |match / | \ |
> | 0 / | \ |
> | v | v |
> | | | | |
> +----+--------+--------+---+
> | | |
> PF VF 1 VF 2
>
> And there's an unclear number of ways to update "RX MAC filter and port
> select" table.
>
> 1) PF ndo_set_mac_addr
> I expect that to be implicit to match 0.
>
> 2) PF ndo_set_rx_mode
> Less clear, but I'd still expect these to implicitly match 0
>
> 3) PF ndo_set_vf_mac
> I expect these to be an explicit match to VF N (given the interface
> specifices which VF's MAC is being programmed).
I'm not sure whether this is supposed to implicitly add to the MAC
filter or whether that has to be changed too. That's the main
difference between my models (a) and (b).
There's also PF ndo_set_vf_vlan.
> 4) VF ndo_set_mac_addr
> This one may or may not be allowed (setting MAC+port if the VF is owned
> by a guest is likely not allowed), but would expect an implicit VF N.
>
> 5) VF ndo_set_rx_mode
> Same as 4) above.
So this is where we are today.
> 6) PF or VF? ndo_set_rx_filter_addr
> The new proposal, which has an explicit VF, although when it's VF_SELF
> I'm not clear if this is just the same as 5) above?
>
> Have I missed anything?
Any physical port can be bridged to a mixture of guests with and without
their own VFs. Packets sent from a guest with a VF to the address of a
guest without a VF need to be forwarded to the PF rather than the
physical port, but none of the drivers currently get to know about those
addresses.
Packets sent from a guest with a VF to the address of another guest with
a VF need to be forwarded similarly, but the driver should be able to
infer that from (3).
Ben.
--
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
next prev parent reply other threads:[~2011-11-30 21:34 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-09 7:55 [net-next-2.6 PATCH 0/6 v4] macvlan: MAC Address filtering support for passthru mode Roopa Prabhu
2011-11-09 7:55 ` [net-next-2.6 PATCH 1/6 v4] rtnetlink: Netlink interface for setting MAC and VLAN filters Roopa Prabhu
2011-11-18 0:17 ` Ben Hutchings
2011-11-09 7:55 ` [net-next-2.6 PATCH 2/6 v4] net: Add netdev_ops to set and get MAC/VLAN rx filters Roopa Prabhu
2011-11-09 7:55 ` [net-next-2.6 PATCH 3/6 v4] rtnetlink: Add support to set MAC/VLAN filters Roopa Prabhu
2011-11-09 7:55 ` [net-next-2.6 PATCH 4/6 v4] rtnetlink: Add support to get " Roopa Prabhu
2011-11-09 7:56 ` [net-next-2.6 PATCH 5/6 v4] macvlan: Add support to for netdev ops to set " Roopa Prabhu
2011-11-09 7:56 ` [net-next-2.6 PATCH 6/6 v4] macvlan: Add support to get MAC/VLAN filter netdev ops Roopa Prabhu
2011-11-18 0:15 ` [net-next-2.6 PATCH 0/6 v4] macvlan: MAC Address filtering support for passthru mode Ben Hutchings
2011-11-18 0:32 ` Greg Rose
2011-11-18 0:44 ` Ben Hutchings
2011-11-18 16:58 ` Greg Rose
2011-11-18 17:40 ` Ben Hutchings
2011-11-21 17:41 ` Greg Rose
2011-11-29 16:35 ` Ben Hutchings
2011-11-29 17:19 ` Ben Hutchings
2011-11-30 17:34 ` Greg Rose
2011-11-30 18:48 ` Ben Hutchings
2011-11-30 21:04 ` Chris Wright
2011-11-30 21:34 ` Ben Hutchings [this message]
2011-11-30 23:00 ` Chris Wright
2011-11-30 23:19 ` Rose, Gregory V
2011-11-30 23:30 ` Sridhar Samudrala
2011-11-30 23:39 ` Chris Wright
2011-11-20 16:30 ` Roopa Prabhu
2012-02-02 7:24 ` Michael S. Tsirkin
2012-02-02 8:46 ` John Fastabend
2012-02-02 8:50 ` Michael S. Tsirkin
2012-02-02 9:04 ` John Fastabend
2012-02-02 18:07 ` Roopa Prabhu
2012-02-02 18:58 ` John Fastabend
2012-02-03 15:32 ` Roopa Prabhu
2012-02-05 16:54 ` Roopa Prabhu
2012-02-09 2:03 ` John Fastabend
2012-02-02 20:38 ` Ben Hutchings
2012-02-02 21:18 ` John Fastabend
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=1322688843.2762.45.camel@bwh-desktop \
--to=bhutchings@solarflare.com \
--cc=arnd@arndb.de \
--cc=benve@cisco.com \
--cc=chrisw@redhat.com \
--cc=davem@davemloft.net \
--cc=dragos.tatulea@gmail.com \
--cc=dwang2@cisco.com \
--cc=eric.dumazet@gmail.com \
--cc=gregory.v.rose@intel.com \
--cc=kaber@trash.net \
--cc=kvm@vger.kernel.org \
--cc=mchan@broadcom.com \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=roprabhu@cisco.com \
--cc=shemminger@vyatta.com \
--cc=sri@us.ibm.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).