Mercurial > hg > nginx
diff src/event/ngx_event.h @ 5980:ccad84a174e0
Refactored sendfile() AIO preload.
This reduces layering violation and simplifies the logic of AIO preread, since
it's now triggered by the send chain function itself without falling back to
the copy filter. The context of AIO operation is now stored per file buffer,
which makes it possible to properly handle cases when multiple buffers come
from different locations, each with its own configuration.
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Wed, 11 Feb 2015 17:52:15 +0300 |
parents | 3efdd7788bb0 |
children | ea58dfd07782 |
line wrap: on
line diff
--- a/src/event/ngx_event.h Fri Jan 23 15:23:29 2015 +0300 +++ b/src/event/ngx_event.h Wed Feb 11 17:52:15 2015 +0300 @@ -168,6 +168,10 @@ ngx_event_handler_pt handler; ngx_file_t *file; +#if (NGX_HAVE_AIO_SENDFILE) + ssize_t (*preload_handler)(ngx_buf_t *file); +#endif + ngx_fd_t fd; #if (NGX_HAVE_EVENTFD) @@ -181,10 +185,6 @@ size_t nbytes; #endif -#if (NGX_HAVE_AIO_SENDFILE) - off_t last_offset; -#endif - ngx_aiocb_t aiocb; ngx_event_t event; };