Welcome! Log In Create A New Profile

Advanced

[nginx] Unbreak building on Linux without sendfile64() support.

Valentin Bartenev
August 15, 2013 11:20AM
details: http://hg.nginx.org/nginx/rev/bdb3588681c9
branches:
changeset: 5322:bdb3588681c9
user: Valentin Bartenev <vbart@nginx.com>
date: Thu Aug 15 19:14:33 2013 +0400
description:
Unbreak building on Linux without sendfile64() support.

It was broken in 8e446a2daf48 when the NGX_SENDFILE_LIMIT constant was added
to ngx_linux_sendfile_chain.c having the same name as already defined one in
ngx_linux_config.h.

The newer is needed to overcome a bug in old Linux kernels by limiting the
number of bytes to send per sendfile() syscall. The older is used with
sendfile() on ancient kernels that works with 32-bit offsets only.

One of these renamed to NGX_SENDFILE_MAXSIZE.

diffstat:

src/os/unix/ngx_linux_sendfile_chain.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)

diffs (23 lines):

diff -r 9806f7932474 -r bdb3588681c9 src/os/unix/ngx_linux_sendfile_chain.c
--- a/src/os/unix/ngx_linux_sendfile_chain.c Tue Aug 13 17:47:04 2013 +0400
+++ b/src/os/unix/ngx_linux_sendfile_chain.c Thu Aug 15 19:14:33 2013 +0400
@@ -24,7 +24,7 @@
* so we limit it to 2G-1 bytes.
*/

-#define NGX_SENDFILE_LIMIT 2147483647L
+#define NGX_SENDFILE_MAXSIZE 2147483647L


#if (IOV_MAX > 64)
@@ -63,8 +63,8 @@ ngx_linux_sendfile_chain(ngx_connection_

/* the maximum limit size is 2G-1 - the page size */

- if (limit == 0 || limit > (off_t) (NGX_SENDFILE_LIMIT - ngx_pagesize)) {
- limit = NGX_SENDFILE_LIMIT - ngx_pagesize;
+ if (limit == 0 || limit > (off_t) (NGX_SENDFILE_MAXSIZE - ngx_pagesize)) {
+ limit = NGX_SENDFILE_MAXSIZE - ngx_pagesize;
}



_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[nginx] Unbreak building on Linux without sendfile64() support.

Valentin Bartenev 771 August 15, 2013 11:20AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 171
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready