All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net 0/3] mlx4 fixes
@ 2014-03-12 15:16 Or Gerlitz
  2014-03-12 15:16 ` [PATCH net 1/3] net/mlx4_core: Fix wrong dump of the vxlan offloads device capability Or Gerlitz
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Or Gerlitz @ 2014-03-12 15:16 UTC (permalink / raw)
  To: davem; +Cc: netdev, amirv, Or Gerlitz

Hi Dave,

These short series fixes two bugs related to the vxlan support and 
a missing req module call for the IB driver which is needed to support 
IB/RDMA over Ethernet.

Pathes done over the net tree, commit dd38743 "vlan: Set correct source MAC address 
with TX VLAN offload enabled"

Or.

Or Gerlitz (3):
  net/mlx4_core: Fix wrong dump of the vxlan offloads device capability
  net/mlx4_en: Handle vxlan steering rules for mac address changes
  net/mlx4_core: Load the IB driver when the device supports IBoE

 drivers/net/ethernet/mellanox/mlx4/en_netdev.c |    8 ++++++++
 drivers/net/ethernet/mellanox/mlx4/fw.c        |    5 +++--
 drivers/net/ethernet/mellanox/mlx4/main.c      |    2 +-
 3 files changed, 12 insertions(+), 3 deletions(-)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH net 1/3] net/mlx4_core: Fix wrong dump of the vxlan offloads device capability
  2014-03-12 15:16 [PATCH net 0/3] mlx4 fixes Or Gerlitz
@ 2014-03-12 15:16 ` Or Gerlitz
  2014-03-12 15:16 ` [PATCH net 2/3] net/mlx4_en: Handle vxlan steering rules for mac address changes Or Gerlitz
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Or Gerlitz @ 2014-03-12 15:16 UTC (permalink / raw)
  To: davem; +Cc: netdev, amirv, Or Gerlitz

Fix the value used to dump the vxlan offloads device capability to align
with the MLX4_DEV_CAP_FLAG2_yyy definition. While on that, add dump to
the IPoIB flow-steering device capability and fix small typo.

The vxlan cap value wasn't fully handled when a conflict was resolved
between MLX4_DEV_CAP_FLAG2_DMFS_IPOIB coming from the IB tree to
MLX4_DEV_CAP_FLAG2_VXLAN_OFFLOADS coming from net-next.

Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
---
 drivers/net/ethernet/mellanox/mlx4/fw.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx4/fw.c b/drivers/net/ethernet/mellanox/mlx4/fw.c
index 8726e34..7e2995e 100644
--- a/drivers/net/ethernet/mellanox/mlx4/fw.c
+++ b/drivers/net/ethernet/mellanox/mlx4/fw.c
@@ -129,13 +129,14 @@ static void dump_dev_cap_flags2(struct mlx4_dev *dev, u64 flags)
 		[0] = "RSS support",
 		[1] = "RSS Toeplitz Hash Function support",
 		[2] = "RSS XOR Hash Function support",
-		[3] = "Device manage flow steering support",
+		[3] = "Device managed flow steering support",
 		[4] = "Automatic MAC reassignment support",
 		[5] = "Time stamping support",
 		[6] = "VST (control vlan insertion/stripping) support",
 		[7] = "FSM (MAC anti-spoofing) support",
 		[8] = "Dynamic QP updates support",
-		[9] = "TCP/IP offloads/flow-steering for VXLAN support"
+		[9] = "Device managed flow steering IPoIB support",
+		[10] = "TCP/IP offloads/flow-steering for VXLAN support"
 	};
 	int i;
 
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH net 2/3] net/mlx4_en: Handle vxlan steering rules for mac address changes
  2014-03-12 15:16 [PATCH net 0/3] mlx4 fixes Or Gerlitz
  2014-03-12 15:16 ` [PATCH net 1/3] net/mlx4_core: Fix wrong dump of the vxlan offloads device capability Or Gerlitz
