libphp.so dumps core in sapi_register_post_entry+0x31()
Personne n'a encore pris cette issue.
- Langage dominant
- C
- Étoiles
- 40.4k
- Forks
- 8.1k
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 96
Description
Description
Starting Apache with libphp imediately ends with core dump:
httpd:core> $C
7fdd8f067660 libphp8.1.so`sapi_register_post_entry+0x31()
7fdd8f067680 libphp8.1.so`sapi_register_post_entries+0x2a()
7fdd8f067690 libphp8.1.so`php_setup_sapi_content_types+0x10()
7fdd8f0676e0 libphp8.1.so`tsrm_update_active_threads+0xb0()
7fdd8f067720 libphp8.1.so`ts_allocate_fast_id+0xe3()
7fdd8f067760 libphp8.1.so`php_apache_server_startup+0x6c()
7fdd8f0677b0 ap_run_post_config+0x54()
7fdd8f0678f0 main+0x1873()
7fdd8f067900 0x465fc4()
This worked well with PHP 8.1.0.
git bisessct gives following output:
72f8dbb31295e4e5633a9033c6d91a45d102c485 is the first bad commit
commit 72f8dbb31295e4e5633a9033c6d91a45d102c485
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Nov 24 20:43:30 2021 +0300
Fixed bug #81634 (ZEND_ENABLE_STATIC_TSRMLS_CACHE produces extensionswith the STATIC_TLS flag)
TSRM/TSRM.h | 8 ++++++--
Zend/zend.c | 2 +-
Zend/zend.h | 4 ++++
build/php.m4 | 2 +-
win32/build/confutils.js | 2 +-
5 files changed, 13 insertions(+), 5 deletions(-)
Apply reversely patch from above commit allows me to use PHP 8.1.5.
PHP Version
PHP 8.1.5
Operating System
Solaris
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire le crash au démarrage d’Apache/libphp sur Solaris et examiner le premier commit à l’origine du problème, 72f8dbb31295e4e5633a9033c6d91a45d102c485. Lisez TSRM/TSRM.h, Zend/zend.c, Zend/zend.h et build/php.m4 autour de cette modification. Le travail est terminé lorsque PHP 8.1.5 peut démarrer avec libphp sans produire de core dump et que la régression est couverte par un test approprié.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- c, php
- Domaine
- backend, operating-systems
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 28/100