Whamcloud - gitweb
LU-4287 autoconf: Improve test for proc write and read functions
[fs/lustre-release.git] / lustre / autoconf / lustre-core.m4
index 0732b9b..f47bc5f 100644 (file)
@@ -1258,13 +1258,12 @@ AC_DEFUN([LC_HAVE_ONLY_PROCFS_SEQ],
 LB_LINUX_TRY_COMPILE([
        #include <linux/proc_fs.h>
 ],[
-       struct inode *inode = NULL;
-       PDE_DATA(inode);
+       ((struct proc_dir_entry *)0)->write_proc(NULL, NULL, 0, NULL);
+],[
+       AC_MSG_RESULT([no])
 ],[
        AC_DEFINE(HAVE_ONLY_PROCFS_SEQ, 1, [only seq_files supported])
        AC_MSG_RESULT([yes])
-],[
-       AC_MSG_RESULT([no])
 ])
 ])
 
@@ -1288,6 +1287,25 @@ LB_LINUX_TRY_COMPILE([
 ])
 
 #
+# 3.11 need to access d_count to get dentry reference count
+#
+AC_DEFUN([LC_HAVE_DCOUNT],
+[AC_MSG_CHECKING([if d_count exist])
+LB_LINUX_TRY_COMPILE([
+       #include <linux/dcache.h>
+],[
+       struct dentry de;
+
+       d_count(&de);
+],[
+       AC_DEFINE(HAVE_D_COUNT, 1, [d_count exist])
+       AC_MSG_RESULT([yes])
+],[
+       AC_MSG_RESULT([no])
+])
+])
+
+#
 # LC_PROG_LINUX
 #
 # Lustre linux kernel checks
@@ -1386,6 +1404,9 @@ AC_DEFUN([LC_PROG_LINUX],
         LC_HAVE_ONLY_PROCFS_SEQ
         LC_BLKDEV_RELEASE_RETURN_INT
 
+        # 3.11
+        LC_HAVE_DCOUNT
+
         #
         if test x$enable_server != xno ; then
                LC_FUNC_DEV_SET_RDONLY