LINUX: consolidate duplicate code in osi_TryEvictDentries
[openafs.git] / acinclude.m4
index 26bae1e..f8edc67 100644 (file)
@@ -704,6 +704,14 @@ else
                        AFS_SYSNAME="x86_darwin_160"
                        OSXSDK="macosx10.12"
                        ;;
+               x86_64-apple-darwin17.*)
+                       AFS_SYSNAME="x86_darwin_170"
+                       OSXSDK="macosx10.13"
+                       ;;
+               i?86-apple-darwin17.*)
+                       AFS_SYSNAME="x86_darwin_170"
+                       OSXSDK="macosx10.13"
+                       ;;
                sparc-sun-solaris2.8)
                        AFS_SYSNAME="sun4x_58"
                        ;;
@@ -931,6 +939,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                                                unsigned int flags])
 
                 dnl Check for header files
+                AC_CHECK_LINUX_HEADER([cred.h])
                 AC_CHECK_LINUX_HEADER([config.h])
                 AC_CHECK_LINUX_HEADER([exportfs.h])
                 AC_CHECK_LINUX_HEADER([freezer.h])
@@ -938,6 +947,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 AC_CHECK_LINUX_HEADER([semaphore.h])
                 AC_CHECK_LINUX_HEADER([seq_file.h])
                 AC_CHECK_LINUX_HEADER([sched/signal.h])
+                AC_CHECK_LINUX_HEADER([uaccess.h])
 
                 dnl Type existence checks
                 AC_CHECK_LINUX_TYPE([struct vfs_path], [dcache.h])
@@ -999,12 +1009,19 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
 
                 dnl Function existence checks
 
-                AC_CHECK_LINUX_FUNC([__vfs_read],
+                AC_CHECK_LINUX_FUNC([__vfs_write],
+                                    [#include <linux/fs.h>],
+                                    [__vfs_write(NULL, NULL, 0, NULL);])
+                AC_CHECK_LINUX_FUNC([kernel_write],
                                     [#include <linux/fs.h>],
-                                    [__vfs_read(NULL, NULL, 0, NULL);])
+                                    [kernel_write(NULL, NULL, 0, NULL);])
                  AC_CHECK_LINUX_FUNC([bdi_init],
                                     [#include <linux/backing-dev.h>],
                                     [bdi_init(NULL);])
+                 AC_CHECK_LINUX_FUNC([super_setup_bdi],
+                                     [#include <linux/backing-dev.h>],
+                                     [struct super_block *sb;
+                                     super_setup_bdi(sb);])
                  AC_CHECK_LINUX_FUNC([PageChecked],
                                     [#include <linux/mm.h>
 #include <linux/page-flags.h>],
@@ -1156,6 +1173,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 LINUX_AOP_WRITEBACK_CONTROL
                 LINUX_FS_STRUCT_FOP_HAS_SPLICE
                 LINUX_KERNEL_POSIX_LOCK_FILE_WAIT_ARG
+                LINUX_KERNEL_PAGEVEC_INIT_COLD_ARG
                 LINUX_POSIX_TEST_LOCK_RETURNS_CONFLICT
                 LINUX_POSIX_TEST_LOCK_CONFLICT_ARG
                 LINUX_KERNEL_SOCK_CREATE
@@ -1186,6 +1204,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 LINUX_DOP_D_REVALIDATE_TAKES_UNSIGNED
                 LINUX_IOP_LOOKUP_TAKES_UNSIGNED
                 LINUX_D_INVALIDATE_IS_VOID
+                LINUX_KERNEL_READ_OFFSET_IS_LAST
 
                 dnl If we are guaranteed that keyrings will work - that is
                 dnl  a) The kernel has keyrings enabled