Skip to content

test_c_stack_unwind fails on Linux sparc64 #160253

Open

Description

@shalseth

Bug report

test_c_stack_unwind fails on sparc64 Linux (3.15.1 and main, GCC 16, glibc 2.44, SPARC T7-1 and T4-1):

FAIL: test_manual_unwind_finds_expected_frames (env={'PYTHON_JIT': '0'})
AssertionError: 1 not greater than or equal to 10 : expected to find Python frames on sparc64 with env {'PYTHON_JIT': '0'}

FAIL: test_gnu_backtrace_unwinds_through_jit_frames (env={'PYTHON_JIT': '0'})
AssertionError: 0 not greater than or equal to 10 : expected to find Python frames in GNU backtrace with env {'PYTHON_JIT': '0'}

The manual unwinder doesn't know the SPARC frame layout, same kind of thing as #152240 (LoongArch) and #151040 (riscv64), and unrelated to the AArch64 one in #160102. PR coming.

The GNU backtrace one isn't a CPython problem: GCC doesn't emit unwind tables by default on sparc64, so backtrace() stops after one frame. Reported to GCC: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=128091

CPython versions tested on:

CPython main branch

Operating systems tested on:

Linux

Linked PRs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    OS-unsupportedtestsTests in the Lib/test dirtype-bugAn unexpected behavior, bug, or error

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions