Skip to content

Fix GH-24695: FPM tester sends signal to process group when PID is missing - #24698

Merged
bukka merged 1 commit into
php:PHP-8.4from
lazerg:fix/gh-24695-fpm-signal-pid-zero
Oct 27, 2026
Merged

bukka merged 1 commit into
php:PHP-8.4from
lazerg:fix/gh-24695-fpm-signal-pid-zero

Conversation

@lazerg

@lazerg lazerg commented Oct 25, 2026

Copy link
Copy Markdown
Contributor

When FPM fails to start, getPid() reports the missing PID file and returns 0, and signal() then runs kill -USR2 0. That signals the whole process group and takes down run-tests.php along with the test. Now signal() returns early in that case, so the test just fails and the run keeps going.

Based on the reporter's patch.

Fixes #24695

@lazerg
lazerg requested a review from bukka as a code owner October 25, 2026 17:22

@Bill-Sommerfeld Bill-Sommerfeld left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can credit me as Bill Sommerfeld <sommerfeld@hamachi.org>. Thanks for fixing this!

@Bill-Sommerfeld

Copy link
Copy Markdown
Contributor

I downloaded 89fbc96 as a patch and dropped it into a local copy of the openindiana build tree in place of my original patch; I can confirm that it works as expected for openindiana builds of php 8.3.x, 8.4.x and 8.5.x.

… missing

Co-authored-by: Bill Sommerfeld <sommerfeld@hamachi.org>
@lazerg

lazerg commented Oct 26, 2026

Copy link
Copy Markdown
Contributor Author

Updated the Co-authored-by line to that address, and thanks for testing it on OpenIndiana.

@lazerg
lazerg force-pushed the fix/gh-24695-fpm-signal-pid-zero branch from 89fbc96 to 2f27a3e Compare October 26, 2026 00:55
@bukka
bukka merged commit 810ce5e into php:PHP-8.4 Oct 27, 2026
18 checks passed
bukka added a commit that referenced this pull request Oct 27, 2026
* PHP-8.4:
  Fix GH-24695: FPM tester sends signal to process group when PID is missing (#24698)
bukka added a commit that referenced this pull request Oct 27, 2026
* PHP-8.5:
  Fix GH-24695: FPM tester sends signal to process group when PID is missing (#24698)
bukka added a commit that referenced this pull request Oct 27, 2026
* PHP-8.6:
  Fix GH-24695: FPM tester sends signal to process group when PID is missing (#24698)
arnaud-lb added a commit to prateekbhujel/php-src that referenced this pull request Oct 27, 2026
* PHP-8.4: (26 commits)
  Fix phpGH-24695: FPM tester sends signal to process group when PID is missing (php#24698)
  Fix phpGH-24605: Guard var_export() against native stack overflow (php#24671)
  Fix use-after-free of CURLOPT_STDERR stream on cloned curl handle
  IR: Backport code buffer rollback fix
  Fix SQL test on Windows (php#24755)
  Fix phpGH-24697: cli: passing PHP_HTTP_PARSER_STRICT build option doesn't work
  Fix phpGH-24438: Preserve indirect types in JIT side traces
  Fix phpGH-17733: System entropy does not take into account function order, resulting in wrong functions possibly called in different configurations
  Fix unmapping of an unrelated range when the aligned chunk mmap fails (php#24542)
  Backport: Adapt intl timezone test expectations for ICU 79.1 (php#24724)
  Tracing JIT: keep the SEND_VAL type guard after assigning to a reference
  Backport: Adapt intl timezone test expectations for ICU 79.1 (php#24684)
  ext/zip: Reject broken libzip versions on Windows (php#24371)
  ext/zip: Exclude broken libzip 1.12 (php#24358)
  Fix phpGH-24264: Unwind/GracefulExit discarded in spl_iterators.c
  phpdbg: Backport watchpoint fixes to PHP-8.4
  Fix JIT reading packed-turned-hash array as packed after string key write
  ext/standard: Skip proc_open descriptor 0 tests without /proc/self/fd symlinks
  JIT: Fix operand type check in zend_redo_pass_two_ex() (php#24658)
  Fix error paths in dom_xml_serializing_a_document_node()
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants