Whamcloud - gitweb
LU-4726 ptlrpc: vfs_rename api changed
[fs/lustre-release.git] / lustre / autoconf / lustre-core.m4
index e8802dc..a42b479 100644 (file)
@@ -765,6 +765,24 @@ AC_DEFUN([LC_HAVE_FHANDLE_SYSCALLS],
 ])
 
 #
+# 2.6.39 renames is_owner_or_cap to inode_owner_or_capable
+#
+AC_DEFUN([LC_HAVE_INODE_OWNER_OR_CAPABLE],
+[AC_MSG_CHECKING([if inode_owner_or_capable exist])
+LB_LINUX_TRY_COMPILE([
+       #include <linux/fs.h>
+],[
+       inode_owner_or_capable(NULL);
+],[
+       AC_DEFINE(HAVE_INODE_OWNER_OR_CAPABLE, 1,
+               [inode_owner_or_capable exist])
+       AC_MSG_RESULT([yes])
+],[
+       AC_MSG_RESULT([no])
+])
+])
+
+#
 # 3.0 dirty_inode() has a flag parameter
 # see kernel commit aa38572954ade525817fe88c54faebf85e5a61c0
 #
@@ -1436,6 +1454,22 @@ LB_LINUX_TRY_COMPILE([
 ])
 ])
 
+# 3.13 has vfs_renane with 5 args
+AC_DEFUN([LC_VFS_RENAME_5ARGS],
+[AC_MSG_CHECKING([if kernel has vfs_rename with 5 args])
+LB_LINUX_TRY_COMPILE([
+       #include <linux/fs.h>
+],[
+       vfs_rename(NULL, NULL, NULL, NULL, NULL);
+], [
+       AC_MSG_RESULT([yes])
+       AC_DEFINE(HAVE_VFS_RENAME_5ARGS, 1,
+               [kernel has vfs_rename with 5 args])
+],[
+       AC_MSG_RESULT([no])
+])
+])
+
 #
 # LC_PROG_LINUX
 #
@@ -1487,6 +1521,7 @@ AC_DEFUN([LC_PROG_LINUX],
         LC_HAVE_FHANDLE_SYSCALLS
         LC_HAVE_FSTYPE_MOUNT
         LC_IOP_TRUNCATE
+        LC_HAVE_INODE_OWNER_OR_CAPABLE
 
         # 3.0
         LC_DIRTY_INODE_WITH_FLAG
@@ -1547,6 +1582,9 @@ AC_DEFUN([LC_PROG_LINUX],
         LC_OLDSIZE_TRUNCATE_PAGECACHE
         LC_KIOCB_KI_LEFT
 
+        # 3.13
+        LC_VFS_RENAME_5ARGS
+
         #
         if test x$enable_server != xno ; then
                LC_FUNC_DEV_SET_RDONLY