Re: [ewg] High Speed Packet Injector]

2012-02-24 Thread Walukiewicz, Miroslaw

 When injecting Ethernet frames in network, we don't need a connection to
 be established between sender and receiver.

 But I think to use RAW_ETH_QP, we need to make a queue pairing between a
 sender and a receiver, is this true or I am wrong ?

The remote qpn is only required for IB, not for Ethernet. 

The Ethernet frames sent using RAW_ETH_QP could be received by any Ethernet 
device.

Regards,

Mirek

-Original Message-
From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of 
majdi.bens...@amansystem.com
Sent: Friday, February 24, 2012 5:15 PM
To: ewg@lists.openfabrics.org
Subject: Re: [ewg] High Speed Packet Injector]

There is nobody to help us 


 When injecting Ethernet frames in network, we don't need a connection to
 be established between sender and receiver.

 But I think to use RAW_ETH_QP, we need to make a queue pairing between a
 sender and a receiver, is this true or I am wrong ?
 You can use RAW_ETH_QP available by OFED user space verbs


 Tziporet

 -Original Message-
 From: ewg-boun...@lists.openfabrics.org
 [mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of
 majdi.bens...@amansystem.com
 Sent: Thursday, February 16, 2012 12:28 PM
 To: ewg@lists.openfabrics.org
 Subject: [ewg] High Speed Packet Injector

 Dear Sears,

 I am working on the creation of a high speed packet injector based on
 tcpreplay, using Mellanox 10GE Nic and bypassing Linux kernel.

 All documents  read about ofed stack talk about connected connections.
 But
 I want a method which allow me to write Ethernet frames directly to
 network wire, and also collect packets in a high speed network without
 using OS kernel.

 Basically we want to reach 10GE both in sending and receiving.

 Do you have any ideas how this can be done? or Do you have some hints
 which can help?

 Thanks in advance.

 Best Regards.



 ___
 ewg mailing list
 ewg@lists.openfabrics.org
 http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg




 ___
 ewg mailing list
 ewg@lists.openfabrics.org
 http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg



___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


Re: [ewg] iWARP WAN test problem

2011-03-03 Thread Walukiewicz, Miroslaw
Tan,

Do you have a possibility to check if your configuration works in back-to-back 
configuration( without IP router) in the same IP subnet?

Regards,

Mirek
From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of Tanin
Sent: Thursday, March 03, 2011 2:46 PM
To: rich...@informatix-sol.com
Cc: OpenFabrics EWG
Subject: Re: [ewg] iWARP WAN test problem

Thanks, Richard.
So, is that also apply to iWARP? If there is an IP router in between the path, 
iWARP would not work, right?



On Thu, Mar 3, 2011 at 4:21 AM, 
rich...@informatix-sol.commailto:rich...@informatix-sol.com 
rich...@informatix-sol.commailto:rich...@informatix-sol.com wrote:
RDMA only works over layer2 Ethernet. If you have an IP router in path it won't 
work.
For long haul infiniband we use buffer devices, such as obsidian longbows, to 
sustain throughput over the long haul.

Richard



--
Best regards,

---
Li, Tan
PhD Candidate  Research Assistant,
Electrical Engineering,
Stony Brook University, NY

Personal Web Site: https://sites.google.com/site/homepagelitan/Home

Email: fanqie...@gmail.commailto:fanqie...@gmail.com

___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

[ewg] FW: [PATCH 0/5] RDMA/core: a set of various fixes for RAW QP implementation in nes driver

2010-12-13 Thread Walukiewicz, Miroslaw
Vlad, 

I can't see may patches to nes introduced to OFED. 

Do you see any problems with getting them?

Regards,

Mirek

-Original Message-
From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of Mirek Walukiewicz
Sent: Thursday, December 09, 2010 5:01 PM
To: v...@dev.mellanox.co.il
Cc: e...@openfabrics.org
Subject: [ewg] [PATCH 0/5] RDMA/core: a set of various fixes for RAW QP 
implementation in nes driver

This patch series provides a set of patches correcting driver misbehavior
when RAW QP is enabled. It includes fixes for:
- packets with VLAN transfer over RAW QP
- transition of RAW QP to ERR state
- memory corruption during post recv buffers to RAW QP
- checking resource limits for multicast groups attached to RAW QP

Signed-off-by: Mirek Walukiewicz miroslaw.walukiew...@intel.com
 
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


[ewg] [PATCH] iWARP Multicast Acceleration description - nes_release_notes.txt update

2010-06-17 Thread Walukiewicz, Miroslaw
docs/nes: Add description of iWARP Multicast Acceleration

The document describes a usage model of the iWARP Multicast Acceleration

Signed-off-by: Mirek Walukiewicz miroslaw.walukiew...@intel.com
---
diff --git a/nes_release_notes.txt b/nes_release_notes.txt
index 6386c54..b23abf3 100644
--- a/nes_release_notes.txt
+++ b/nes_release_notes.txt
@@ -269,5 +269,66 @@ Example mpirun command line:
-mca btl_openib_flags 2
/usr/mpi/gcc/openmpi-1.4.1/tests/IMB-3.2/IMB-MPI1

+===
+iWARP Multicast Acceleration (IMA)
+===
+
+iWARP multicast acceleration bases on new defined QP
+type IBV_QPT_RAW_ETH. Adding a IBV_QPT_RAW_ETH enables
+a L2 traffic kernel bypass  using user-space verbs API.
+
+The L2 RAW_ETH acceleration assumes that user application
+transmits and receives a whole L2 frame including MAC/IP/UDP/TCP headers.
+
+ETH RAW QP usage:
+first the application creates IBV_QPT_RAW_ETH QP with associated CQ,PD,
+completion channels as it is performed for RDMA connection.
+
+Next step is enabling L2 MAC address RX filters for directing received
+multicasts to the RAW_ETH QPs using ibv_attach_multicast() verb.
+
+From this point the application is ready to receive and transmit
+multicast traffic.
+
+In multicast acceleration the user application passes to ibv_post_send()
+whole IGMP frame including MAC header, IP header, UDP header and UDP payload.
+It is a user responsibility to make IP fragmentaion when required payload
+is larger than MTU. Every fragment is a separate L2 frame to transmit.
+The ibv_poll_cq() provides an information about the status of transmit buffer.
+
+On receive path when ibv_poll_cq() provides an information
+about received L2 packet, the Rx buffer (previously posted by ibv_post_recv()
+ contains a whole L2 frame including MAC header, IP header and UDP header.
+It is a user application responsibility to check if received packet is
+a valid UDP frame so the fragments must be checked and
+checksums must be computed.
+
+IMA API description (NE020 specific) :
+User application must create separate CQs for RX and TX path.
+Only single sge on tranmit is supported.
+User application must post at least 65 rx buffers to keep RX path  working.
+
+IMA device:
+IMA requires creation of the /dev/infiniband/nes_ud_sksq device to get
+ access to optimized IMA transmit path. The best method for creation
+of that device is manual addition following line to
+/etc/udev/rules.d/90-ib.rules file
+after OFED distribution installation and rebooting machine.
+
+KERNEL==nes_ud_sksq, NAME=infiniband/%k, MODE=0644
+
+As a result the 90-ib.rules should look like:
+
+KERNEL==umad*, NAME=infiniband/%k
+KERNEL==issm*, NAME=infiniband/%k
+KERNEL==ucm*, NAME=infiniband/%k, MODE=0666
+KERNEL==uverbs*, NAME=infiniband/%k, MODE=0666
+KERNEL==ucma, NAME=infiniband/%k, MODE=0666
+KERNEL==rdma_cm, NAME=infiniband/%k, MODE=0666
+KERNEL==nes_ud_sksq, NAME=infiniband/%k, MODE=0644
+
+Keep in mind that setting an other that 644 mode of nes_ud_sksq device
+can cause serious serious security issues, so it is not recommended to
+change this mode for applications.

 NetEffect is a trademark of Intel Corporation in the U.S. and other countries.


___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

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

2010-06-15 Thread Walukiewicz, Miroslaw
Hello Aleksey, 

This patch is not working for iWARP. There is no change from ETY to ETH for 
ibv_attach_mcast/ibv_detach_mcast() for RDMA_TRANSPORT_IWARP

Mirek

-Original Message-
From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of Aleksey Senin
Sent: Monday, June 14, 2010 2:39 PM
To: v...@dev.mellanox.co.il; e...@dev.mellanox.co.il; e...@openfabrics.org
Cc: mo...@voltaire.com; e...@mellanox.co.il
Subject: [ewg] [PATCH v6] IB CORE: RAW ETH support

This patch add RAW ETH support to IB core.


Signed-off-by: Aleksey Senin aleks...@voltaire.com
---
 .../fixes/core_0560_raw_eth_common.patch   |   66 
 1 files changed, 66 insertions(+), 0 deletions(-)
 create mode 100644 kernel_patches/fixes/core_0560_raw_eth_common.patch

diff --git a/kernel_patches/fixes/core_0560_raw_eth_common.patch 
b/kernel_patches/fixes/core_0560_raw_eth_common.patch
new file mode 100644
index 000..52d7be7
--- /dev/null
+++ b/kernel_patches/fixes/core_0560_raw_eth_common.patch
@@ -0,0 +1,66 @@
+From b76993213461212cfdb40817b454513a91ee4e6e Mon Sep 17 00:00:00 2001
+From: Aleksey Senin aleks...@voltaire.com
+Date: Mon, 14 Jun 2010 15:20:40 +0300
+Subject: [PATCH 1/2] Verbs RAW ETH support
+
+This patch add RAW ETH support in IB core.
+
+Signed-off-by: Aleksey Senin aleks...@voltaire.com
+---
+ drivers/infiniband/core/verbs.c |   13 +++--
+ include/rdma/ib_verbs.h |1 +
+ 2 files changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c
+index 881850e..bb4dcd5 100644
+--- a/drivers/infiniband/core/verbs.c
 b/drivers/infiniband/core/verbs.c
+@@ -382,6 +382,7 @@ static const struct {
+   [IB_QPT_UD]  = (IB_QP_PKEY_INDEX
|
+   IB_QP_PORT  
|
+   IB_QP_QKEY),
++  [IB_QPT_RAW_ETH] = IB_QP_PORT,
+   [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)
+ 
+   switch (rdma_node_get_transport(qp-device-node_type)) {
+   case RDMA_TRANSPORT_IB:
+-  if (gid-raw[0] != 0xff || qp-qp_type != IB_QPT_UD)
++  if (qp-qp_type == IB_QPT_RAW_ETH) {
++  /* In raw Etherent mgids the 63 msb's should be 0 */
++  if (gid-global.subnet_prefix  cpu_to_be64(~1ULL))
++  return -EINVAL;
++  } else if (gid-raw[0] != 0xff || qp-qp_type != IB_QPT_UD)
+   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)
+ 
+   switch (rdma_node_get_transport(qp-device-node_type)) {
+   case RDMA_TRANSPORT_IB:
+-  if (gid-raw[0] != 0xff || qp-qp_type != IB_QPT_UD)
++  if (qp-qp_type == IB_QPT_RAW_ETH) {
++  /* In raw Etherent mgids the 63 msb's should be 0 */
++  if (gid-global.subnet_prefix  cpu_to_be64(~1ULL))
++  return -EINVAL;
++  } else if (gid-raw[0] != 0xff || qp-qp_type != IB_QPT_UD)
+   return -EINVAL;
+   break;
+   case RDMA_TRANSPORT_IWARP:
+diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
+index 3a5a40f..2162253 100644
+--- a/include/rdma/ib_verbs.h
 b/include/rdma/ib_verbs.h
+@@ -571,6 +571,7 @@ enum ib_qp_type {
+   IB_QPT_UD,
+   IB_QPT_XRC,
+   IB_QPT_RAW_IPV6,
++  IB_QPT_RAW_ETH,
+   IB_QPT_RAW_ETY
+ };
+ 
+-- 
+1.6.5.2
+
-- 
1.6.5.2

___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


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

2010-06-15 Thread Walukiewicz, Miroslaw
Now, it is OK for me. 

Thank you,

Mirek

-Original Message-
From: Aleksey Senin [mailto:aleks...@voltaire.com] 
Sent: Tuesday, June 15, 2010 3:12 PM
To: Walukiewicz, Miroslaw; v...@dev.mellanox.co.il
Cc: e...@dev.mellanox.co.il; e...@openfabrics.org; mo...@voltaire.com
Subject: Re: [ewg] [PATCH v6] IB CORE: RAW ETH support

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 aleks...@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 aleks...@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 aleks...@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

___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


Re: [ewg] RAW_ETH support [PATCH 1/2]

2010-06-15 Thread Walukiewicz, Miroslaw
I accept that patch. 
Is there any need to send this patch again by me to be applied to OFED?

Mirek

-Original Message-
From: Moni Shoua [mailto:mo...@voltaire.com] 
Sent: Monday, June 14, 2010 4:14 PM
To: Vlad
Cc: Aleksey Senin; ewg@lists.openfabrics.org; Walukiewicz, Miroslaw
Subject: Re: [ewg] RAW_ETH support [PATCH 1/2]

Hi Vlad
Please apply this patch.
Now, when RAW patches that you accepted today are applied, RAW ETH QP support 
is broken for NE driver unless this patch is applied.

thanks

Aleksey Senin wrote:
 This patch will fix existing NES code to support RAW_ETH instead of RAW_ETY 
 type.
 
 
 Signed-off-by: Aleksey Senin aleks...@voltaire.com
 ---
  kernel_patches/fixes/nes_0033_ima.patch |   10 +-
  1 files changed, 5 insertions(+), 5 deletions(-)
 
 diff --git a/kernel_patches/fixes/nes_0033_ima.patch 
 b/kernel_patches/fixes/nes_0033_ima.patch
 index ed21edd..304fe73 100755
 --- a/kernel_patches/fixes/nes_0033_ima.patch
 +++ b/kernel_patches/fixes/nes_0033_ima.patch
 @@ -1,8 +1,8 @@
  RDMA/nes: add support of iWARP multicast acceleration over
 - IB_QPT_RAW_ETY QP type
 + IB_QPT_RAW_ETH QP type
  
  This patch implements iWarp multicast acceleration (IMA)
 -over IB_QPT_RAW_ETY QP type in nes driver.
 +over IB_QPT_RAW_ETH QP type in nes driver.
  
  Application creates a raw eth QP (IBV_QPT_RAW_ETH in user-space) and
  manages the multicast via ibv_attach_mcast and ibv_detach_mcast calls.
 @@ -2301,7 +2301,7 @@ index 098b56f..1801a54 100644
  -nes_debug(NES_DBG_QP, Invalid QP type: %d\n, 
 init_attr-qp_type);
  -return ERR_PTR(-EINVAL);
  +
 -+case IB_QPT_RAW_ETY:
 ++case IB_QPT_RAW_ETH:
  +if (!ibpd-uobject)
  +return ERR_PTR(-EINVAL);
  +
 @@ -2428,7 +2428,7 @@ index 098b56f..1801a54 100644
   atomic_inc(sw_qps_destroyed);
   nesqp-destroyed = 1;
   
 -+if (nesqp-ibqp.qp_type == IB_QPT_RAW_ETY) {
 ++if (nesqp-ibqp.qp_type == IB_QPT_RAW_ETH) {
  +/* check the QP refernece count */
  +if (atomic_read(nesqp-refcount) == 0)
  +BUG();
 @@ -2558,7 +2558,7 @@ index 098b56f..1801a54 100644
   nesqp-hwqp.qp_id, attr-qp_state, nesqp-ibqp_state,
   nesqp-iwarp_state, atomic_read(nesqp-refcount));
   
 -+if (ibqp-qp_type == IB_QPT_RAW_ETY)
 ++if (ibqp-qp_type == IB_QPT_RAW_ETH)
  +return 0;
  +
   spin_lock_irqsave(nesqp-lock, qplockflags);

___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


Re: [ewg] RAW_ETH support [PATCH 0/2]

2010-06-08 Thread Walukiewicz, Miroslaw
Ok, I accept this patch series.

Regards, 
Mirek

-Original Message-
From: Aleksey Senin [mailto:aleks...@voltaire.com] 
Sent: Tuesday, June 08, 2010 3:50 PM
To: ewg@lists.openfabrics.org
Cc: Walukiewicz, Miroslaw
Subject: RAW_ETH support [PATCH 0/2]

Those patches add new RAW_ETH QP type to the kernel in order to support
creation of RAW Ethernet packets for iWARP and RDMAOE protocols.
The reason for new type is that RAW_ETY QP  already used by Mellanox
drivers for another purpose. Another reason, that there is RAW_ETH QP
type already present in userspace, but it mapped to RAW_ETY type in the
kernel and cause to confusion when dealing with code.
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


[ewg] problem with compilation of the librdmacm on kernel 2.6.9-89 (RHEL4.8)

2010-05-25 Thread Walukiewicz, Miroslaw
Hello,

I see a compilation problem on my RHEL4.8

gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include -g -Wall -D_GNU_SOURCE -O2 -g -pipe
 -m32 -march=i386 -mtune=pentium4 -MT src_librdmacm_la-addrinfo.lo -MD -MP -MF .
deps/src_librdmacm_la-addrinfo.Tpo -c src/addrinfo.c  -fPIC -DPIC -o .libs/src_l
ibrdmacm_la-addrinfo.o
In file included from src/cma.c:59:
./include/infiniband/ib.h:49: error: syntax error before __be16
./include/infiniband/ib.h:49: warning: no semicolon at end of struct or union
./include/infiniband/ib.h:49: warning: no semicolon at end of struct or union
./include/infiniband/ib.h:50: warning: type defaults to `int' in declaration of
`uib_addr32'
./include/infiniband/ib.h:50: warning: data definition has no type or storage cl
ass
./include/infiniband/ib.h:51: error: syntax error before uib_addr64
./include/infiniband/ib.h:51: warning: type defaults to `int' in declaration of
`uib_addr64'
./include/infiniband/ib.h:51: warning: data definition has no type or storage cl
ass
./include/infiniband/ib.h:52: error: syntax error before '}' token
./include/infiniband/ib.h:52: warning: type defaults to `int' in declaration of
`ib_u'
./include/infiniband/ib.h:52: warning: data definition has no type or storage cl
ass
./include/infiniband/ib.h:60: error: syntax error before '}' token
./include/infiniband/ib.h: In function `ib_addr_any':
./include/infiniband/ib.h:64: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:64: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h: In function `ib_addr_loopback':
./include/infiniband/ib.h:69: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:69: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:70: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:70: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h: At top level:
./include/infiniband/ib.h:74: error: syntax error before __be32
./include/infiniband/ib.h: In function `ib_addr_set':
./include/infiniband/ib.h:76: error: `addr' undeclared (first use in this functi
on)
./include/infiniband/ib.h:76: error: (Each undeclared identifier is reported onl
y once
./include/infiniband/ib.h:76: error: for each function it appears in.)
./include/infiniband/ib.h:76: error: `w1' undeclared (first use in this function
)
./include/infiniband/ib.h:77: error: `w2' undeclared (first use in this function
)
./include/infiniband/ib.h:78: error: `w3' undeclared (first use in this function

Could anyone help me?

Regards,

Mirek
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

Re: [ewg] problem with compilation of the librdmacm on kernel 2.6.9-89 (RHEL4.8)

2010-05-25 Thread Walukiewicz, Miroslaw
II forgot to add that I used  OFED-1.5.2-20100523-0600 daily build

Regards,

Mirek


From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of Walukiewicz, Miroslaw
Sent: Tuesday, May 25, 2010 6:08 PM
To: e...@openfabrics.org
Subject: [ewg] problem with compilation of the librdmacm on kernel 2.6.9-89 
(RHEL4.8)

Hello,

I see a compilation problem on my RHEL4.8

gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include -g -Wall -D_GNU_SOURCE -O2 -g -pipe
 -m32 -march=i386 -mtune=pentium4 -MT src_librdmacm_la-addrinfo.lo -MD -MP -MF .
deps/src_librdmacm_la-addrinfo.Tpo -c src/addrinfo.c  -fPIC -DPIC -o .libs/src_l
ibrdmacm_la-addrinfo.o
In file included from src/cma.c:59:
./include/infiniband/ib.h:49: error: syntax error before __be16
./include/infiniband/ib.h:49: warning: no semicolon at end of struct or union
./include/infiniband/ib.h:49: warning: no semicolon at end of struct or union
./include/infiniband/ib.h:50: warning: type defaults to `int' in declaration of
`uib_addr32'
./include/infiniband/ib.h:50: warning: data definition has no type or storage cl
ass
./include/infiniband/ib.h:51: error: syntax error before uib_addr64
./include/infiniband/ib.h:51: warning: type defaults to `int' in declaration of
`uib_addr64'
./include/infiniband/ib.h:51: warning: data definition has no type or storage cl
ass
./include/infiniband/ib.h:52: error: syntax error before '}' token
./include/infiniband/ib.h:52: warning: type defaults to `int' in declaration of
`ib_u'
./include/infiniband/ib.h:52: warning: data definition has no type or storage cl
ass
./include/infiniband/ib.h:60: error: syntax error before '}' token
./include/infiniband/ib.h: In function `ib_addr_any':
./include/infiniband/ib.h:64: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:64: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h: In function `ib_addr_loopback':
./include/infiniband/ib.h:69: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:69: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:70: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h:70: error: dereferencing pointer to incomplete type
./include/infiniband/ib.h: At top level:
./include/infiniband/ib.h:74: error: syntax error before __be32
./include/infiniband/ib.h: In function `ib_addr_set':
./include/infiniband/ib.h:76: error: `addr' undeclared (first use in this functi
on)
./include/infiniband/ib.h:76: error: (Each undeclared identifier is reported onl
y once
./include/infiniband/ib.h:76: error: for each function it appears in.)
./include/infiniband/ib.h:76: error: `w1' undeclared (first use in this function
)
./include/infiniband/ib.h:77: error: `w2' undeclared (first use in this function
)
./include/infiniband/ib.h:78: error: `w3' undeclared (first use in this function

Could anyone help me?

Regards,

Mirek
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

Re: [ewg] [PATCH] libibverbs: add raw ethernet QP type IBV_QPT_RAW_ETH=7

2010-05-05 Thread Walukiewicz, Miroslaw
BTW - does this patch add-on to the verbs API?
I hope it does not break the ABI.The only change to the API is 

The only change for API is a new IBV_QPT_RAW_ETH. There is no changes in 
structures. 

Regards,

Mirek 
-Original Message-
From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of Tziporet Koren
Sent: Wednesday, May 05, 2010 3:22 PM
To: Roland Dreier
Cc: Walukiewicz, Miroslaw; e...@openfabrics.org
Subject: Re: [ewg] [PATCH] libibverbs: add raw ethernet QP type 
IBV_QPT_RAW_ETH=7

On 5/5/2010 12:55 AM, Roland Dreier wrote:
 We want to add that patch and iWARP multicast acceleration patches to 
 OFED 1.5.2 content.

 I have nothing to do with OFED development.

We first need to see how is this patch get into the Linux kernel before 
we take it to OFED
BTW - does this patch add-on to the verbs API?
I hope it does not break the ABI.

Tziporet

___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


Re: [ewg] [PATCH] libibverbs: add raw ethernet QP type IBV_QPT_RAW_ETH=7

2010-05-04 Thread Walukiewicz, Miroslaw

Adding a IBV_QPT_RAW_ETH enables a L2 traffic kernel bypass  using user-space 
verbs API. 

The L2 RAW_ETH acceleration assumes that user application transmits and 
receives a whole L2 frame including MAC/IP/UDP/TCP headers. Depending on frame 
content and available HW filters in HW any L2 traffic type could be accelerated.

The sample code for IBV_QPT_RAW_ETH is provided by NES as implementation of  
IPv4 multicast acceleration. 

In this sample, first the application creates IBV_QPT_RAW_ETH QP with 
associated CQ,PD, completion channels as it is performed for RDMA connection.

Next step is enabling L2 MAC address RX filters for directing received 
multicasts to the RAW_ETH QPs using ibv_attach_multicast() verb. 

From this point the application is ready to receive and transmit the L2 
traffic. 

In multicast acceleration the user application passes to ibv_post_send() the 
whole IGMP frame including MAC header, IP header, UDP header and UDP payload. 
It is a user responsibility to make IP fragmentaion when required payload to 
send is bigger than MTU. Every fragment is a separate L2 frame to transmit. The 
ibv_poll_cq() provides an information about the status of transmit buffer. 

On receive path when ibv_poll_cq() provides an information about received L2 
packet, the Rx buffer (previously posted by ibv_post_recv() ) contains a whole 
L2 frame including MAC header, IP header and UDP header. It is a user 
application responsibility to check if received packet is a valid UDP frame so 
the fragments must be checked and checksums must be computed. 

For me the additional patches in kernel are not necessary because  the 
functional meaning of the IB_QPT_RAW_ETH for IWARP/Ethernet cards and 
IB_QPT_RAW_ETY for IB (that is not used as I know) are very similar and there 
is no need to multiply QP types that have the same meaning. Similarly there is 
no separate definitions for RC_QP for iWARP and IB, because their meaning is 
similar. 

Regards,

Mirek Walukiewicz

-Original Message-
From: Aleksey Senin [mailto:aleks...@voltaire.com] 
Sent: Sunday, May 02, 2010 3:15 PM
To: Walukiewicz, Miroslaw
Cc: rdre...@cisco.com; e...@openfabrics.org; Moni Shoua; Yiftah Shahar
Subject: Re: [ewg] [PATCH] libibverbs: add raw ethernet QP type 
IBV_QPT_RAW_ETH=7

Could you add additional details about its usage in the feature to
community? Why and how can it be used? I understand, that using this QP
type, user will have full control on the packet content and it may be
required when you are missing some features now, like UD, and want
implement them by yourself.
Another thing. Is seems that you have to patch kernel too in order
implement such support. Something like this.

enum ib_qp_type {
/*
 * IB_QPT_SMI and IB_QPT_GSI have to be the first two entries
 * here (and in that order) since the MAD layer uses them as
 * indices into a 2-entry table.
 */
IB_QPT_SMI,
IB_QPT_GSI,

IB_QPT_RC,
IB_QPT_UC,
IB_QPT_UD,
IB_QPT_XRC,
IB_QPT_RAW_IPV6,
IB_QPT_RAW_ETH,
IB_QPT_RAW_ETY
};
And its, probably, a reason, why IBV_QPT_RAW_ETH should be equal to 7.

On Fri, 2010-04-30 at 18:46 +0200, Mirek Walukiewicz wrote:
 The patch enables usage of L2 raw ethernet QP type for user-space 
 applications.
 
 Miroslaw Walukiewicz
 
 
 Signed-off-by: Mirek Walukiewicz miroslaw.walukiew...@intel.com
 ---
  include/infiniband/verbs.h |3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)
 
 
 diff --git a/include/infiniband/verbs.h b/include/infiniband/verbs.h
 index 0f1cb2e..55cea89 100644
 --- a/include/infiniband/verbs.h
 +++ b/include/infiniband/verbs.h
 @@ -390,7 +390,8 @@ struct ibv_srq_init_attr {
  enum ibv_qp_type {
   IBV_QPT_RC = 2,
   IBV_QPT_UC,
 - IBV_QPT_UD
 + IBV_QPT_UD,
 + IBV_QPT_RAW_ETH = 7
  };
  
  struct ibv_qp_cap {
 
  
 ___
 ewg mailing list
 ewg@lists.openfabrics.org
 http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg

___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg


Re: [ewg] [PATCH] libibverbs: add raw ethernet QP type IBV_QPT_RAW_ETH=7

2010-05-04 Thread Walukiewicz, Miroslaw
Roland, Tziporet 

We want to add that patch and iWARP multicast acceleration patches to OFED 
1.5.2 content. 

Is it possible to add making the decision regarding these patches to nearest 
EWG/OFED meeting agenda?

Regards, 

Mirek

-Original Message-
From: ewg-boun...@lists.openfabrics.org 
[mailto:ewg-boun...@lists.openfabrics.org] On Behalf Of Mirek Walukiewicz
Sent: Friday, April 30, 2010 6:47 PM
To: rdre...@cisco.com
Cc: e...@openfabrics.org
Subject: [ewg] [PATCH] libibverbs: add raw ethernet QP type IBV_QPT_RAW_ETH=7

The patch enables usage of L2 raw ethernet QP type for user-space applications.

Miroslaw Walukiewicz


Signed-off-by: Mirek Walukiewicz miroslaw.walukiew...@intel.com
---
 include/infiniband/verbs.h |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)


diff --git a/include/infiniband/verbs.h b/include/infiniband/verbs.h
index 0f1cb2e..55cea89 100644
--- a/include/infiniband/verbs.h
+++ b/include/infiniband/verbs.h
@@ -390,7 +390,8 @@ struct ibv_srq_init_attr {
 enum ibv_qp_type {
IBV_QPT_RC = 2,
IBV_QPT_UC,
-   IBV_QPT_UD
+   IBV_QPT_UD,
+   IBV_QPT_RAW_ETH = 7
 };
 
 struct ibv_qp_cap {

 
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg
___
ewg mailing list
ewg@lists.openfabrics.org
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ewg