#6094·swoole-src

PHP 8.5/aarch64: coroutine VM stack use-after-free under high coroutine churn

Author: smathersDTCreated Jul 2, 2026Updated Sep 6, 2026
Labelsbugwaiting for user action

Hi there,

Im seeing some instability in the postgres driver, its doing some seg faults under load, i think its because the postgres driver is old i see there was a change to include thirdparty/php85/pdo_pgsql/php_pdo_pgsql_int.h in https://github.com/swoole/swoole-src/pull/5940 Instead of wrapping php's version looks like swoole is using its own copy with a patch

its likely the culprit, unfortunately this is hard to reproduce

some logs:

Jul 2 13:15:53 ivr01 php[685]: [2026-07-02 13:15:53 $685.0]#011WARNING#011Worker::report_error(): worker(pid=3279, id=41) abnormal exit, status=0, signal=11 Jul 2 13:15:53 ivr01 php[685]: A process crash occurred in Swoole-v6.2.1. Please report this issue. Jul 2 13:15:53 ivr01 php[685]: You can refer to the documentation below, submit an issue to us on GitHub. Jul 2 13:15:53 ivr01 php[685]: >> https://github.com/swoole/swoole-src/blob/master/docs/ISSUE.md Jul 2 13:15:53 ivr01 php[685]: OS: Linux 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64 Jul 2 13:15:53 ivr01 php[685]: GCC_VERSION: 11.4.0 Jul 2 13:15:53 ivr01 php[685]: OPENSSL_VERSION: OpenSSL 3.0.2 15 Mar 2022 Jul 2 13:15:53 ivr01 php[685]: PHP_VERSION : 8.5.7

Jul 2 19:06:20 ivr04 php[3873860]: [2026-07-02 19:06:20 $3873860.0]#011WARNING#011Worker::report_error(): worker(pid=1232177, id=31) abnormal exit, status=0, signal=11 Jul 2 19:06:20 ivr04 php[3873860]: A process crash occurred in Swoole-v6.2.1. Please report this issue. Jul 2 19:06:20 ivr04 php[3873860]: You can refer to the documentation below, submit an issue to us on GitHub. Jul 2 19:06:20 ivr04 php[3873860]: >> https://github.com/swoole/swoole-src/blob/master/docs/ISSUE.md Jul 2 19:06:20 ivr04 php[3873860]: OS: Linux 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64 Jul 2 19:06:20 ivr04 php[3873860]: GCC_VERSION: 11.4.0 Jul 2 19:06:20 ivr04 php[3873860]: OPENSSL_VERSION: OpenSSL 3.0.2 15 Mar 2022 Jul 2 19:06:20 ivr04 php[3873860]: PHP_VERSION : 8.5.7

Machine details: root@ivr04:/var/log# php --ri swoole

swoole

Swoole => enabled Author => Swoole Team [email protected] Version => 6.2.1 Built => Jun 12 2026 03:07:54 host byte order => little endian coroutine => enabled with boost asm context epoll => enabled eventfd => enabled signalfd => enabled cpu_affinity => enabled spinlock => enabled rwlock => enabled sockets => enabled openssl => OpenSSL 3.0.2 15 Mar 2022 dtls => enabled http2 => enabled json => enabled curl-native => enabled curl-version => 7.81.0 zlib => 1.2.11 brotli => E16777225/D16777225 mutex_timedlock => enabled pthread_barrier => enabled futex => enabled postgresql(libpq) version => 14.23 coroutine_pgsql => enabled execinfo => enabled

Directive => Local Value => Master Value swoole.enable_library => On => On swoole.enable_fiber_mock => Off => Off swoole.enable_preemptive_scheduler => Off => Off swoole.display_errors => On => On swoole.use_shortname => On => On swoole.socket_buffer_size => 8388608 => 8388608 swoole.blocking_detection => Off => Off swoole.blocking_threshold => 100000 => 100000 swoole.profile => Off => Off swoole.leak_detection => Off => Off root@ivr04:/var/log# php -v PHP 8.5.7 (cli) (built: Jun 11 2026 03:32:06) (NTS) Copyright (c) The PHP Group Zend Engine v4.5.7, Copyright (c) Zend Technologies with Zend OPcache v8.5.7, Copyright (c), by Zend Technologies

Ill see if i can reproduce on my Dev machines with a thread dump...

thanks