changeset 2143:56964e5b77db

Solaris directio()
author Igor Sysoev <igor@sysoev.ru>
date Mon, 04 Aug 2008 15:32:10 +0000
parents be9887d15b8e
children 43bde71f0bbe
files auto/os/features src/os/unix/ngx_files.h
diffstat 2 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/auto/os/features
+++ b/auto/os/features
@@ -190,3 +190,14 @@ ngx_feature_path=
 ngx_feature_libs=
 ngx_feature_test="fcntl(0, F_NOCACHE, 1);"
 . auto/feature
+
+
+ngx_feature="directio()"
+ngx_feature_name="NGX_HAVE_DIRECTIO"
+ngx_feature_run=no
+ngx_feature_incs="#include <sys/types.h>
+                  #include <sys/fcntl.h>"
+ngx_feature_path=
+ngx_feature_libs=
+ngx_feature_test="directio(0, DIRECTIO_ON);"
+. auto/feature
--- a/src/os/unix/ngx_files.h
+++ b/src/os/unix/ngx_files.h
@@ -199,6 +199,11 @@ ngx_int_t ngx_directio(ngx_fd_t fd);
 #define ngx_directio(fd)         fcntl(fd, F_NOCACHE, 1)
 #define ngx_directio_n           "fcntl(F_NOCACHE)"
 
+#elif (NGX_HAVE_DIRECTIO)
+
+#define ngx_directio(fd)         directio(fd, DIRECTIO_ON)
+#define ngx_directio_n           "directio(DIRECTIO_ON)"
+
 #else
 
 #define ngx_directio(fd)         0