Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
Back to tool/Back to issues
#8437·all-in-one

aio-talk unhealthy — eturnal crash-loops with "Failed to set alternate signal stack" / SIGABRT, seemingly on newer CPUs with AVX-512

Author: Eagle-AdminCreated Jul 10, 2026Updated Sep 18, 2026
Labels2. developingbughighdependenciesupstream

Since deploying the Talk HPB container fresh yesterday, aio-talk never goes healthy. Everything in the container looks fine except eturnal (the bundled TURN server), which crashes on every single startup attempt and gets restarted in a loop by supervisord, forever, a few seconds apart.

Setup: Standalone docker host (not swarm), running as a VM under VMware OS: Ubuntu Server 24.04 LTS (fully patched) Host CPU: Intel Xeon 6517P (Granite Rapids) Image: ghcr.io/nextcloud-releases/aio-talk:20260702_083546 — confirmed this is the current latest/beta tag too, built 2026-06-26 docker info confirms native linux/amd64, no emulation involved Container ulimits are default (ulimit -s 8192, nothing custom), no custom seccomp, AppArmor is the default docker-default profile, no daemon.json overrides, no systemd drop-ins on the docker service — checked all of this trying to rule out something on my end

Relevant log lines:

Exec: /opt/eturnal/erts-15.2.6/bin/erlexec -noinput +Bd -boot /opt/eturnal/releases/1.12.2/start -mode embedded -boot_var SYSTEM_LIB_DIR /opt/eturnal/lib -config /opt/eturnal/releases/1.12.2/sys.config -args_file /opt/eturnal/releases/1.12.2/vm.args -erl_epmd_port 3470 -start_epmd false -- foreground
Root: /opt/eturnal
      /opt/eturnal
sys/unix/sys_signal_stack.c:101:sys_sigaltstack(): Internal error: Failed to set alternate signal stack
2026-07-09 21:40:40,922 WARN exited: eturnal (terminated by SIGABRT (core dumped); not expected)

This repeats every ~2-3 seconds indefinitely. Janus, the NATS server, and the Go signaling server all start up fine and the signaling server does report listening on [::]:8081 — it's specifically eturnal that never comes up, which I assume is why the healthcheck fails.

What I suspect (not sure if this is right): my CPU has full AVX-512 support (avx512f, avx512bw, avx512cd, avx512dq, avx512ifma, avx512vbmi, avx512vl all show in /proc/cpuinfo). There's a known class of bug where Erlang/OTP's alternate signal stack allocation is too small for what newer kernels report as the minimum required size on AVX-512-capable CPUs, causing sigaltstack() to fail outright. Since eturnal here is Erlang-based (erts-15.2.6), this seems like it could be the same thing, though I can't confirm what's inside this specific build.

Has anyone else hit this on newer Xeon (Sapphire Rapids / Granite Rapids) or recent AMD hardware? Is there a chance of bumping the bundled Erlang/eturnal version to one that handles this?

Source: nextcloud/all-in-one

View original on GitHubView discussion on GitHub