Whamcloud - gitweb
LU-13783 libcfs: support __vmalloc with only 2 args.
[fs/lustre-release.git] / libcfs / autoconf / lustre-libcfs.m4
index 529b534..6b20241 100644 (file)
@@ -1290,6 +1290,23 @@ EXTRA_KCFLAGS="$tmp_flags"
 ]) # LIBCFS_CACHE_DETAIL_WRITERS
 
 #
+# LIBCFS_VMALLOC_2ARGS
+#
+# kernel v5.8-rc1~201^2~19
+# mm: remove the pgprot argument to __vmalloc
+AC_DEFUN([LIBCFS_VMALLOC_2ARGS], [
+LB_CHECK_COMPILE([if __vmalloc has 2 args],
+vmalloc_2args, [
+       #include <linux/vmalloc.h>
+],[
+       __vmalloc(0, 0);
+],[
+       AC_DEFINE(HAVE_VMALLOC_2ARGS, 1,
+               [__vmalloc only takes 2 args.])
+])
+]) # LIBCFS_VMALLOC_2ARGS
+
+#
 # LIBCFS_HAVE_NR_UNSTABLE_NFS
 #
 # kernel v5.8-rc1~201^2~75
@@ -1312,6 +1329,44 @@ nr_unstable_nfs_exists, [
 EXTRA_KCFLAGS="$tmp_flags"
 ]) # LIBCFS_HAVE_NR_UNSTABLE_NFS
 
+#
+# LIBCFS_HAVE_MMAP_LOCK
+#
+# kernel v5.8-rc1~83^2~24
+# mmap locking API: rename mmap_sem to mmap_lock
+#
+AC_DEFUN([LIBCFS_HAVE_MMAP_LOCK], [
+LB_CHECK_COMPILE([if mmap_lock API is available],
+mmap_write_lock, [
+       #include <linux/mm.h>
+],[
+       mmap_write_lock(NULL);
+],[
+       AC_DEFINE(HAVE_MMAP_LOCK, 1,
+               [mmap_lock API is available.])
+])
+]) # LIBCFS_HAVE_MMAP_LOCK
+
+#
+# LIBCFS_KERNEL_SETSOCKOPT
+#
+# kernel v5.8-rc1~165^2~59^2
+# net: remove kernel_setsockopt
+AC_DEFUN([LIBCFS_KERNEL_SETSOCKOPT], [
+tmp_flags="$EXTRA_KCFLAGS"
+EXTRA_KCFLAGS="-Werror"
+LB_CHECK_COMPILE([if kernel_setsockopt still in use],
+kernel_setsockopt_exists, [
+       #include <linux/net.h>
+],[
+       kernel_setsockopt(NULL, 0, 0, NULL, 0);
+],[
+       AC_DEFINE(HAVE_KERNEL_SETSOCKOPT, 1,
+               [kernel_setsockopt still in use])
+])
+EXTRA_KCFLAGS="$tmp_flags"
+]) # LIBCFS_KERNEL_SETSOCKOPT
+
 AC_DEFUN([LIBCFS_PROG_LINUX_SRC], [] )
 AC_DEFUN([LIBCFS_PROG_LINUX_RESULTS], [])
 
@@ -1420,6 +1475,10 @@ LIBCFS_LOOKUP_USER_KEY
 LIBCFS_FORCE_SIG_WITH_TASK
 LIBCFS_CACHE_DETAIL_WRITERS
 LIBCFS_HAVE_NR_UNSTABLE_NFS
+# 5.8
+LIBCFS_HAVE_MMAP_LOCK
+LIBCFS_KERNEL_SETSOCKOPT
+LIBCFS_VMALLOC_2ARGS
 ]) # LIBCFS_PROG_LINUX
 
 #