@ 2014-03-12 15:16 ` Or Gerlitz
  2014-03-12 15:16 ` [PATCH net 3/3] net/mlx4_core: Load the IB driver when the device supports IBoE Or Gerlitz
  2014-03-12 20:14 ` [PATCH net 0/3] mlx4 fixes David Miller
  3 siblings, 0 replies; 7+ messages in thread
From: Or Gerlitz @ 2014-03-12 15:16 UTC (permalink / raw)
  To: davem; +Cc: netdev, amirv, Or Gerlitz

When the device mac address is changed, we must deregister the vxlan
steering rule associated with the previous mac, and register a new
steering rule using the new mac.

Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
---
 drivers/net/ethernet/mellanox/mlx4/en_netdev.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
index fad4531..ba21261 100644
--- a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
+++ b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
@@ -742,6 +742,14 @@ static int mlx4_en_replace_mac(struct mlx4_en_priv *priv, int qpn,
 				err = mlx4_en_uc_steer_add(priv, new_mac,
 							   &qpn,
 							   &entry->reg_id);
+				if (err)
+					return err;
+				if (priv->tunnel_reg_id) {
+					mlx4_flow_detach(priv->mdev->dev, priv->tunnel_reg_id);
+					priv->tunnel_reg_id = 0;
+				}
+				err = mlx4_en_tunnel_steer_add(priv, new_mac, qpn,
+							       &priv->tunnel_reg_id);
 				return err;
 			}
 		}
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH net 3/3] net/mlx4_core: Load the IB driver when the device supports IBoE
  2014-03-12 15:16 [PATCH net 0/3] mlx4 fixes Or Gerlitz
  2014-03-12 15:16 ` [PATCH net 1/3] net/mlx4_core: Fix wrong dump of the vxlan offloads device capability Or Gerlitz
  2014-03-12 15:16 ` [PATCH net 2/3] net/mlx4_en: Handle vxlan steering rules for mac address changes Or Gerlitz
@ 2014-03-12 15:16 ` Or Gerlitz
  2014-03-12 20:14 ` [PATCH net 0/3] mlx4 fixes David Miller
  3 siblings, 0 replies; 7+ messages in thread
From: Or Gerlitz @ 2014-03-12 15:16 UTC (permalink / raw)
  To: davem; +Cc: netdev, amirv, Or Gerlitz

When checking what protocol drivers to load, the IB driver should be
requested also over Ethernet ports, if the device supports IBoE (RoCE).

Fixes: b046ffe 'net/mlx4_core: Load higher level modules according to ports type'
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
---
 drivers/net/ethernet/mellanox/mlx4/main.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx4/main.c b/drivers/net/ethernet/mellanox/mlx4/main.c
index 30a08a6..936c153 100644
--- a/drivers/net/ethernet/mellanox/mlx4/main.c
+++ b/drivers/net/ethernet/mellanox/mlx4/main.c
@@ -751,7 +751,7 @@ static void mlx4_request_modules(struct mlx4_dev *dev)
 			has_eth_port = true;
 	}
 
-	if (has_ib_port)
+	if (has_ib_port || (dev->caps.flags & MLX4_DEV_CAP_FLAG_IBOE))
 		request_module_nowait(IB_DRV_NAME);
 	if (has_eth_port)
 		request_module_nowait(EN_DRV_NAME);
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH net 0/3] mlx4 fixes
  2014-03-12 15:16 [PATCH net 0/3] mlx4 fixes Or Gerlitz
                   ` (2 preceding siblings ...)
  2014-03-12 15:16 ` [PATCH net 3/3] net/mlx4_core: Load the IB driver when the device supports IBoE Or Gerlitz
@ 2014-03-12 20:14 ` David Miller
  2014-03-12 20:25   ` Or Gerlitz
  2014-03-13 11:10   ` Or Gerlitz
  3 siblings, 2 replies; 7+ messages in thread
From: David Miller @ 2014-03-12 20:14 UTC (permalink / raw)
  To: ogerlitz; +Cc: netdev, amirv

From: Or Gerlitz <ogerlitz@mellanox.com>
Date: Wed, 12 Mar 2014 17:16:29 +0200

> These short series fixes two bugs related to the vxlan support and a
> missing req module call for the IB driver which is needed to support
> IB/RDMA over Ethernet.
> 
> Pathes done over the net tree, commit dd38743 "vlan: Set correct
> source MAC address with TX VLAN offload enabled"

Series applied, thanks Or.

I wonder though, if a MAC address change results in a VLAN steering
rule insertion failure, won't we be left in an inconsistent state?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH net 0/3] mlx4 fixes
  2014-03-12 20:14 ` [PATCH net 0/3] mlx4 fixes David Miller
@ 2014-03-12 20:25   ` Or Gerlitz
  2014-03-13 11:10   ` Or Gerlitz
  1 sibling, 0 replies; 7+ messages in thread
From: Or Gerlitz @ 2014-03-12 20:25 UTC (permalink / raw)
  To: David Miller; +Cc: Or Gerlitz, netdev, Amir Vadai

On Wed, Mar 12, 2014 at 10:14 PM, David Miller <davem@davemloft.net> wrote:
> From: Or Gerlitz <ogerlitz@mellanox.com>
> Date: Wed, 12 Mar 2014 17:16:29 +0200
>
>> These short series fixes two bugs related to the vxlan support and a
>> missing req module call for the IB driver which is needed to support
>> IB/RDMA over Ethernet.
>>
>> Pathes done over the net tree, commit dd38743 "vlan: Set correct
>> source MAC address with TX VLAN offload enabled"
>
> Series applied, thanks Or.
>
> I wonder though, if a MAC address change results in a VLAN steering
> rule insertion failure, won't we be left in an inconsistent state?

in that case non-VXLAN traffic will fly in OK, but not VXLAN traffic.
I don't think we want to close the shop when this happens but probably
print some warning or a like, will send a patch...

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH net 0/3] mlx4 fixes
  2014-03-12 20:14 ` [PATCH net 0/3] mlx4 fixes David Miller
  2014-03-12 20:25   ` Or Gerlitz
@ 2014-03-13 11:10   ` Or Gerlitz
  1 sibling, 0 replies; 7+ messages in thread
From: Or Gerlitz @ 2014-03-13 11:10 UTC (permalink / raw)
  To: David Miller; +Cc: netdev, amirv

On 12/03/2014 22:14, David Miller wrote:
> I wonder though, if a MAC address change results in a VLAN steering
> rule insertion failure, won't we be left in an inconsistent state?

So eventually when mlx4_en_replace_mac()  returns with error, there is a 
printout, so users
will at least be notified that something went wrong.

Or.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-03-13 11:10 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-12 15:16 [PATCH net 0/3] mlx4 fixes Or Gerlitz
2014-03-12 15:16 ` [PATCH net 1/3] net/mlx4_core: Fix wrong dump of the vxlan offloads device capability Or Gerlitz
2014-03-12 15:16 ` [PATCH net 2/3] net/mlx4_en: Handle vxlan steering rules for mac address changes Or Gerlitz
2014-03-12 15:16 ` [PATCH net 3/3] net/mlx4_core: Load the IB driver when the device supports IBoE Or Gerlitz
2014-03-12 20:14 ` [PATCH net 0/3] mlx4 fixes David Miller
2014-03-12 20:25   ` Or Gerlitz
2014-03-13 11:10   ` Or Gerlitz

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.