[ewg] [PATCH v6] IB CORE: RAW ETH support

Aleksey Senin alekseys at voltaire.com
Tue Jun 15 06:11:41 PDT 2010


Hi, Miroslaw.
Please review  and give OK to Vlad to apply this fix.

Fix QP type when using iWARP transport.

Signed-off-by: Aleksey Senin <alekseys at voltaire.com>
---
 .../fixes/core_0560_raw_eth_common.patch           |   33 +++++++++++++------
 1 files changed, 22 insertions(+), 11 deletions(-)

diff --git a/kernel_patches/fixes/core_0560_raw_eth_common.patch b/kernel_patches/fixes/core_0560_raw_eth_common.patch
index 52d7be7..3083f47 100644
--- a/kernel_patches/fixes/core_0560_raw_eth_common.patch
+++ b/kernel_patches/fixes/core_0560_raw_eth_common.patch
@@ -1,18 +1,19 @@
-From b76993213461212cfdb40817b454513a91ee4e6e Mon Sep 17 00:00:00 2001
+From 4716cc5ef1d4609ad976a502a14887cac0119f33 Mon Sep 17 00:00:00 2001
 From: Aleksey Senin <alekseys at voltaire.com>
-Date: Mon, 14 Jun 2010 15:20:40 +0300
-Subject: [PATCH 1/2] Verbs RAW ETH support
+Date: Tue, 15 Jun 2010 16:00:49 +0300
+Subject: [PATCH] Verbs RAW_ETH support
 
-This patch add RAW ETH support in IB core.
+Add new RAW_ETH QP type in order to build RAW Ethernet packets
+over iWARP and RoCEE.
 
 Signed-off-by: Aleksey Senin <alekseys at voltaire.com>
 ---
- drivers/infiniband/core/verbs.c |   13 +++++++++++--
+ drivers/infiniband/core/verbs.c |   17 +++++++++++++----
  include/rdma/ib_verbs.h         |    1 +
- 2 files changed, 12 insertions(+), 2 deletions(-)
+ 2 files changed, 14 insertions(+), 4 deletions(-)
 
 diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c
-index 881850e..bb4dcd5 100644
+index d24b240..c86a665 100644
 --- a/drivers/infiniband/core/verbs.c
 +++ b/drivers/infiniband/core/verbs.c
 @@ -382,6 +382,7 @@ static const struct {
@@ -23,7 +24,7 @@ index 881850e..bb4dcd5 100644
  				[IB_QPT_UC]  = (IB_QP_PKEY_INDEX		|
  						IB_QP_PORT			|
  						IB_QP_ACCESS_FLAGS),
-@@ -1004,7 +1005,11 @@ int ib_attach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid)
+@@ -1005,11 +1006,15 @@ int ib_attach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid)
  
  	switch (rdma_node_get_transport(qp->device->node_type)) {
  	case RDMA_TRANSPORT_IB:
@@ -36,7 +37,12 @@ index 881850e..bb4dcd5 100644
  			return -EINVAL;
  		break;
  	case RDMA_TRANSPORT_IWARP:
-@@ -1023,7 +1028,11 @@ int ib_detach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid)
+-		if (qp->qp_type != IB_QPT_RAW_ETY)
++		if (qp->qp_type != IB_QPT_RAW_ETH)
+ 			return -EINVAL;
+ 		break;
+ 	}
+@@ -1024,11 +1029,15 @@ int ib_detach_mcast(struct ib_qp *qp, union ib_gid *gid, u16 lid)
  
  	switch (rdma_node_get_transport(qp->device->node_type)) {
  	case RDMA_TRANSPORT_IB:
@@ -49,8 +55,13 @@ index 881850e..bb4dcd5 100644
  			return -EINVAL;
  		break;
  	case RDMA_TRANSPORT_IWARP:
+-		if (qp->qp_type != IB_QPT_RAW_ETY)
++		if (qp->qp_type != IB_QPT_RAW_ETH)
+ 			return -EINVAL;
+ 		break;
+ 	}
 diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
-index 3a5a40f..2162253 100644
+index 99f6859..3330820 100644
 --- a/include/rdma/ib_verbs.h
 +++ b/include/rdma/ib_verbs.h
 @@ -571,6 +571,7 @@ enum ib_qp_type {
@@ -62,5 +73,5 @@ index 3a5a40f..2162253 100644
  };
  
 -- 
-1.6.5.2
+1.6.4.2
 
-- 
1.6.4.2




More information about the ewg mailing list