Whamcloud - gitweb
LU-1050 o2iblnd: fix checking order of rdma_create_id() argument
authorShuichi Ihara <sihara@ddn.com>
Mon, 13 Feb 2012 16:47:38 +0000 (01:47 +0900)
committerOleg Drokin <green@whamcloud.com>
Fri, 17 Feb 2012 18:16:29 +0000 (13:16 -0500)
Replace rdma_create_id() with rdma_destroy_id() in
openib gen2 test and four argument check moves to
the back of openib test.

Signed-off-by: Shuichi Ihara <sihara@ddn.com>
Change-Id: I0782183f15f58647291518a4222610601083c369
Reviewed-on: http://review.whamcloud.com/2097
Tested-by: Hudson
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Liang Zhen <liang@whamcloud.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
lnet/autoconf/lustre-lnet.m4

index 6ed99bf..e509eae 100644 (file)
@@ -357,19 +357,6 @@ AC_SUBST(MXLND)
 #
 AC_DEFUN([LN_CONFIG_O2IB],[
 
 #
 AC_DEFUN([LN_CONFIG_O2IB],[
 
-# In RHEL 6.2, rdma_create_id() takes the queue-pair type as a fourth argument
-AC_MSG_CHECKING([if rdma_create_id wants four args])
-LB_LINUX_TRY_COMPILE([
-       #include <rdma/rdma_cm.h>
-],[
-       rdma_create_id(NULL, NULL, 0, 0);
-],[
-       AC_MSG_RESULT([yes])
-       AC_DEFINE(HAVE_RDMA_CREATE_ID_4ARG, 1, [rdma_create_id wants 4 args])
-],[
-       AC_MSG_RESULT([no])
-])
-
 AC_MSG_CHECKING([whether to enable OpenIB gen2 support])
 # set default
 AC_ARG_WITH([o2ib],
 AC_MSG_CHECKING([whether to enable OpenIB gen2 support])
 # set default
 AC_ARG_WITH([o2ib],
@@ -440,12 +427,7 @@ else
                        struct ib_pool_fmr          pool_fmr;
                        enum   ib_cm_rej_reason     rej_reason;
 
                        struct ib_pool_fmr          pool_fmr;
                        enum   ib_cm_rej_reason     rej_reason;
 
-                       #ifdef HAVE_RDMA_CREATE_ID_4ARG
-                       cm_id = rdma_create_id(NULL, NULL, RDMA_PS_TCP, 0);
-                       #else
-                       cm_id = rdma_create_id(NULL, NULL, RDMA_PS_TCP);
-                       #endif
-                       return PTR_ERR(cm_id);
+                       rdma_destroy_id(NULL);
                ],[
                        AC_MSG_RESULT([yes])
                        O2IBLND="o2iblnd"
                ],[
                        AC_MSG_RESULT([yes])
                        O2IBLND="o2iblnd"
@@ -493,6 +475,22 @@ fi
 AC_SUBST(EXTRA_LNET_INCLUDE)
 AC_SUBST(O2IBCPPFLAGS)
 AC_SUBST(O2IBLND)
 AC_SUBST(EXTRA_LNET_INCLUDE)
 AC_SUBST(O2IBCPPFLAGS)
 AC_SUBST(O2IBLND)
+
+# In RHEL 6.2, rdma_create_id() takes the queue-pair type as a fourth argument
+if test $ENABLEO2IB -ne 0; then
+       AC_MSG_CHECKING([if rdma_create_id wants four args])
+       LB_LINUX_TRY_COMPILE([
+               #include <rdma/rdma_cm.h>
+       ],[
+               rdma_create_id(NULL, NULL, 0, 0);
+       ],[
+               AC_MSG_RESULT([yes])
+               AC_DEFINE(HAVE_RDMA_CREATE_ID_4ARG, 1,
+                       [rdma_create_id wants 4 args])
+       ],[
+               AC_MSG_RESULT([no])
+       ])
+fi
 ])
 
 #
 ])
 
 #