[ewg] [PATCH] IB/core - ib_wr_opcode change to add IB_WR_LSO breaks ib_ipath

Ralph Campbell ralph.campbell at qlogic.com
Thu Jan 3 10:50:36 PST 2008


Vlad, please pull from git.openfabrics.org/~ralphc/linux-2.6.git in
the ofed_kernel_2_6_24_rc1 branch. This is an up-to-date clone
of git://git.openfabrics.org/ofed_1_3/linux-2.6.git with the
following change:


The ib_ipath driver depends on /usr/include/infiniband/verbs.h
enum ibv_wr_opcode matching the kernel's ib_verbs.h
enum ib_wr_opcode. The recent change to add IB_WR_LSO breaks this.

Now, you may argue that the kernel should not depend on this equivalence
but you would then need to define IBV_WR_RDMA_WRITE, etc. in some
kernel header file and do a table look up to map from user to
kernel opcode values. Since I don't see any other code which depends
on the value of IB_WR_LSO, I think the following patch is the right
fix.

Signed-off-by: Ralph Campbell <ralph.campbell at qlogic.com>

diff --git a/kernel_patches/fixes/core_0030_lso.patch b/kernel_patches/fixes/core_0030_lso.patch
index 3f6af37..94a91b4 100644
--- a/kernel_patches/fixes/core_0030_lso.patch
+++ b/kernel_patches/fixes/core_0030_lso.patch
@@ -27,14 +27,16 @@ Index: ofed_kernel/include/rdma/ib_verbs.h
  /*
   * Set value of IB_WC_RECV so consumers can test if a completion is a
   * receive by testing (opcode & IB_WC_RECV).
-@@ -609,6 +611,7 @@ enum ib_wr_opcode {
-       IB_WR_RDMA_WRITE,
-       IB_WR_RDMA_WRITE_WITH_IMM,
-       IB_WR_SEND,
-+      IB_WR_LSO,
+@@ -612,7 +614,8 @@ enum ib_wr_opcode {
        IB_WR_SEND_WITH_IMM,
        IB_WR_RDMA_READ,
        IB_WR_ATOMIC_CMP_AND_SWP,
+-      IB_WR_ATOMIC_FETCH_AND_ADD
++      IB_WR_ATOMIC_FETCH_AND_ADD,
++      IB_WR_LSO
+ };
+ 
+ enum ib_send_flags {
 @@ -621,7 +624,8 @@ enum ib_send_flags {
        IB_SEND_SOLICITED       = (1<<2),
        IB_SEND_INLINE          = (1<<3),
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ewg/attachments/20080103/3e9c9083/attachment.html>


More information about the ewg mailing list