# HG changeset patch # User Igor Sysoev # Date 1217863930 0 # Node ID 56964e5b77dbdc8dcd1b776d3cea32c06eb0b40b # Parent be9887d15b8e9f4b3fab627db0a71aa6e03b2a22 Solaris directio() diff --git a/auto/os/features b/auto/os/features --- 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 + #include " +ngx_feature_path= +ngx_feature_libs= +ngx_feature_test="directio(0, DIRECTIO_ON);" +. auto/feature diff --git a/src/os/unix/ngx_files.h b/src/os/unix/ngx_files.h --- 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