php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #58411 tpp.c:63: __pthread_tpp_change_priority failed
Submitted: 2008-11-11 11:58 UTC Modified: 2011-09-18 13:13 UTC
From: alexander dot manhart at wochenblatt dot de Assigned:
Status: No Feedback Package: APC (PECL)
PHP Version: 4.4.8 OS: SuSE Linux 10.3
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2008-11-11 11:58 UTC] alexander dot manhart at wochenblatt dot de
Description:
------------
Our System: SuSE Linux 10.3
gcc (GCC) 4.2.1 (SUSE Linux), libc-2.6.1.so
Storage: iSCSI, NFS Volumes, Local Disc

How Apache was built, configured:
CHOST="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="${CFLAGS}" ./configure "--prefix=/opt/apache/2.2.10"
--datadir=/media/iscsi/virtualweb --enable-layout=wochenblatt
--with-mpm=prefork --enable-modules="so log_config dir mime"
--enable-mods-shared="info status alias cern_meta usertrack asis include
autoindex cgid imap deflate auth auth_anon auth_digest access cache mem_cache
file-cache cgi env filter ext_filter expires headers file_cache mime_magic
negotiation rewrite speling actions userdir setenvif authn-default authz-user
authz-default" --enable-static-support --enable-nonportable-atomics
--disable-ipv6 --enable-exception-hook --with-included-apr

apachectl -M
Loaded Modules:
 core_module (static)
 authn_file_module (static)
 authz_host_module (static)
 authz_groupfile_module (static)
 auth_basic_module (static)
 log_config_module (static)
 mpm_prefork_module (static)
 http_module (static)
 mime_module (static)
 dir_module (static)
 so_module (static)
 expires_module (shared)
 headers_module (shared)
 alias_module (shared)
 cgi_module (shared)
 info_module (shared)
 status_module (shared)
 whatkilledus_module (shared)
 backtrace_module (shared)
 php4_module (shared)

cat /etc/apache2/extra/httpd-mpm.conf shows our settings:
<IfModule mpm_prefork_module>
    StartServers                8
    MinSpareServers            16
    MaxSpareServers            32
    ServerLimit               256
    MaxClients                196
    MaxRequestsPerChild     10000
    GracefulShutdownTimeout     5
</IfModule>

cat /etc/apache2/extra/httpd-default.conf shows our settings:
Timeout 120
KeepAlive On
MaxKeepAliveRequests 50
KeepAliveTimeout 3
HostnameLookups Off

How PHP 4.4.9 was built:
CC=gcc CXX=gcc CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer" CXXFLAGS="${CFLAGS}" ./configure '--prefix=/opt/php/4.4.9' '--with-config-file-path=/etc/php4' --disable-debug --with-apxs2=/opt/apache/2.2.10/bin/apxs '--with-mysql=/opt/mysql/current' --with-gd --enable-track-vars '--without-pear' '--with-openssl=shared,/opt' --with-zlib '--enable-memory-limit' '--enable-magic-quotes' --with-curl=shared --enable-exif=shared --enable-ftp --with-mcrypt=shared --enable-inline-optimization --enable-mbstring=all --enable-sysvsem=shared --enable-sysvshm=shared --enable-sysvmsg=shared --with-regex=php --enable-sockets --with-jpeg-dir=/opt --with-png-dir=/opt  --with-dom=shared --enable-calendar --without-mm --disable-ipv6 --with-imap=/opt/imap-c-client/2007b/ --with-imap-ssl --with-pic  

diff /etc/php4/php.ini /usr/src/php-4.4.9/php.ini-dist
precision    =  14
max_execution_time = 45
memory_limit = 96M
log_errors = On
log_errors_max_len = 2048
error_log = /var/log/php-error.log
register_globals = On
register_argc_argv = Off
default_charset = "iso-8859-1"
extension_dir = "/opt/php/current/lib/php/extensions"
upload_max_filesize = 12M
session.gc_maxlifetime = 43200
session.bug_compat_42 = 0
[APC]
extension=apc.so
apc.enabled=1
apc.shm_segments=1
apc.shm_size=78
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1024
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.enable_cli=1
apc.write_lock=1
apc.stat_ctime=1

How APC 3.0.19 was built:
export CPPFLAGS="-I/opt/apache/2.2.10/include/ -DAPC_PHP4_STAT" 
CC=gcc CXX=gcc CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer" CXXFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer" CXX="gcc" ./configure --enable-apc --enable-apc-mmap --with-apxs=/opt/apache/2.2.10/bin/apxs --with-php-config=/opt/php/4.4.9/bin/php-config 

Now the ERROR:

cat /var/log/apache2/error_log shows:
httpd-prefork: tpp.c:63: __pthread_tpp_change_priority: Assertion `new_prio ==
-1 || (new_prio >= __sched_fifo_min_prio && new_prio <= __sched_fifo_max_prio)'
failed.
[Tue Nov 11 11:17:25 2008] [notice] child pid 31832 exit signal Segmentation
fault (11)

Maybe someone can explain, why we get continuously Segmentation faults on Linux SuSE 10.3 with APC?


Reproduce code:
---------------
Randomly

Expected result:
----------------
cat /var/log/apache2/error_log shows:
httpd-prefork: tpp.c:63: __pthread_tpp_change_priority: Assertion `new_prio ==
-1 || (new_prio >= __sched_fifo_min_prio && new_prio <= __sched_fifo_max_prio)'
failed.
[Tue Nov 11 11:17:25 2008] [notice] child pid 31832 exit signal Segmentation
fault (11)


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-10-11 04:18 UTC] shire@php.net
Is this still happening?  I see the post here as well https://issues.apache.org/bugzilla/show_bug.cgi?id=46185, where you able to get a gdb backtrace?
 
PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Fri Dec 03 17:03:34 2021 UTC