[RFC PATCH 0/4] Introduce master_xmit_slave_get

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

This patch series add support to get the LAG master xmit slave by
introducing new .ndo - ndo_xmit_slave_get. Every LAG module can
implement it. In this RFC, we added the support to the bond module.

The main motivation for doing this is for drivers that offload part
of the LAG functionality [1]. For example, Mellanox Connect-X hardware
implements RoCE LAG which selects the TX affinity when the resources
are created and port is remapped when it goes down [2].

Because of that and the fact that the RDMA frames are bypass the bonding
driver completely, we need a function to get the xmit slave assume
all the slaves are active.

The idea is that the same UDP header will get the same hash result so
they will be transmitted from the same port.


Thanks

[1] https://www.spinics.net/lists/netdev/msg624832.html
[2] https://www.spinics.net/lists/netdev/msg626758.html

Maor Gottlieb (4):
  net/core: Introduce master_xmit_slave_get
  bonding: Rename slave_arr to active_slaves
  bonding: Add helpers to get xmit slave
  bonding: Implement ndo_xmit_slave_get

 drivers/net/bonding/bond_alb.c  |  41 ++++--
 drivers/net/bonding/bond_main.c | 231 ++++++++++++++++++++++----------
 include/linux/netdevice.h       |   3 +
 include/net/bond_alb.h          |   4 +
 include/net/bonding.h           |   3 +-
 include/net/lag.h               |  19 +++
 6 files changed, 215 insertions(+), 86 deletions(-)

-- 
2.17.2




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux