nginx-0.4.1
Igor Sysoev
is at rambler-co.ru
Thu Sep 14 19:01:33 MSD 2006
On Thu, 14 Sep 2006, Alexey Polyakov wrote:
> On 9/14/06, Evgeny Stepanischev <se at lixil.ru> wrote:
>
>> > *) Добавление: теперь на Linux nginx для статических запросов
>> > использует флаг O_NOATIME. Спасибо Yusuf Goolamabbas.
>>
>> А это зачем?..
>
> Видимо чтобы снизить нагрузку на ФС если она подмонтирована без
> noatime/nodiratime (или вообще поддержка noatime сломана/отсутствует).
Как оказалось, для O_NOATIME нужна CAP_FOWNER capability:
http://www.die.net/doc/linux/man/man7/capabilities.7.html
Прилагамый патч убирает O_NOATIME.
Игорь Сысоев
http://sysoev.ru
-------------- next part --------------
--- src/http/modules/ngx_http_index_module.c
+++ src/http/modules/ngx_http_index_module.c
@@ -239,8 +239,7 @@
return NGX_HTTP_INTERNAL_SERVER_ERROR;
}
- fd = ngx_open_file(ctx->path.data, NGX_FILE_RDONLY|NGX_FILE_NOATIME,
- NGX_FILE_OPEN);
+ fd = ngx_open_file(ctx->path.data, NGX_FILE_RDONLY, NGX_FILE_OPEN);
if (fd == (ngx_fd_t) NGX_AGAIN) {
ctx->current = i;
--- src/http/modules/ngx_http_static_module.c
+++ src/http/modules/ngx_http_static_module.c
@@ -125,8 +125,7 @@
return NGX_HTTP_INTERNAL_SERVER_ERROR;
}
- fd = ngx_open_file(path.data, NGX_FILE_RDONLY|NGX_FILE_NOATIME,
- NGX_FILE_OPEN);
+ fd = ngx_open_file(path.data, NGX_FILE_RDONLY, NGX_FILE_OPEN);
if (fd == NGX_INVALID_FILE) {
err = ngx_errno;
--- src/os/unix/ngx_files.h
+++ src/os/unix/ngx_files.h
@@ -28,11 +28,6 @@
#define NGX_FILE_TRUNCATE O_TRUNC
#define NGX_FILE_APPEND O_APPEND
-#ifdef O_NOATIME
-#define NGX_FILE_NOATIME O_NOATIME
-#else
-#define NGX_FILE_NOATIME 0
-#endif
#define ngx_close_file close
#define ngx_close_file_n "close()"
More information about the nginx-ru
mailing list