** Description changed:
[ Impact ]
The fpm_get_status() calls are broken: the result is a segfault, due to a
malformed patch applied in 8.3.6-0ubuntu0.24.04.7 to fix LP 2130569, making
this a regression.
The fix is bringing in the proper patch, as applied to php-src upstream.
[ Test Plan ]
On a fresh noble machine:
- install `php`, `php-fpm` and `nginx`
- configure nginx to serve php content via fpm
- - create a test.php file with
+ - create a test.php file with
```
<?php
print_r(fpm_get_status());
```
- curl localhost/test.php
- see the 502 Bad Gateway error, and check /var/crash for the segfault being
present
For the fix:
- install the `php` and `php-fpm` packages from -proposed
- curl localhost/test.php
- See the results on screen
- See no crash was produced in /var/crash
[ Where problems could occur ]
- Last time a fix was attempted, there was a mismatch between the commit
referenced in the patch header (which is correct) and the contents,
which were taken from a WIP commit. That mistake (I unfortunately
made...) slipped in through all reviews and ended up in this regression.
Making sure the content matches the commit this time will avoid this
happening again.
- The test plan is clean and straightforward, but of course it does not
cover all the fpm-related functionality. We believe these fixes won't
cause more trouble as upstream has exactly this code applied right now,
and the backport applies and works cleanly. If something else goes
wrong, users will perceive it and report bugs, which would need further
investigation again. DEP8 is our friend here, at least giving a sign
that the code works as expected.
+
+ [ Other info ]
+
+ This SRU only targets Noble, as it's the only release with php8.3.
[ Original description ]
After updating php8.3-fpm:amd64...
from 8.3.6-0ubuntu0.24.04.6
to 8.3.6-0ubuntu0.24.04.7
...yesterday on my Ubuntu 24.04.4 LTS server, calling `fpm_get_status()`
crashes the FPM reproducibly.
I noticed this because I run a nextcloud and my monitoring checks the
`serverinfo` API endpoint, which - amongst other things - calls that
function. I've manually verified that this function call causes the
crash by creating a php file with following contents:
```
<?php
print_r(fpm_get_status());
```
...and then calling it through nginx.
To reproduce, I've checked on another 24.04 LTS box with nginx installed:
- apt install php-fpm
- I created /var/www/html/test.php with the same test call as above
- opening that page in a browser or with cURL has nginx throw a 502 Bad
Gateway and you can see a log entry in the FPM error log:
[16-Mar-2026 12:56:17] WARNING: [pool www] child 1427132 exited on
signal 11 (SIGSEGV - core dumped) after 0.200238 seconds from start
Also, `/var/crash/_usr_sbin_php-fpm8.3.33.crash` is being created.
ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: php8.3-fpm 8.3.6-0ubuntu0.24.04.7
ProcVersionSignature: Ubuntu 6.8.0-106.106-generic 6.8.12
Uname: Linux 6.8.0-106-generic x86_64
ApportVersion: 2.28.1-0ubuntu3.8
Architecture: amd64
CasperMD5CheckResult: unknown
Date: Mon Mar 16 12:56:17 2026
InstallationDate: Installed on 2012-07-03 (5004 days ago)
InstallationMedia: Ubuntu-Server 12.04 LTS "Precise Pangolin" - Release amd64
(20120424.1)
ProcEnviron:
LANG=en_US.UTF-8
PATH=(custom, no user)
SHELL=/bin/zsh
TERM=xterm
SourcePackage: php8.3
UpgradeStatus: Upgraded to noble on 2024-12-06 (465 days ago)
modified.conffile..etc.php.8.3.fpm.pool.d.www.conf: [modified]
mtime.conffile..etc.php.8.3.fpm.pool.d.www.conf: 2024-12-06T01:36:56.270124
** Also affects: php8.3 (Ubuntu Noble)
Importance: Undecided
Status: New
** Changed in: php8.3 (Ubuntu Noble)
Status: New => In Progress
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2144556
Title:
php8.3-fpm: SIGSEGV upon fpm_get_status()
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/php8.3/+bug/2144556/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs