Skip to content

Fast Context Swap Broken On ppc64le #357

Open
@insertinterestingnamehere

Description

The implementation of fast context swaps is buggy on little-endian powerpc platforms (verified at least on ppc64le). On this platform nearly all the tests in the test suite just segfault almost immediately after the first context swap inside qthread_initialize. This is an old bug that dates back to whenever the context swap assembly was written, so there's no "right" version to restore to.

Why this is only showing up now: The switch to a new build system fixed an error in our old build system where little-endian PowerPC builds were falling back to the system-provided swapcontext.

A mitigation is provided in: #355. Since the old build system was silently falling back to the system-provided swapcontext, we're having the new one use the fallback implementation too. It's unclear whether we'll even want to fix the assembly or just leave it as is, but this issue at least documents the existence of this problem.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions