Bug 199429 - httpd parent process segfaults after "apachectl graceful" when unable to connect to port 80
httpd parent process segfaults after "apachectl graceful" when unable to conn...
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: httpd (Show other bugs)
5
All Linux
medium Severity high
: ---
: ---
Assigned To: Joe Orton
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2006-07-19 11:28 EDT by Tomasz Ostrowski
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version: 2.2.2-1.2
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-07-29 05:03:30 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Backtrace of segfaulted parent httpd process (1.82 KB, text/plain)
2006-07-19 11:28 EDT, Tomasz Ostrowski
no flags Details

  None (edit)
Description Tomasz Ostrowski 2006-07-19 11:28:00 EDT
Description of problem:
httpd parent process segfaults when it is unable to connect to port 80 and it
gets a graceful restart command ("apachectl graceful").

Version-Release number of selected component (if applicable):
httpd-2.2.2-1.0
selinux-policy-targeted-2.3.2-1.fc5

How reproducible:
Always

Steps to Reproduce:
1. service httpd start
2. setenforcing 1 ### this is a default
3. setsebool httpd_can_network_relay=0 ### this is a default
4. setsebool httpd_disable_trans=0 ### this is a default
5. apachectl graceful
6. tail -1 /var/log/httpd/error_log
  
Actual results:
[Wed Jul 19 17:02:44 2006] [notice] seg fault or similar nasty error detected in
the parent process

Expected results:
[Wed Jul 19 17:28:19 2006] [notice] Apache/2.2.2 (Fedora) configured -- resuming
normal operations

Additional info:
Default selinux-policy-targeted-2.3.2-1.fc5 does not allow httpd process to
connect to port 80 so "apachectl graceful" kills apache on default updated
Fedora Core 5, as described in bug 199419.

I'm attaching a backtrace of segfaulted process. It is an output of "(gdb) bt".
Output of "(gdb) bt full" is not very verbose:
#0  apr_palloc (pool=0x0, size=0) at memory/unix/apr_pools.c:601
        active = (apr_memnode_t *) 0xb7fafcd8
        node = Variable "node" is not available.
Maybe if httpd/apr was compiled without optimizations it would be more useful.
I've installed httpd-debuginfo and apr-debuginfo.
Comment 1 Tomasz Ostrowski 2006-07-19 11:28:00 EDT
Created attachment 132691 [details]
Backtrace of segfaulted parent httpd process
Comment 2 Joe Orton 2006-07-19 11:33:49 EDT
Ah, thanks a lot.  This is caused by a mis-merged patch on the line where httpd
logs the error from the connect() failure, the wrong pointer is being passed.
Comment 3 Fedora Update System 2006-07-28 11:36:33 EDT
httpd-2.2.2-1.2 has been pushed for fc5, which should resolve this issue.  If these problems are still present in this version, then please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.