| 
        php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login | 
  [2004-04-01 23:00 UTC] adconrad at 0c3 dot net
 Description:
------------
PHP segfaults immediately on execution, with or without input on SPARC.  If the patch[1] applied in CVS (ostensibly to "improve portability") is removed, the segfault goes away.
1. A short script that reproduces the problem.
adconrad@cranx:~/build/php4/php-4.3.6RC1$ sapi/cli/php
Segmentation fault
 
2. The list of modules you compiled PHP with (your configure line). 
'./configure' '--disable-all' '--prefix=/usr/local/php-4.3.6RC1' '--with-apxs2=/usr/bin/apxs2' '--enable-sockets' '--with-pcre-regex' '--enable-ctype' '--enable-overload' '--enable-posix' '--enable-session' '--enable-tokenizer' '--enable-xml' '--with-expat-dir=/usr' '--with-xmlrpc' '--with-pear' '--with-openssl' '--with-mysql=shared,/usr' '--with-pgsql=shared,/usr' '--with-sybase-ct=shared,/usr/local/freetds'
3. Any other information unique or specific to your setup. 
Debian GNU/Linux 3.0 (woody), SPARC port on an UltraSPARC (sparc64) CPU.  glibc version 2.2.5-11.5.
4. Any changes made in your php.ini compared to php.ini-dist (not your whole php.ini!) 
This occurs with or without a php.ini.
5. A gdb backtrace.
Program received signal SIGSEGV, Segmentation fault.
0x0005e170 in php_get_inf ()
    at /home/adconrad/build/php4/php-4.3.6RC1/ext/standard/basic_functions.c:1021
1021            return HUGE_VAL;
(gdb) bt
#0  0x0005e170 in php_get_inf ()
    at /home/adconrad/build/php4/php-4.3.6RC1/ext/standard/basic_functions.c:1021
#1  0x0005e4d4 in zm_startup_basic (type=1, module_number=4)
    at /home/adconrad/build/php4/php-4.3.6RC1/ext/standard/basic_functions.c:1065
#2  0x000ef068 in zend_startup_module (module=0x14647c)
    at /home/adconrad/build/php4/php-4.3.6RC1/Zend/zend_API.c:1005
#3  0x000bead0 in php_startup_extensions (ptr=0x14eabc, count=1370840)
    at /home/adconrad/build/php4/php-4.3.6RC1/main/main.c:1044
#4  0x00108334 in php_startup_internal_extensions () at main/internal_functions_cli.c:65
#5  0x000bf0b8 in php_module_startup (sf=0x149570, additional_modules=0x0,
    num_additional_modules=0) at /home/adconrad/build/php4/php-4.3.6RC1/main/main.c:1216
#6  0x001074c8 in main (argc=1, argv=0xeffffb34)
    at /home/adconrad/build/php4/php-4.3.6RC1/sapi/cli/php_cli.c:576
[1] http://cvs.php.net/diff.php/php-src/ext/standard/basic_functions.c?login=2&r1=1.543.2.34&r2=1.543.2.35&ty=u
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits             
             | 
    |||||||||||||||||||||||||||||||||||||
            
                 
                Copyright © 2001-2025 The PHP GroupAll rights reserved.  | 
        Last updated: Tue Nov 04 06:00:01 2025 UTC | 
Okay, there isn't much point in testing with gcc-3.3 on an unstable system. I just install gcc-3.0.4 on the same stable system I was testing this bug on, and it seems to work just fine. config.{out,log}-gcc-3.0 and build.log-gcc-3.0 at the same URL as previous logs. So, to repeat: This bug appears to vanish building with gcc-3.0.4 (and presumably any gcc 3.x), but manifests with gcc-2.95.The latest snapshot didn't actually have any changes other than derick's valgrind-induced fixes, and still failed. Of course, this is what I get for responding too quickly to the bug. :) I snagged your config.m4 changes from CVS, applied them, regenerated configure, and the resulting binary still segfaults with the same backtrace as before. config.{out,log} and build.log available at the same URL as always, with a "gcc-2.95-snapshot" suffix.