Skip to content

Remaining problems with alternate signal stack #11349

Description

@hanssv

Describe the bug

Exec: /rundir/erts-16.4.0.3/bin/erlexec -noinput +Bd -boot /rundir/releases/latest/start -mode embedded -boot_var SYSTEM_LIB_DIR /rundir/lib -config /rundir/releases/latest/sys.config -args_file /rundir/releases/latest/vm.args -- foreground
Root: /rundir
/rundir
sys/unix/sys_signal_stack.c:111:sys_thread_init_signal_stack(): Internal error: Failed to set alternate signal stack

This manifest on a patched (with #11249) version of 28.5.0.3 in GitHub Actions. We've had this problem for a while, very intermittent, probably because there is only a few CI runners with the "right" architecture.

To Reproduce
Build a container image (OTP-28.5.0.3 + PR #11249) and let it run something in Github Actions.

Note that the error is on line 111 (the unpatched version has the error on line 103) which should indicate that the patch was applied.

Expected behavior
A correctly sized alternate signal stack.

Affected versions
Tested on 28.5.0.3 + patch.

Additional context
The patch does:

 ss_size = max(SIGSTKSZ, getauxval(AT_MINSIGSTKSZ)) 

If getauxval(AT_MINSIGSTKSZ) comes back as 0/missing on some runner variants, it falls back to musl’s fixed SIGSTKSZ=8192 , and on AVX512-class hosts that can still fail exactly like before. This is consistent with “intermittent across CI fleet” even with the patch applied.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugIssue is reported as a bugteam:VMAssigned to OTP team VM

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions