]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Disable vectored positional IO if no 64bit support
authorSimon Wilkinson <sxw@your-file-system.com>
Sun, 6 Mar 2011 16:06:36 +0000 (16:06 +0000)
committerDerrick Brashear <shadow@dementia.org>
Tue, 8 Mar 2011 04:26:24 +0000 (20:26 -0800)
In order to support vectored positional I/O, and large files, we
need there to be an implementation of preadv64 and pwritev64. If
this isn't present, then just disable HAVE_PIOV.

(cherry picked from commit 98a0c2f47b8641e3e31ed7d2f7d84c2eb484ef51)
Reviewed-on: http://gerrit.openafs.org/4153
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Change-Id: I4e199c748d7b88ff7076106b19c3dec0e60be39a
Reviewed-on: http://gerrit.openafs.org/4160
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
acinclude.m4

index 55f6274aa9d6bcb1026e666e0b8f535b36e61846..51f2f6d2d1b9f5c8d1f7fca1141d7674a0d9638b 100644 (file)
@@ -1266,7 +1266,7 @@ AC_CHECK_FUNCS(snprintf strlcat strlcpy flock getrlimit)
 AC_CHECK_FUNCS(setprogname getprogname sigaction mkstemp vsnprintf strerror strcasestr)
 AC_CHECK_FUNCS(setvbuf vsyslog getcwd)
 AC_CHECK_FUNCS(regcomp regexec regerror)
-AC_CHECK_FUNCS(fseeko64 ftello64 pread preadv pwrite pwritev)
+AC_CHECK_FUNCS(fseeko64 ftello64 pread preadv pwrite pwritev preadv64 pwritev64)
 
 case $AFS_SYSNAME in
 *hp_ux* | *hpux*)
@@ -1282,13 +1282,13 @@ case $AFS_SYSNAME in
      AC_MSG_RESULT(no)
    fi
    AC_MSG_CHECKING([for vectored positional I/O])
-   if test "$ac_cv_func_preadv" = "yes" && \
-           test "$ac_cv_func_pwritev" = "yes"; then
-      AC_DEFINE(HAVE_PIOV, 1, [define if you have preadv() and pwritev()])
-      AC_MSG_RESULT(yes)
-   else
-     AC_MSG_RESULT(no)
-   fi
+   AS_IF([test "$ac_cv_func_preadv" = "yes" -a \
+               "$ac_cv_func_pwritev" = "yes" -a \
+              "$ac_cv_func_preadv64" = "yes" -a \
+              "$ac_cv_func_pwritev64" = "yes"],
+        [AC_DEFINE(HAVE_PIOV, 1, [define if you have preadv() and pwritev()])
+         AC_MSG_RESULT(yes)],
+        [AC_MSG_RESULT(no)])
    ;;
 esac