mirror of
https://github.com/nginx/nginx.git
synced 2025-02-25 18:55:26 -06:00
cache directio flag in open file cache
This commit is contained in:
parent
d0df295655
commit
77cdae1814
@ -205,6 +205,7 @@ ngx_open_cached_file(ngx_open_file_cache_t *cache, ngx_str_t *name,
|
||||
of->is_file = file->is_file;
|
||||
of->is_link = file->is_link;
|
||||
of->is_exec = file->is_exec;
|
||||
of->is_directio = file->is_directio;
|
||||
|
||||
if (!file->is_dir) {
|
||||
file->count++;
|
||||
@ -360,6 +361,7 @@ update:
|
||||
file->is_file = of->is_file;
|
||||
file->is_link = of->is_link;
|
||||
file->is_exec = of->is_exec;
|
||||
file->is_directio = of->is_directio;
|
||||
|
||||
if (!of->is_dir) {
|
||||
file->count++;
|
||||
@ -499,9 +501,9 @@ ngx_open_and_stat_file(u_char *name, ngx_open_file_info_t *of, ngx_log_t *log)
|
||||
of->fd = fd;
|
||||
|
||||
if (of->directio <= ngx_file_size(&fi)) {
|
||||
if (ngx_directio(fd) == -1) {
|
||||
if (ngx_directio_on(fd) == -1) {
|
||||
ngx_log_error(NGX_LOG_ALERT, log, ngx_errno,
|
||||
ngx_directio_n " \"%s\" failed", name);
|
||||
ngx_directio_on_n " \"%s\" failed", name);
|
||||
|
||||
} else {
|
||||
of->is_directio = 1;
|
||||
|
@ -63,6 +63,7 @@ struct ngx_cached_open_file_s {
|
||||
unsigned is_file:1;
|
||||
unsigned is_link:1;
|
||||
unsigned is_exec:1;
|
||||
unsigned is_directio:1;
|
||||
|
||||
ngx_event_t *event;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user