Whamcloud - gitweb
LU-8401 lnet: remove dependency on OFED headers from lnet 17/21317/4
authorDmitry Eremin <dmitry.eremin@intel.com>
Thu, 14 Jul 2016 18:23:13 +0000 (21:23 +0300)
committerOleg Drokin <oleg.drokin@intel.com>
Sat, 6 Aug 2016 06:25:06 +0000 (06:25 +0000)
The LNet layer shouldn't refer to anything in the RDMA world directly.
All OFED dependent code should be localized into o2iblnd.
So, remove dependency on OFED headers from all code except o2iblnd.

Change-Id: I445922ca2be58b5c34e61fe1fa50a423f13ec75d
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/21317
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Chris Horn <hornc@cray.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lnet/autoconf/lustre-lnet.m4
lnet/klnds/gnilnd/Makefile.in
lnet/klnds/gnilnd/gnilnd.h
lnet/klnds/socklnd/Makefile.in
lnet/klnds/socklnd/socklnd.h
lnet/lnet/Makefile.in
lnet/lnet/acceptor.c
lnet/lnet/lib-socket.c

index bef6231..47a4ff1 100644 (file)
@@ -340,6 +340,7 @@ AC_SUBST(ENABLEO2IB)
 
 AS_IF([test $ENABLEO2IB != "no"], [
        EXTRA_CHECK_INCLUDE="$EXTRA_OFED_CONFIG $EXTRA_OFED_INCLUDE"
+
        # In RHEL 6.2, rdma_create_id() takes the queue-pair type as a fourth argument
        LB_CHECK_COMPILE([if 'rdma_create_id' wants four args],
        rdma_create_id_4args, [
@@ -492,6 +493,26 @@ AS_IF([test $ENABLEO2IB != "no"], [
                AC_DEFINE(HAVE_IB_DEVICE_ATTRS, 1,
                        [struct ib_device.attrs is defined])
        ])
+
+       LB_CHECK_COMPILE([if function 'ib_inc_rkey' is defined],
+       ib_inc_rkey, [
+               #ifdef HAVE_COMPAT_RDMA
+               #undef PACKAGE_NAME
+               #undef PACKAGE_TARNAME
+               #undef PACKAGE_VERSION
+               #undef PACKAGE_STRING
+               #undef PACKAGE_BUGREPORT
+               #undef PACKAGE_URL
+               #include <linux/compat-2.6.h>
+               #endif
+               #include <rdma/ib_verbs.h>
+       ],[
+               (void)ib_inc_rkey(0);
+       ],[
+               AC_DEFINE(HAVE_IB_INC_RKEY, 1,
+                         [function ib_inc_rkey exist])
+       ])
+
        EXTRA_CHECK_INCLUDE=""
 ]) # ENABLEO2IB != "no"
 ]) # LN_CONFIG_O2IB
@@ -564,15 +585,6 @@ AC_SUBST(GNILND)
 AC_DEFUN([LN_CONFIG_SK_SLEEP], [
 LB_CHECK_COMPILE([if Linux kernel has 'sk_sleep'],
 sk_sleep, [
-       #ifdef HAVE_COMPAT_RDMA
-       #undef PACKAGE_NAME
-       #undef PACKAGE_TARNAME
-       #undef PACKAGE_VERSION
-       #undef PACKAGE_STRING
-       #undef PACKAGE_BUGREPORT
-       #undef PACKAGE_URL
-       #include <linux/compat-2.6.h>
-       #endif
        #include <net/sock.h>
 ],[
        sk_sleep(NULL);
@@ -585,22 +597,14 @@ sk_sleep, [
 #
 # LN_CONFIG_TCP_SENDPAGE
 #
-# 2.6.36 tcp_sendpage() first parameter is 'struct sock' instead of 'struct socket'.
+# 2.6.36 tcp_sendpage() first parameter is 'struct sock'
+# instead of 'struct socket'.
 #
 AC_DEFUN([LN_CONFIG_TCP_SENDPAGE], [
 tmp_flags="$EXTRA_KCFLAGS"
 EXTRA_KCFLAGS="-Werror"
 LB_CHECK_COMPILE([if 'tcp_sendpage' first parameter is socket],
 tcp_sendpage_socket, [
-       #ifdef HAVE_COMPAT_RDMA
-       #undef PACKAGE_NAME
-       #undef PACKAGE_TARNAME
-       #undef PACKAGE_VERSION
-       #undef PACKAGE_STRING
-       #undef PACKAGE_BUGREPORT
-       #undef PACKAGE_URL
-       #include <linux/compat-2.6.h>
-       #endif
        #include <linux/net.h>
        #include <net/tcp.h>
 ],[
@@ -622,15 +626,6 @@ tmp_flags="$EXTRA_KCFLAGS"
 EXTRA_KCFLAGS="-Werror"
 LB_CHECK_COMPILE([if 'sk_data_ready' takes only one argument],
 sk_data_ready, [
-       #ifdef HAVE_COMPAT_RDMA
-       #undef PACKAGE_NAME
-       #undef PACKAGE_TARNAME
-       #undef PACKAGE_VERSION
-       #undef PACKAGE_STRING
-       #undef PACKAGE_BUGREPORT
-       #undef PACKAGE_URL
-       #include <linux/compat-2.6.h>
-       #endif
        #include <linux/net.h>
        #include <net/sock.h>
 ],[
@@ -643,33 +638,6 @@ EXTRA_KCFLAGS="$tmp_flags"
 ]) # LN_CONFIG_SK_DATA_READY
 
 #
-# LN_CONFIG_IB_INC_RKEY
-#
-AC_DEFUN([LN_CONFIG_IB_INC_RKEY], [
-tmp_flags="$EXTRA_KCFLAGS"
-EXTRA_KCFLAGS="-Werror"
-LB_CHECK_COMPILE([if function 'ib_inc_rkey' is defined],
-ib_inc_rkey, [
-       #ifdef HAVE_COMPAT_RDMA
-       #undef PACKAGE_NAME
-       #undef PACKAGE_TARNAME
-       #undef PACKAGE_VERSION
-       #undef PACKAGE_STRING
-       #undef PACKAGE_BUGREPORT
-       #undef PACKAGE_URL
-       #include <linux/compat-2.6.h>
-       #endif
-       #include <rdma/ib_verbs.h>
-],[
-       (void)ib_inc_rkey(0);
-],[
-       AC_DEFINE(HAVE_IB_INC_RKEY, 1,
-                 [function ib_inc_rkey exist])
-])
-EXTRA_KCFLAGS="$tmp_flags"
-]) # LN_CONFIG_IB_INC_RKEY
-
-#
 # LN_PROG_LINUX
 #
 # LNet linux kernel checks
@@ -682,18 +650,12 @@ LN_CONFIG_AFFINITY
 LN_CONFIG_BACKOFF
 LN_CONFIG_O2IB
 LN_CONFIG_GNILND
-# OFED checks, so add extra OFED include
-EXTRA_CHECK_INCLUDE="$EXTRA_OFED_CONFIG $EXTRA_OFED_INCLUDE"
 # 2.6.35
 LN_CONFIG_SK_SLEEP
 # 2.6.36
 LN_CONFIG_TCP_SENDPAGE
-# 3.8.1
-LN_CONFIG_IB_INC_RKEY
 # 3.15
 LN_CONFIG_SK_DATA_READY
-# remove extra include for none OFED code
-EXTRA_CHECK_INCLUDE=""
 ]) # LN_PROG_LINUX
 
 #
index 5f9e4df..14e8c30 100644 (file)
@@ -2,10 +2,6 @@ MODULES := kgnilnd
 kgnilnd-objs := gnilnd.o gnilnd_cb.o gnilnd_modparams.o gnilnd_debug.o gnilnd_proc.o \
                gnilnd_sysctl.o gnilnd_stack.o gnilnd_conn.o
 
-# Need to make sure that an external OFED source pool overrides
-# any in-kernel OFED sources
-NOSTDINC_FLAGS += @EXTRA_OFED_CONFIG@ @EXTRA_OFED_INCLUDE@
-
 EXTRA_POST_CFLAGS := -D"SVN_CODE_REV=KBUILD_STR(${SVN_CODE_REV})" @GNICPPFLAGS@
 
 EXTRA_DIST = $(kgnilnd-objs:%.o=%.c) gnilnd.h gnilnd_api_wrap.h
index f887d4b..9343935 100644 (file)
@@ -28,9 +28,6 @@
 #ifndef _GNILND_GNILND_H_
 #define _GNILND_GNILND_H_
 
-#ifdef HAVE_COMPAT_RDMA
-#include <linux/compat-2.6.h>
-#endif
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/mm.h>
index dbd783a..b29f617 100644 (file)
@@ -1,9 +1,5 @@
 MODULES := ksocklnd
 
-# Need to make sure that an external OFED source pool overrides
-# # any in-kernel OFED sources
-NOSTDINC_FLAGS += @EXTRA_OFED_CONFIG@ @EXTRA_OFED_INCLUDE@
-
 ksocklnd-objs := \
        socklnd.o \
        socklnd_cb.o \
index 54794c0..1a08293 100644 (file)
@@ -31,9 +31,6 @@
 #define DEBUG_PORTAL_ALLOC
 #define DEBUG_SUBSYSTEM S_LND
 
-#ifdef HAVE_COMPAT_RDMA
-#include <linux/compat-2.6.h>
-#endif
 #include <linux/crc32.h>
 #include <linux/errno.h>
 #include <linux/if.h>
index 592d2d7..ee119ad 100644 (file)
@@ -7,8 +7,4 @@ lnet-objs += router.o router_proc.o acceptor.o peer.o net_fault.o
 
 default: all
 
-# Need to make sure that an external OFED source pool overrides
-# # any in-kernel OFED sources
-NOSTDINC_FLAGS += @EXTRA_OFED_CONFIG@ @EXTRA_OFED_INCLUDE@
-
 @INCLUDE_RULES@
index d6448fe..9bf15ca 100644 (file)
@@ -36,9 +36,6 @@
 
 #define DEBUG_SUBSYSTEM S_LNET
 
-#ifdef HAVE_COMPAT_RDMA
-#include <linux/compat-2.6.h>
-#endif
 #include <linux/completion.h>
 #include <net/sock.h>
 #include <lnet/lib-lnet.h>
index 83d6790..9392f4f 100644 (file)
@@ -35,9 +35,6 @@
  */
 #define DEBUG_SUBSYSTEM S_LNET
 
-#ifdef HAVE_COMPAT_RDMA
-#include <linux/compat-2.6.h>
-#endif
 #include <linux/if.h>
 #include <linux/in.h>
 #include <linux/net.h>