Mercurial > hg > nginx
comparison src/os/unix/ngx_linux_aio_read.c @ 4076:37da005a5808
Bugfix: open_file_cache lost is_directio flag.
On file retest open_file_cache lost is_directio if file wasn't changed.
This caused unaligned operations under Linux to fail with EINVAL.
It wasn't noticeable with AIO though, as errors wasn't properly logged.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 05 Sep 2011 16:36:19 +0000 |
parents | cd04f652478c |
children | 6903dac6ad19 |
comparison
equal
deleted
inserted
replaced
4075:39574a944f66 | 4076:37da005a5808 |
---|---|
72 ngx_set_errno(0); | 72 ngx_set_errno(0); |
73 return aio->res; | 73 return aio->res; |
74 } | 74 } |
75 | 75 |
76 ngx_set_errno(-aio->res); | 76 ngx_set_errno(-aio->res); |
77 | |
78 ngx_log_error(NGX_LOG_CRIT, file->log, ngx_errno, | |
79 "aio read \"%s\" failed", file->name.data); | |
80 | |
77 return NGX_ERROR; | 81 return NGX_ERROR; |
78 } | 82 } |
79 | 83 |
80 ngx_memzero(&aio->aiocb, sizeof(struct iocb)); | 84 ngx_memzero(&aio->aiocb, sizeof(struct iocb)); |
81 | 85 |