public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Jamal Hadi Salim <jhs@mojatatu•com>
To: vyasevic@redhat•com, "netdev@vger•kernel.org" <netdev@vger•kernel.org>
Cc: Stephen Hemminger <stephen@networkplumber•org>,
	Scott Feldman <sfeldma@cumulusnetworks•com>,
	John Fastabend <john.r.fastabend@intel•com>
Subject: Re: RFC: bridge get fdb by bridge device
Date: Tue, 11 Feb 2014 12:07:53 -0500	[thread overview]
Message-ID: <52FA58E9.906@mojatatu.com> (raw)
In-Reply-To: <52F8FEF1.60407@redhat.com>

On 02/10/14 11:31, Vlad Yasevich wrote:
> On 02/09/2014 10:06 AM, Jamal Hadi Salim wrote:


>> +	ndm = nlmsg_data(cb->nlh);
>> +	if (ndm->ndm_ifindex) {
>
> We get really lucky here that ndm_ifindex and ifi_index happen to map to
> the same location.
>

Didnt follow - but I have a feeling you are looking at the reference
point of a bridge port.
Note as per my response to John: The target is a bridge device, not
a bridge port.



>
> I agree with both of Johns commens fro the above code.
> I think you can use ndo_dflt_fdb_dump() here and remove the first check
> for IFF_EBRIDGE.
>

Same comment i made to John. The goal is to emulate
brctl showmacs <bridge>
ndo_dflt_fdb_dump() gives me in theory all the bridge ports
unicast and multicast MAC addresses. There is a posibility that
the bridgeport is a bridge - in which case I can find out from
user space and safely request for it directly instead of via
its parent.

> The only odd thing is that it would permit syntax like:
>   # bridge fbd show br eth0
> or
>   # bridge fdb show br macvlan0
>
> but I think that's ok.

Ok, since both you and John point to macvlan - is that
considered as something with an fdb? It doesnt forward
packets between two devices.



>> diff --git a/bridge/fdb.c b/bridge/fdb.c
>> index e2e53f1..f3073d6 100644
>> --- a/bridge/fdb.c
>> +++ b/bridge/fdb.c
>> @@ -33,7 +33,7 @@ static void usage(void)
>>   	fprintf(stderr, "Usage: bridge fdb { add | append | del | replace }
> ADDR dev DEV {self|master} [ temp ]\n"
>>   		        "              [router] [ dst IPADDR] [ vlan VID ]\n"
>>   		        "              [ port PORT] [ vni VNI ] [via DEV]\n");
>> -	fprintf(stderr, "       bridge fdb {show} [ dev DEV ]\n");
>> +	fprintf(stderr, "       bridge fdb {show} [ br BRDEV ] [ dev DEV ]\n");
>
> 'port' option is now allowed in the show operation
>

Thanks - it is already taken seems by vxlan using the same interface.


cheers,
jamal

  reply	other threads:[~2014-02-11 17:07 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <52F21F72.2090405@mojatatu.com>
     [not found] ` <52F29747.7040008@redhat.com>
     [not found]   ` <52F3CF76.9090404@mojatatu.com>
     [not found]     ` <52F3E357.4040006@redhat.com>
2014-02-09 15:06       ` RFC: bridge get fdb by bridge device Jamal Hadi Salim
2014-02-09 19:33         ` John Fastabend
2014-02-11 17:03           ` Jamal Hadi Salim
2014-02-10 16:31         ` Vlad Yasevich
2014-02-11 17:07           ` Jamal Hadi Salim [this message]
2014-02-11 18:21             ` Vlad Yasevich
2014-02-11 20:15               ` Jamal Hadi Salim
2014-02-11 20:21                 ` John Fastabend
2014-02-11 20:30                 ` John Fastabend
2014-02-11 21:04                   ` Jamal Hadi Salim
2014-02-12 18:50                     ` John Fastabend
2014-02-13 12:50                       ` Jamal Hadi Salim
2014-02-13 15:37                       ` Jamal Hadi Salim
2014-02-13 16:03                         ` John Fastabend
2014-02-11 21:00                 ` Vlad Yasevich
2014-02-11 21:08                   ` Jamal Hadi Salim
2014-02-11 21:12                     ` Jamal Hadi Salim
2014-02-12 19:02                     ` Vlad Yasevich

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=52FA58E9.906@mojatatu.com \
    --to=jhs@mojatatu$(echo .)com \
    --cc=john.r.fastabend@intel$(echo .)com \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=sfeldma@cumulusnetworks$(echo .)com \
    --cc=stephen@networkplumber$(echo .)org \
    --cc=vyasevic@redhat$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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