aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_file_aio_read.c
Commit message (Collapse)AuthorAge
* Fixed portability issues with union sigval.Sergey Kandaurov2019-01-28
| | | | | | | | | | | | | | | | | | AIO support in nginx was originally developed against FreeBSD versions 4-6, where the sival_ptr field was named as sigval_ptr (seemingly by mistake[1]), which made nginx use the only name available then. The standard-complaint name was restored in 2005 (first appeared in FreeBSD 7.0, 2008), retaining compatibility with previous versions[2][3]. In DragonFly, similar changes were committed in 2009[4], with backward compatibility recently removed[5]. The change switches to the standard name, retaining compatibility with old FreeBSD versions. [1] https://svnweb.freebsd.org/changeset/base/48621 [2] https://svnweb.freebsd.org/changeset/base/152029 [3] https://svnweb.freebsd.org/changeset/base/174003 [4] https://gitweb.dragonflybsd.org/dragonfly.git/commit/3693401 [5] https://gitweb.dragonflybsd.org/dragonfly.git/commit/7875042
* Fixed logging.Sergey Kandaurov2016-03-31
|
* Refactored sendfile() AIO preload.Valentin Bartenev2015-02-11
| | | | | | | | 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.
* Fixed AIO error handling on FreeBSD.Maxim Dounin2012-01-30
| | | | | | | | | The aio_return() must be called regardless of the error returned by aio_error(). Not calling it resulted in various problems up to segmentation faults (as AIO events are level-triggered and were reported again and again). Additionally, in "aio sendfile" case r->blocked was incremented in case of error returned from ngx_file_aio_read(), thus causing request hangs.
* Copyright updated.Maxim Konovalov2012-01-18
|
* Replaced "can not" with "cannot" and "could not" in a bunch of places.Ruslan Ermilov2011-09-19
| | | | Fixed nearby grammar errors.
* Bugfix: open_file_cache lost is_directio flag.Maxim Dounin2011-09-05
| | | | | | 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.
* export aio presence knowledge to prevent using "aio sendfile",Igor Sysoev2009-11-05
| | | | if aio does not present
* aio sendfileIgor Sysoev2009-08-30
|
* FreeBSD and Linux AIO supportIgor Sysoev2009-08-28