php-fpm exists with SIGSEGVs (signal 11)

Bug #2069191 reported by Athos Ribeiro
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
php8.3 (Ubuntu)
Triaged
Undecided
Unassigned

Bug Description

Even after fixing LP: #2057576, PHP halts with SIGSEGV when running the script below.
Note the null pointer dereference from LP: #2057576 no longer occurs.

This can be observed in oracular, noble, and mantic (jammy and focal need verification).

This is a tracker for this bug and needs further investigarion.

### BEGIN REPRODUCER

#!/bin/bash

set -eux

trap cleanup EXIT

UBUNTU_SERIES=${UBUNTU_SERIES:-mantic}
PHP_VERSION=${PHP_VERSION:-8.2}
TEST_CONTAINER=php-fpm-segfault
PHP_TEST_FILE=$(mktemp)
PROPOSED_REPO_FILE=$(mktemp)
PROPOSED_PREF=$(mktemp)
lxc delete -f ${TEST_CONTAINER} || true

cleanup() {
  rm -f ${PHP_TEST_FILE}
  rm -f ${PROPOSED_REPO_FILE}
  rm -f ${PROPOSED_PREF}
  #lxc delete -f ${TEST_CONTAINER}
}

cat > ${PHP_TEST_FILE} <<EOF
testing...
<br/>
<?php
phpinfo();
fpm_get_status();
EOF

cat > ${PROPOSED_REPO_FILE} <<EOF
# Enable Ubuntu proposed archive
deb http://archive.ubuntu.com/ubuntu/ ${UBUNTU_SERIES}-proposed restricted main multiverse universe
EOF

cat > ${PROPOSED_PREF} <<EOF
# Configure apt to allow selective installs of packages from proposed
Package: *
Pin: release a=${UBUNTU_SERIES}-proposed
Pin-Priority: 500
EOF

lxc launch ubuntu-daily:${UBUNTU_SERIES} ${TEST_CONTAINER}

# lxc file push ${PROPOSED_REPO_FILE} ${TEST_CONTAINER}/etc/apt/sources.list.d/ubuntu-${UBUNTU_SERIES}-proposed.list
# lxc file push ${PROPOSED_PREF} ${TEST_CONTAINER}/etc/apt/preferences.d/proposed-updates

lxc exec ${TEST_CONTAINER} -- apt update
lxc exec ${TEST_CONTAINER} -- apt install -y php php-fpm apache2-utils apache2 libapache2-mod-fcgid
lxc exec ${TEST_CONTAINER} -- systemctl start php${PHP_VERSION}-fpm
lxc exec ${TEST_CONTAINER} -- a2dismod php${PHP_VERSION}
lxc exec ${TEST_CONTAINER} -- a2dismod mpm_prefork
lxc exec ${TEST_CONTAINER} -- a2enconf php${PHP_VERSION}-fpm
lxc exec ${TEST_CONTAINER} -- a2enmod proxy_fcgi proxy mpm_event
lxc file push ${PHP_TEST_FILE} ${TEST_CONTAINER}/var/www/html/test.php --mode 0644
lxc exec ${TEST_CONTAINER} -- systemctl restart apache2.service
lxc exec ${TEST_CONTAINER} -- sh -c "curl -s localhost/test.php | grep -o 'FPM/FastCGI'"
sleep 15
lxc exec ${TEST_CONTAINER} -- ab -n 10000 -c 99 http://localhost/test.php
echo 'Number of SIGSEGV failures:'
lxc exec ${TEST_CONTAINER} -- sh -c "cat /var/log/php${PHP_VERSION}-fpm.log | grep -c SIGSEGV"

### END REPRODUCER

Changed in php8.3 (Ubuntu):
status: New → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.