[GIT-PULLS] [php-src] PR #22796: fpm: Convert to new internal polling API

[email protected] (NattyNarwhal) Sat, 18 Jul 2026 00:52:16 +0000
Newsgroups php.git-pulls
Message-ID <[email protected]>
Pull Request: https://github.com/php/php-src/pull/22796
Author: NattyNarwhal

Very hacky first pass! Gets rid of FPM's own polling backends (only select is the casualty, everything else is handled by the new polling API). The polling API also has some stuff for persistent allocations, and FPM is the first internal consumer it seems.

Testing so far on macOS (kqueue) and Linux (epoll),

Concerns so far:

* FPM's polling modules skipped `EINTR`, internal polling API does not. Does result in some test failures.
* Need to figure out where to do freeing, since some stuff complains about leaks. Still not sure about FPM lifecycle; I put it in the obvious location and it seems to double free.
* Timeout code is a little weird. Doesn't seem to cause any issues so far.
* Multiprocess FPM is a little annoying to debug...