From: John Fastabend <john.r.fastabend@intel.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: kvm@vger.kernel.org, netdev@vger.kernel.org,
qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org,
David Miller <davem@davemloft.net>
Subject: Re: [RFC PATCH 0/2] make mac programming for virtio net more robust
Date: Fri, 11 Jan 2013 06:52:51 -0800 [thread overview]
Message-ID: <50F02743.2080404@intel.com> (raw)
In-Reply-To: <20130111074624.GB13315@redhat.com>
On 1/10/2013 11:46 PM, Michael S. Tsirkin wrote:
> On Fri, Jan 11, 2013 at 12:53:07PM +1030, Rusty Russell wrote:
>> "Michael S. Tsirkin" <mst@redhat.com> writes:
>>
>>> On Thu, Jan 10, 2013 at 10:45:39PM +0800, akong@redhat.com wrote:
>>>> From: Amos Kong <akong@redhat.com>
>>>>
>>>> Currenly mac is programmed byte by byte. This means that we
>>>> have an intermediate step where mac is wrong.
>>>>
>>>> Second patch introduced a new vq control command to set mac
>>>> address in one time.
>>>
>>> As you mention we could alternatively do it without
>>> new commands, simply add a feature bit that says that MACs are
>>> in the mac table.
>>> This would be a much bigger patch, and I'm fine with either way.
>>> Rusty what do you think?
>>
>> Hmm, mac filtering and "my mac address" are not quite the same thing. I
>> don't know if it matters for anyone: does it?
>> The mac address is abused
>> for things like identifying machines, etc.
>
> I don't know either. I think net core differentiates between mac and
> uc_list because linux has to know which mac to use when building
> up packets, so at some level, I agree it might be useful to identify the
> machine.
>
> BTW netdev/davem should have been copied on this, Amos I think it's a
> good idea to remember to do it next time you post.
>
>>
>> If we keep it as a separate concept, Amos' patch seems to make sense.
>
> Yes. It also keeps the patch small, I just thought I'd mention the
> option.
>
>>
>> Cheers,
>> Rusty.
>
Don't have the entire context here but if you implement the
ndo_fdb_dump() probably hooking it up to ndo_dflt_fdb_dump() you could
use the 'bridge' tool dump the uc_list.
Then use ndo_fdb_add() and ndo_fdb_del() to add and remove entries
from the uc_list. We do this today in macvlan and the ixgbe driver when
it is in SR-IOV mode and the embedded switch needs to be programmed.
fdb is "forwarding database" its a bit different then mac filtering
in that its telling the "switch" how to forward mac addresses, in
ixgbe and macvlan at least we have been overloading it a bit to also
stop filtering the mac address. I think this makes sense if you setup
forwarding to a port it doesn't make much sense to then drop them.
Maybe its not entirely applicable here just thought I would mention it.
Thanks,
John
WARNING: multiple messages have this Message-ID (diff)
From: John Fastabend <john.r.fastabend@intel.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: kvm@vger.kernel.org, netdev@vger.kernel.org,
Rusty Russell <rusty@rustcorp.com.au>,
qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org,
akong@redhat.com, David Miller <davem@davemloft.net>
Subject: Re: [Qemu-devel] [RFC PATCH 0/2] make mac programming for virtio net more robust
Date: Fri, 11 Jan 2013 06:52:51 -0800 [thread overview]
Message-ID: <50F02743.2080404@intel.com> (raw)
In-Reply-To: <20130111074624.GB13315@redhat.com>
On 1/10/2013 11:46 PM, Michael S. Tsirkin wrote:
> On Fri, Jan 11, 2013 at 12:53:07PM +1030, Rusty Russell wrote:
>> "Michael S. Tsirkin" <mst@redhat.com> writes:
>>
>>> On Thu, Jan 10, 2013 at 10:45:39PM +0800, akong@redhat.com wrote:
>>>> From: Amos Kong <akong@redhat.com>
>>>>
>>>> Currenly mac is programmed byte by byte. This means that we
>>>> have an intermediate step where mac is wrong.
>>>>
>>>> Second patch introduced a new vq control command to set mac
>>>> address in one time.
>>>
>>> As you mention we could alternatively do it without
>>> new commands, simply add a feature bit that says that MACs are
>>> in the mac table.
>>> This would be a much bigger patch, and I'm fine with either way.
>>> Rusty what do you think?
>>
>> Hmm, mac filtering and "my mac address" are not quite the same thing. I
>> don't know if it matters for anyone: does it?
>> The mac address is abused
>> for things like identifying machines, etc.
>
> I don't know either. I think net core differentiates between mac and
> uc_list because linux has to know which mac to use when building
> up packets, so at some level, I agree it might be useful to identify the
> machine.
>
> BTW netdev/davem should have been copied on this, Amos I think it's a
> good idea to remember to do it next time you post.
>
>>
>> If we keep it as a separate concept, Amos' patch seems to make sense.
>
> Yes. It also keeps the patch small, I just thought I'd mention the
> option.
>
>>
>> Cheers,
>> Rusty.
>
Don't have the entire context here but if you implement the
ndo_fdb_dump() probably hooking it up to ndo_dflt_fdb_dump() you could
use the 'bridge' tool dump the uc_list.
Then use ndo_fdb_add() and ndo_fdb_del() to add and remove entries
from the uc_list. We do this today in macvlan and the ixgbe driver when
it is in SR-IOV mode and the embedded switch needs to be programmed.
fdb is "forwarding database" its a bit different then mac filtering
in that its telling the "switch" how to forward mac addresses, in
ixgbe and macvlan at least we have been overloading it a bit to also
stop filtering the mac address. I think this makes sense if you setup
forwarding to a port it doesn't make much sense to then drop them.
Maybe its not entirely applicable here just thought I would mention it.
Thanks,
John
next prev parent reply other threads:[~2013-01-11 14:52 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-10 14:45 [RFC PATCH 0/2] make mac programming for virtio net more robust akong
2013-01-10 14:45 ` [Qemu-devel] " akong
2013-01-10 14:45 ` [RFC PATCH 1/2] move virtnet_send_command() above virtnet_set_mac_address() akong
2013-01-10 14:45 ` [Qemu-devel] " akong
2013-01-10 14:51 ` Jason Wang
2013-01-10 14:51 ` [Qemu-devel] " Jason Wang
2013-01-10 15:02 ` Michael S. Tsirkin
2013-01-10 15:02 ` [Qemu-devel] " Michael S. Tsirkin
2013-01-10 14:45 ` [RFC PATCH 2/2] virtio-net: introduce a new control to set macaddr akong
2013-01-10 14:45 ` akong
2013-01-10 14:45 ` [Qemu-devel] " akong
2013-01-10 14:57 ` Jason Wang
2013-01-10 14:57 ` Jason Wang
2013-01-16 5:23 ` Amos Kong
2013-01-16 5:23 ` Amos Kong
2013-01-16 9:17 ` Michael S. Tsirkin
2013-01-16 9:17 ` Michael S. Tsirkin
2013-01-10 15:26 ` Michael S. Tsirkin
2013-01-10 15:26 ` [Qemu-devel] " Michael S. Tsirkin
2013-01-11 0:43 ` Rusty Russell
2013-01-11 0:43 ` [Qemu-devel] " Rusty Russell
2013-01-11 0:43 ` Rusty Russell
2013-01-10 14:51 ` [RFC PATCH] virtio-net: introduce a new macaddr control akong
2013-01-10 14:51 ` [Qemu-devel] " akong
2013-01-11 9:50 ` Stefan Hajnoczi
2013-01-11 9:50 ` [Qemu-devel] " Stefan Hajnoczi
2013-01-10 15:08 ` [RFC PATCH 0/2] make mac programming for virtio net more robust Amos Kong
2013-01-10 15:08 ` [Qemu-devel] " Amos Kong
2013-01-10 15:28 ` Michael S. Tsirkin
2013-01-10 15:28 ` [Qemu-devel] " Michael S. Tsirkin
2013-01-11 2:23 ` Rusty Russell
2013-01-11 2:23 ` [Qemu-devel] " Rusty Russell
2013-01-11 7:46 ` Michael S. Tsirkin
2013-01-11 7:46 ` Michael S. Tsirkin
2013-01-11 7:46 ` [Qemu-devel] " Michael S. Tsirkin
2013-01-11 14:52 ` John Fastabend [this message]
2013-01-11 14:52 ` John Fastabend
2013-01-11 2:23 ` Rusty Russell
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=50F02743.2080404@intel.com \
--to=john.r.fastabend@intel.com \
--cc=davem@davemloft.net \
--cc=kvm@vger.kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
--cc=virtualization@lists.linux-foundation.org \
/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.