[oe] [meta-webserver] [PATCH] fix nginx with large files support
Wangchong Zhou
fffonion at gmail.com
Wed Oct 25 01:47:12 UTC 2017
Thanks! This should work.
Signed-off-by: Wangchong Zhou <fffonion at gmail.com>
---
meta-webserver/recipes-httpd/nginx/nginx.inc | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc
b/meta-webserver/recipes-httpd/nginx/nginx.inc
index 4a97e2670..00ce132b3 100644
--- a/meta-webserver/recipes-httpd/nginx/nginx.inc
+++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
@@ -41,6 +41,12 @@ do_configure () {
else
PTRSIZE=4
fi
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'largefile', 'true',
'false', d)}; then
+ OFFTSIZE=8
+ else
+ OFFTSIZE=${PTRSIZE}
+ fi
+
echo $CFLAGS
echo $LDFLAGS
@@ -57,7 +63,7 @@ do_configure () {
--with-ptr-size=${PTRSIZE} \
--with-sig-atomic-t=${PTRSIZE} \
--with-size-t=${PTRSIZE} \
- --with-off-t=${PTRSIZE} \
+ --with-off-t=${OFFTSIZE} \
--with-time-t=${PTRSIZE} \
--with-sys-nerr=132 \
--conf-path=${sysconfdir}/nginx/nginx.conf \
--
2.13.5
On Tue, Oct 24, 2017 at 8:31 PM, Khem Raj <raj.khem at gmail.com> wrote:
> On Tue, Oct 24, 2017 at 3:27 PM, Wangchong Zhou <fffonion at gmail.com>
> wrote:
> > Resend a patch using largefile DISTRO_FEATURES.
> >
> >
> > Signed-off-by: Wangchong Zhou <fffonion at gmail.com>
> > ---
> > meta-webserver/recipes-httpd/nginx/nginx.inc | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > b/meta-webserver/recipes-httpd/nginx/nginx.inc
> > index 4a97e2670..84ce0fb4d 100644
> > --- a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > +++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
> > @@ -57,7 +57,7 @@ do_configure () {
> > --with-ptr-size=${PTRSIZE} \
> > --with-sig-atomic-t=${PTRSIZE} \
> > --with-size-t=${PTRSIZE} \
> > - --with-off-t=${PTRSIZE} \
> > +
> > --with-off-t=${@bb.utils.contains('DISTRO_FEATURES','
> largefile','8','4',d)};
> > \
>
> Could you still keep using PTRSIZE in else case above ?
>
> > --with-time-t=${PTRSIZE} \
> > --with-sys-nerr=132 \
> > --conf-path=${sysconfdir}/nginx/nginx.conf \
> > --
> > 2.13.5
> >
> > On Tue, Oct 24, 2017 at 2:28 PM, Wangchong Zhou <fffonion at gmail.com>
> wrote:
> >>
> >> Hi,
> >> The nginx receipt hardcoded size of off_t to be same as ptrsize, which
> > can break large files support on 32bit machines. The http range header
> will
> > fail with a code 416 on files bigger than 2G. Changing it to 8 will fix
> the
> > problem.
> >>
> >> I don't think hardcode off_t to 8 is a neat way of fixing this. Is there
> > a better way to detect large files support?
> >>
> >>
> >> Author: Wangchong Zhou <fffonion at gmail.com>
> >> Date: Tue Oct 24 14:21:35 2017 -0400
> >>
> >> fix large files support in nginx by setting off_t to 8 bytes
> >>
> >> Signed-off-by: Wangchong Zhou <fffonion at gmail.com>
> >>
> >> diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > b/meta-webserver/recipes-httpd/nginx/nginx.inc
> >> index 4a97e2670..4cdf892c7 100644
> >> --- a/meta-webserver/recipes-httpd/nginx/nginx.inc
> >> +++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
> >> @@ -57,7 +57,7 @@ do_configure () {
> >> --with-ptr-size=${PTRSIZE} \
> >> --with-sig-atomic-t=${PTRSIZE} \
> >> --with-size-t=${PTRSIZE} \
> >> - --with-off-t=${PTRSIZE} \
> >> + --with-off-t=8 \
> >> --with-time-t=${PTRSIZE} \
> >> --with-sys-nerr=132 \
> >> --conf-path=${sysconfdir}/nginx/nginx.conf \
> >>
> >>
> >
> >
> >
> > --
> > Regards
> > fffonion (B607 2745 84E8 D5E5)
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel at lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
--
Regards
fffonion (B607 2745 84E8 D5E5 <https://yooooo.us/gpg.txt>)
More information about the Openembedded-devel
mailing list