Whamcloud - gitweb
LU-9558 lnet: kernel socket accept takes new bool agrument
[fs/lustre-release.git] / lnet / autoconf / lustre-lnet.m4
index 1123672..5fa1a70 100644 (file)
@@ -724,6 +724,27 @@ EXTRA_KCFLAGS="$tmp_flags"
 ]) # LN_CONFIG_SK_DATA_READY
 
 #
+# LN_CONFIG_SOCK_ACCEPT
+#
+# 4.11 commit cdfbabfb2f0ce983fdaa42f20e5f7842178fc01e added a flag
+# to handle a possible lockdep condition kernel socket accept.
+#
+AC_DEFUN([LN_CONFIG_SOCK_ACCEPT], [
+tmp_flags="$EXTRA_KCFLAGS"
+EXTRA_KCFLAGS="-Werror"
+LB_CHECK_COMPILE([if 'struct sock' accept function requires a bool argument],
+kern_sock_flag, [
+       #include <linux/net.h>
+],[
+       ((struct socket *)0)->ops->accept(NULL, NULL, O_NONBLOCK, false);
+],[
+       AC_DEFINE(HAVE_KERN_SOCK_ACCEPT_FLAG_ARG, 1,
+               ['struct sock' accept function requires bool argument])
+])
+EXTRA_KCFLAGS="$tmp_flags"
+]) # LN_CONFIG_SOCK_ACCEPT
+
+#
 # LN_PROG_LINUX
 #
 # LNet linux kernel checks
@@ -740,10 +761,12 @@ LN_CONFIG_GNILND
 LN_CONFIG_SK_SLEEP
 # 2.6.36
 LN_CONFIG_TCP_SENDPAGE
-# 4.x
-LN_CONFIG_SOCK_CREATE_KERN
 # 3.15
 LN_CONFIG_SK_DATA_READY
+# 4.x
+LN_CONFIG_SOCK_CREATE_KERN
+# 4.11
+LN_CONFIG_SOCK_ACCEPT
 ]) # LN_PROG_LINUX
 
 #