httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Niklas Edmundsson <ni...@acc.umu.se>
Subject Re: httpd 2.4.25, mpm_event, ssl: segfaults
Date Fri, 03 Feb 2017 08:22:48 GMT
On Thu, 2 Feb 2017, Jacob Champion wrote:

>>> We've started to see spurious segfaults with httpd 2.4.25, mpm_event, ssl 
>>> on
>>> Ubuntu 14.04LTS. Not frequent, but none the less happening.
>>> 
>>> #4  ssl_io_filter_output (f=0x7f507013cfe0, bb=0x7f4f840be168) at
>>> ssl_engine_io.c:1746
>>>         data = 0x7f5075518000 <error: Cannot access memory at address
>>> 0x7f5075518000>
>>>         len = 4194304
>>>         bucket = 0x7f4f840b1ba8
>>>         status = <optimized out>
>>>         filter_ctx = 0x7f507013cf88
>>>         inctx = <optimized out>
>>>         outctx = 0x7f507013d008
>>>         rblock = APR_NONBLOCK_READ
>
> Idle thoughts: "Cannot access memory" in this case could be a red herring, if 
> Niklas' gdb can't peer into mmap'd memory spaces [1]. It seems reasonable 
> that the data in question could be mmap'd, given the nice round address and 4 
> MiB length (equal to APR_MMAP_LIMIT).

Oooh, hadn't even though of that...

> That doesn't mean we're looking in the wrong place, though, since SIGBUS can 
> also be generated by an out-of-bounds access to an mmap'd region.
>
> Niklas, what version of APR are you using? Are you serving large (> 4 MiB) 
> static files? I have not been able to reproduce so far (Ubuntu 16.04, httpd 
> 2.4.25 + mod_ssl + mpm_event).

Yes, this is a file archive offload target ONLY serving large files.

APR from httpd-2.4.25-deps.tar.bz2 and
./configure --prefix=/lap/apache/2.4.25.sslcleanuppatch --sysconfdir=/var/conf/apache2 --with-included-apr
--enable-nonportable-atomics=yes --enable-layout=GNU --enable-mpms-shared=all --with-gdbm
--without-berkeley-db --enable-mods-shared=all --enable-cache=shared --enable-cache-disk=shared
--enable-ssl=shared --enable-cgi=shared --enable-suexec --with-suexec-caller=www-srv --with-suexec-uidmin=1000
--with-suexec-gidmin=1000 CFLAGS=-O2 -
(yes, the cgi/suexec stuff isn't really used but we haven't gotten around to change our builds).

It's indeed using that APR according to 
/proc/pid/maps, libapr-1.so.0.5.2 in the httpd install tree.

/Nikke
-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  Niklas Edmundsson, Admin @ {acc,hpc2n}.umu.se      |     nikke@acc.umu.se
---------------------------------------------------------------------------
  This tagline SHAREWARE.  Send $5.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Mime
View raw message