Segmentation faults with v2.4.23 and 2.24.25

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi there,

I've been a long time httpd user and I have taken the habit of building from source, for a variety of reasons we won't go into here. It has worked for years, so that's good in my book.

However, the latest v2.4.25 release won't work on my setup and I am not sure why, nor do I know how I should go about providing the best information.
This is probably a bug in my setup, or it might be a bug somewhere else. I did try dbg, but that requires observing the crash when unfortunately I have no idea what triggers it (as evidenced by the log below, at a time when I am confident there was no one using that webserver - this is a backoffice server).

Here's what I usually do:
cd /usr/local/src ; rm -R httpd-2.4.23 ; tar -xjf httpd-2.4.23.tar.bz2 ; cd /usr/local/src/httpd-2.4.23
./buildconf --with-apr=/usr/local/src/apr-1.5.2 --with-apr-util=/usr/local/src/apr-util-1.5.4
./configure --prefix=/usr/local/apache2 --with-program-name=apache2 --with-mpm=prefork --disable-cgi --disable-imap --with-ssl --with-pcre --enable-mods-static="actions alias allowmethods auth-basic auth-digest authn-core authn-file authz-core authz-host authz-user autoindex cache deflate dir disk-cache dumpio env expires file-cache filter headers http http2 include info logio log-config mem-cache mime nghttp2-staticlib-deps negotiation proxy proxy-fcgi proxy-http rewrite remoteip setenvif slotmem_shm so socache-shmcb ssl status substitute unixd"
make && ./apache2 -V && ./apache2 -t -D DUMP_MODULES && ./apache2 -t -D DUMP_VHOSTS
sudo service apache2 stop && sudo make install && sudo service apache2 start

NB: That's an old script. Since the latest CVE about http2, I add @icing's patch before building from source. But that's beside the point.

However now with v2.4.25 and after adding php-5.6.29 like I usually do (yes this is mod_php, another thing we won't go into here), I get segmentation faults I didn't have until this version.

From /var/log/apache2/error_log:
[Fri Dec 30 06:25:03.376942 2016] [mpm_prefork:notice] [pid 20751] AH00171: Graceful restart requested, doing restart
[Fri Dec 30 06:25:03.447347 2016] [auth_digest:notice] [pid 20751] AH01757: generating secret for digest authentication ...
[Fri Dec 30 06:25:03.448732 2016] [lbmethod_heartbeat:notice] [pid 20751] AH02282: No slotmem from mod_heartmonitor
[Fri Dec 30 06:25:03.458291 2016] [core:emerg] [pid 20751] (17)File exists: AH00023: Couldn't create the watchdog-callback mutex (file /usr/local/apache2/logs/watchdog-callback-_proxy_hcheck_.20751)
[Fri Dec 30 06:25:03.458317 2016] [:emerg] [pid 20751] AH00020: Configuration Failed, exiting

Then when I restart the service:
[Fri Dec 30 09:19:03.211641 2016] [auth_digest:notice] [pid 4467] AH01757: generating secret for digest authentication ...
[Fri Dec 30 09:19:03.213931 2016] [lbmethod_heartbeat:notice] [pid 4467] AH02282: No slotmem from mod_heartmonitor
[Fri Dec 30 09:19:03.229142 2016] [core:warn] [pid 4467] AH00098: pid file /usr/local/apache2/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Fri Dec 30 09:19:03.233277 2016] [mpm_prefork:notice] [pid 4467] AH00163: Apache/2.4.23 (Unix) OpenSSL/1.0.2j configured -- resuming normal operations
[Fri Dec 30 09:19:03.233304 2016] [core:notice] [pid 4467] AH00094: Command line: '/usr/local/apache2/bin/apache2'


Now, heartbeat, heartmonitor and watchdog are 3 modules I have never included in my build before since I don't seem to need them, and they are not referenced in any of my config files. Though from what I understand, they seem to be required by v2.4.25? At least, httpd-2.4.25 wouldn't build or start without them.

The log line "lbmethod_heartbeat:notice" at startup has likely been there for a number of versions, I honestly haven't noticed and it hasn't been cause for crashes until now.
What I know for sure is that the "apache2 -t -D DUMP_MODULES" command didn't show any of those three modules before. What I did notice since v2.4.25, are the core:emerg log lines which tend to cause httpd to stop responding to requests. A simple "service apache2 restart" usually does the trick for a while, then the error comes back and I need to do it again.

This error didn't show up until v2.4.25 in my setup because the three modules were not required and hence not built.
When I rebuilt and reinstalled v2.4.23 with the same modules, the errors persisted.
When I removed the three modules from my v2.4.23 build, the errors stopped happening.

Any help would be appreciated (or pointers to the right channel if this is not it).

Thanks,


[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux