You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl@perl.apache.org by "John P. Gibbons" <jo...@dashing.com> on 2004/07/19 20:03:54 UTC

Embperl 2.0 segmentation fault on apachectl configtest

Hi,

  I recently installed Embperl 2.0b11 to experiment with it and have 
encountered the apachectl configtest segmentation fault that others have 
mentioned. Gerald, you said (in a list post from October 2002):

 >You can savely ignore this. Run the tests with
 >make test TESTARGS="-i"
 >and you should see only test failures for pod test and only problems with
 >spaces, which doesn't matter.
 >> I did make install anyway. Now `*apachectl* *configtest*` gives 
segmentation
 >> fault. The culprit is "PerlModule Embperl"
 >>
 >
 >I have seen this once in the past on windows when installing Apache as a
 >service. Seems to be a problem that mod_perl is not fully initialized 
when
 >doing the syntax check. As far as I can tell (and Andre also says) it 
should
 >work with no problems.
 >
 >I will have a look at both problems before the next beta
 >
 >Gerald

I also get this when I do an apachectl restart, but a stop and then 
start works, and Embperl 2.0 seems to be ok. Has there been any progress 
on this? I'm not really comfortable with it not working properly. Of 
course 2.0 is still beta, so I'm not complaining! :-)

Speaking of that, it's been several months since the last 2.0 release. 
Does that mean that we're close to a real 2.0 final? Or have you just 
been busy Gerald?

Cheers,
John


---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


Re: Embperl 2.0 segmentation fault on apachectl configtest

Posted by "John P. Gibbons" <jo...@dashing.com>.
Gerald Richter wrote:

>Rebuild with debug options. In Embperl directory
>
>perl Makefile.PL debug
>make install
>
>
>Then run
>
>gdb /path/to/httpd
>set args -X -t -f /path/to/your/httpd.conf
>r
>--> program is running, segfault should occur
>BT
>--> shows stackbacktrace
>
>  
>
I did the above but this was the result:

# gdb /usr/sbin/httpd
set argsGNU gdb Red Hat Linux (5.2-2)
 Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain 
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...-X(no debugging symbols 
found)...
 (gdb) set args -X -t -f /etc/httpd/conf/httpd.conf
(gdb) r
Starting program: /usr/sbin/httpd -X -t -f /etc/httpd/conf/httpd.conf
(no debugging symbols found)...[New Thread 1024 (LWP 18423)]
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...
(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...(no debugging symbols found)...(no debugging 
symbols found)...

Syntax OK

(no debugging symbols found)...(no debugging symbols found)...(no 
debugging symbols found)...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 18423)]
0x08054a60 in ap_remove_module ()
(gdb) BT
#0  0x08054a60 in ap_remove_module ()
#1  0x08054b6f in ap_remove_loaded_module ()
#2  0x0804fdf3 in unload_module ()
#3  0x08051bf9 in run_cleanups ()
#4  0x080506ab in ap_clear_pool ()
#5  0x08050711 in ap_destroy_pool ()
#6  0x0805067c in ap_clear_pool ()
#7  0x08050711 in ap_destroy_pool ()
#8  0x0805dcc2 in clean_parent_exit ()
#9  0x08060e45 in main ()
#10 0x42017589 in __libc_start_main () from /lib/i686/libc.so.6
(gdb)
#0  0x08054a60 in ap_remove_module ()
#1  0x08054b6f in ap_remove_loaded_module ()
#2  0x0804fdf3 in unload_module ()
#3  0x08051bf9 in run_cleanups ()
#4  0x080506ab in ap_clear_pool ()
#5  0x08050711 in ap_destroy_pool ()
#6  0x0805067c in ap_clear_pool ()
#7  0x08050711 in ap_destroy_pool ()
#8  0x0805dcc2 in clean_parent_exit ()
#9  0x08060e45 in main ()
#10 0x42017589 in __libc_start_main () from /lib/i686/libc.so.6
(gdb)
#0  0x08054a60 in ap_remove_module ()
#1  0x08054b6f in ap_remove_loaded_module ()
#2  0x0804fdf3 in unload_module ()
#3  0x08051bf9 in run_cleanups ()
#4  0x080506ab in ap_clear_pool ()
#5  0x08050711 in ap_destroy_pool ()
#6  0x0805067c in ap_clear_pool ()
#7  0x08050711 in ap_destroy_pool ()
#8  0x0805dcc2 in clean_parent_exit ()
#9  0x08060e45 in main ()
#10 0x42017589 in __libc_start_main () from /lib/i686/libc.so.6
(gdb) BT
#0  0x08054a60 in ap_remove_module ()
#1  0x08054b6f in ap_remove_loaded_module ()
#2  0x0804fdf3 in unload_module ()
#3  0x08051bf9 in run_cleanups ()
#4  0x080506ab in ap_clear_pool ()
#5  0x08050711 in ap_destroy_pool ()
#6  0x0805067c in ap_clear_pool ()
#7  0x08050711 in ap_destroy_pool ()
#8  0x0805dcc2 in clean_parent_exit ()
#9  0x08060e45 in main ()
#10 0x42017589 in __libc_start_main () from /lib/i686/libc.so.6



Not sure what the debugging symbols errors are about. I did recompile 
and re-install with the debug flag.  I hope that helps.

>On which system do run this test and which Perl version do you using?
>
>  
>
Redhat 7.2 (kernel  2.4.20-28.7)
Apache 1.3.27
mod_perl 1.26
Embperl 2.0b11
perl 5.6.1

These are all the standard packages from Redhat with the exception of 
Embperl of course.



>Could you run 
>
>make test TESTARGS="-i"
>
>  
>

As expected make test TESTARGS="-i" completes with no errors.

Cheers,
John


---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


RE: Embperl 2.0 segmentation fault on apachectl configtest

Posted by Gerald Richter <ri...@ecos.de>.
> >To debug this further I would need a sack backtrace. Do you 
> know how to 
> >create it?
> >
> >  
> >
> 
> No, but if you point me in the right direction I'm sure I can do it.
> 

Rebuild with debug options. In Embperl directory

perl Makefile.PL debug
make install


Then run

gdb /path/to/httpd
set args -X -t -f /path/to/your/httpd.conf
r
--> program is running, segfault should occur
BT
--> shows stackbacktrace

> >>It did however allow "make test" to get farther where before it 
> >>complained when trying to load httpd.
> >>
> >>    
> >>
> >
> >How far does it get?
> >
> >  
> >
> 
> Starting httpd...      
> pid = 12804  ok
> 
> Testing mod_perl mode...
> 
> #0 ascii...                   ok
> #1 pure.htm...                ok
> #2 nooutput.htm...            ok
> #3 nooutput.htm...            ok
> #4 plain.htm...               ok
> #5 plain.htm...               ok
> #6 plain.htm...               ok
> #7 plainblock.htm...          ok
> #8 plainblock.htm...          ok
> #12 error.htm...             
> 
> Expected 4 more error(s) in logfile
> 
> Input:          test/html/error.htm
> Output:         test/tmp/out.htm
> Log:            test/tmp/test.log
> Testparameter:
>   errors = 5
>   version = 2
>   repeat = 3
> 
>  ERRORS detected! NOT all test have been passed successfully
> 
> make: *** [test_dynamic] Error 1
> 
> 
Not sure if you mentioned it before, at least I didn't found it:

On which system do run this test and which Perl version do you using?

Could you run 

make test TESTARGS="-i"

There should be no errors, only for the error.htm tests (this problem is
already fixed in the current CVS version, but it is only a problem of make
test)

Gerald


---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


Re: Embperl 2.0 segmentation fault on apachectl configtest

Posted by "John P. Gibbons" <jo...@dashing.com>.
Gerald Richter wrote:

>>I patched it and it still gives me the segmentation fault 
>>during configtest.
>>    
>>
>
>To debug this further I would need a sack backtrace. Do you know how to
>create it?
>
>  
>

No, but if you point me in the right direction I'm sure I can do it.

>>It did however allow "make test" to get 
>>farther where before it complained when trying to load httpd.
>>
>>    
>>
>
>How far does it get?
>
>  
>

Starting httpd...      
pid = 12804  ok

Testing mod_perl mode...

#0 ascii...                   ok
#1 pure.htm...                ok
#2 nooutput.htm...            ok
#3 nooutput.htm...            ok
#4 plain.htm...               ok
#5 plain.htm...               ok
#6 plain.htm...               ok
#7 plainblock.htm...          ok
#8 plainblock.htm...          ok
#12 error.htm...             

Expected 4 more error(s) in logfile

Input:          test/html/error.htm
Output:         test/tmp/out.htm
Log:            test/tmp/test.log
Testparameter:
  errors = 5
  version = 2
  repeat = 3

 ERRORS detected! NOT all test have been passed successfully

make: *** [test_dynamic] Error 1


Cheers,
John





---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


RE: Embperl 2.0 segmentation fault on apachectl configtest

Posted by Gerald Richter <ri...@ecos.de>.
> 
> I patched it and it still gives me the segmentation fault 
> during configtest.

To debug this further I would need a sack backtrace. Do you know how to
create it?

> It did however allow "make test" to get 
> farther where before it complained when trying to load httpd.
> 

How far does it get?

Gerald


---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


Re: Embperl 2.0 segmentation fault on apachectl configtest

Posted by "John P. Gibbons" <jo...@dashing.com>.
On Jul 20, 2004, at 1:31 AM, Gerald Richter wrote:
>
> I have just fixed a similar problem which should also fix your 
> configtest
> problem.
>
> You can use the following patch or the version from the CVS:
>

Hi Gerald,

I patched it and it still gives me the segmentation fault during 
configtest. It did however allow "make test" to get farther where 
before it complained when trying to load httpd.


> We are very close to final. There a just a very few issues I have to
> resolve. Hopefully I get the final 2.0 ready during the next weeks
>
> Gerald
>

Congratulations! I can't wait.

Cheers,
John


---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org


Re: Embperl 2.0 segmentation fault on apachectl configtest

Posted by Gerald Richter <ri...@ecos.de>.
Hi,

>
>   I recently installed Embperl 2.0b11 to experiment with it and have
> encountered the apachectl configtest segmentation fault that others
> have mentioned. Gerald, you said (in a list post from October 2002):
>

I have just fixed a similar problem which should also fix your configtest
problem.

You can use the following patch or the version from the CVS:

@@ -1242,7 +1242,10 @@
 static int DomTree_free (pTHX_ SV * pSV, MAGIC * mg)

     {
-    return DomTree_dodelete (CurrApp, DomTree_self (mg -> mg_len)) ;
+    if (mg && mg -> mg_len && !PL_in_clean_all)
+        return DomTree_dodelete (CurrApp, DomTree_self (mg -> mg_len)) ;
+    else
+        return ok ;
     }

>
> Speaking of that, it's been several months since the last 2.0 release.
> Does that mean that we're close to a real 2.0 final? Or have you just
> been busy Gerald?
>

We are very close to final. There a just a very few issues I have to
resolve. Hopefully I get the final 2.0 ready during the next weeks

Gerald

---------------------------------------------------------------------------
Gerald Richter            ecos electronic communication services gmbh
IT-Securitylösungen * Webapplikationen mit Apache/Perl/mod_perl/Embperl

Post:       Tulpenstrasse 5          D-55276 Dienheim b. Mainz
E-Mail:     richter@ecos.de          Voice:   +49 6133 939-122
WWW:        http://www.ecos.de/      Fax:     +49 6133 939-333
---------------------------------------------------------------------------
ECOS BB-5000 Firewall- und IT-Security Appliance: www.bb-5000.info
---------------------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-help@perl.apache.org