netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Murali Karicheri <m-karicheri2@ti.com>
To: netdev <netdev@vger.kernel.org>, WingMan Kwok <w-kwok2@ti.com>
Subject: Question on Bonding driver
Date: Fri, 13 Feb 2015 12:11:50 -0500	[thread overview]
Message-ID: <54DE3056.6020606@ti.com> (raw)

Hi,

I am working to enable bonding driver on my hardware and trying to 
understand this.

I am using the alb mode. I create a bond interface with 2 ethernet 
interfaces. First one is the basic question about net driver itself and 
second is about bonding.

1. Each ethernet interface has a MAC address. The hardware has MAC 
filter and the driver fills the net_device's dev_addr with its MAC 
address before calling register_netdev() API. When the net core calls 
ndo_start(), is the low level driver responsible for setting up its MAC 
address in the MAC filter of the hardware or low level driver will be 
told to do so by upper layer. Or is it required to set it up as part of 
ndo_set_rx_mode() or ndo_set_mac_address()?

2. In the case of bonding, the bond interface MAC address is copied from 
the active slave's MAC address. Also it updates the dev_addr in the 
netdev struct of each of the slave with its own MAC address. So I 
assume, the device/NIC now needs to accept packets to its original MAC 
address as well the bond's MAC address. This is especially more 
important for the slave's that are not active slave as it can be target 
of packets from Peers as part of rlb. So for the slave that is not 
active slave, MAC filter needs to include its original hw address as 
well unless the slave is put to promiscuous mode. So I am trying to 
figure out how this is expected to work? All slaves put to promiscuous 
mode or MAC filter updated by slave driver to include MAC addresses it 
is expected to filter on (bond MAC address and its own MAC address)

-- 
Murali Karicheri
Linux Kernel, Texas Instruments

             reply	other threads:[~2015-02-13 17:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-13 17:11 Murali Karicheri [this message]
2015-02-14 16:25 ` Question on Bonding driver Jay Vosburgh
2015-02-20 16:59   ` Murali Karicheri

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=54DE3056.6020606@ti.com \
    --to=m-karicheri2@ti.com \
    --cc=netdev@vger.kernel.org \
    --cc=w-kwok2@ti.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).