All of lore.kernel.org
 help / color / mirror / Atom feed
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(-)
>

  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.com \
    --cc=amirv@mellanox.com \
    --cc=davem@davemloft.net \
    --cc=j.vosburgh@gmail.com \
    --cc=jiri@resnulli.us \
    --cc=netdev@vger.kernel.org \
    --cc=roland@kernel.org \
    --cc=talal@mellanox.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 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.