From: Or Gerlitz <ogerlitz@mellanox•com>
To: "David S. Miller" <davem@davemloft•net>
Cc: <netdev@vger•kernel.org>, Roland Dreier <roland@kernel•org>,
Amir Vadai <amirv@mellanox•com>, Tal Alon <talal@mellanox•com>,
Jiri Pirko <jiri@resnulli•us>,
Jay Vosburgh <j.vosburgh@gmail•com>
Subject: Re: [PATCH 00/10] Add HA and LAG support to mlx4 RoCE and SRIOV services
Date: Tue, 3 Feb 2015 16:59:19 +0200 [thread overview]
Message-ID: <54D0E247.5010504@mellanox.com> (raw)
In-Reply-To: <1422974919-28084-1-git-send-email-ogerlitz@mellanox.com>
On 2/3/2015 4:48 PM, Or Gerlitz wrote:
> Hi Dave,
>
> This series takes advanges of bonding mlx4 Ethernet devices to support
> a model of High-Availability and Link Aggregation for more environments.
+Jay and Jiri, sorry for not adding you guys, guess you are subscribed...
>
> The mlx4 driver reacts on netdev events generated by bonding when
> slave state changes happen by programming a HW V2P (Virt-to-Phys)
> port table. Bonding was extended to expose these state changes
> through netdev events.
>
> When an mlx4 interface such as the mlx4 IB/RoCE driver is subject to
> this policy, QPs are created over virtual ports which are mapped
> to one of the two physical ports. When a failure happens, the
> re-programming of the V2P table allows traffic to keep flowing.
>
> The mlx4 Ethernet driver interfaces are not subject to this
> policy and act as usual.
>
> A 2nd use-case for this model would be to add HA and Link Aggregation
> support to single ported mlx4 Ethernet VFs. In this case, the PF Ethernet
> intrfaces are bonded, all the VFs see single port devices (which is
> supported already today), and VF QPs are subject to V2P.
>
> Moni and Or.
>
> Moni Shoua (10):
> net/core: Add event for a change in slave state
> net/bonding: Move slave state changes to a helper function
> net/bonding: Notify state change on slaves
> net/mlx4_core: Port aggregation low level interface
> net/mlx4_core: Port aggregation upper layer interface
> net/mlx4_en: Port aggregation configuration
> IB/mlx4: Reuse mlx4_mac_to_u64()
> IB/mlx4: Add port aggregation support
> IB/mlx4: Create mirror flows in port aggregation mode
> IB/mlx4: Load balance ports in port aggregation mode
>
> drivers/infiniband/hw/mlx4/ah.c | 1 +
> drivers/infiniband/hw/mlx4/main.c | 161 ++++++++++++++++--
> drivers/infiniband/hw/mlx4/mlx4_ib.h | 17 ++-
> drivers/infiniband/hw/mlx4/qp.c | 31 +++--
> drivers/net/bonding/bond_main.c | 106 +++++++++---
> drivers/net/ethernet/mellanox/mlx4/cmd.c | 9 +
> drivers/net/ethernet/mellanox/mlx4/en_main.c | 8 +
> drivers/net/ethernet/mellanox/mlx4/en_netdev.c | 176 ++++++++++++++++++++
> drivers/net/ethernet/mellanox/mlx4/en_resources.c | 8 +-
> drivers/net/ethernet/mellanox/mlx4/fw.c | 56 ++++++-
> drivers/net/ethernet/mellanox/mlx4/intf.c | 54 ++++++
> drivers/net/ethernet/mellanox/mlx4/main.c | 89 ++++++++++
> drivers/net/ethernet/mellanox/mlx4/mlx4.h | 3 +
> drivers/net/ethernet/mellanox/mlx4/mlx4_en.h | 5 +
> drivers/net/ethernet/mellanox/mlx4/qp.c | 2 +
> .../net/ethernet/mellanox/mlx4/resource_tracker.c | 3 +
> include/linux/mlx4/cmd.h | 7 +
> include/linux/mlx4/device.h | 11 +-
> include/linux/mlx4/driver.h | 19 ++
> include/linux/mlx4/qp.h | 1 +
> include/linux/netdevice.h | 15 ++
> include/net/bonding.h | 17 ++
> net/core/dev.c | 20 +++
> net/core/rtnetlink.c | 1 +
> 24 files changed, 756 insertions(+), 64 deletions(-)
>
next prev parent reply other threads:[~2015-02-03 15:03 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-03 14:48 [PATCH 00/10] Add HA and LAG support to mlx4 RoCE and SRIOV services Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 01/10] net/core: Add event for a change in slave state Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 02/10] net/bonding: Move slave state changes to a helper function Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 03/10] net/bonding: Notify state change on slaves Or Gerlitz
2015-02-03 16:09 ` Nikolay Aleksandrov
2015-02-03 17:17 ` Moni Shoua
2015-02-03 14:48 ` [PATCH net-next 04/10] net/mlx4_core: Port aggregation low level interface Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 05/10] net/mlx4_core: Port aggregation upper layer interface Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 06/10] net/mlx4_en: Port aggregation configuration Or Gerlitz
2015-02-03 14:48 ` [PATCH 07/10] IB/mlx4: reuse mlx4_mac_to_u64() Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 07/10] IB/mlx4: Reuse mlx4_mac_to_u64() Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 08/10] IB/mlx4: Add port aggregation support Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 09/10] IB/mlx4: Create mirror flows in port aggregation mode Or Gerlitz
2015-02-03 14:48 ` [PATCH net-next 10/10] IB/mlx4: Load balance ports " Or Gerlitz
2015-02-03 14:59 ` Or Gerlitz [this message]
2015-02-05 0:14 ` [PATCH 00/10] Add HA and LAG support to mlx4 RoCE and SRIOV services David Miller
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=54D0E247.5010504@mellanox.com \
--to=ogerlitz@mellanox$(echo .)com \
--cc=amirv@mellanox$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=j.vosburgh@gmail$(echo .)com \
--cc=jiri@resnulli$(echo .)us \
--cc=netdev@vger$(echo .)kernel.org \
--cc=roland@kernel$(echo .)org \
--cc=talal@mellanox$(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