5–7 Oct 2026
Europe/Prague timezone

Emulating x86 atomics on arm64

Not scheduled
20m
Gaming on Linux MC Gaming on Linux MC

Speaker

André Almeida (Igalia)

Description

Atomics can be challenging enough by themselves, and emulating them can be even worse. The lack of correctness will crash the application sooner or later, and the lack of performance will be very noticeable.

One key difference between x86 and arm64 is how they handle atomic operations on unaligned addresses. While on x86 such operations are supported transparently, on arm64 they raise a SIGBUS and the application is terminated. This creates a problem when emulating x86 games on arm64, since we can’t modify their source code to avoid unaligned atomic operations. So, we need a mechanism to handle such operations on top of arm64.

This talk will introduce the topic and describe an implementation design, benchmark results and how other OSes approached this issue.

LKML link: https://lore.kernel.org/lkml/20251117160841.334224-1-andrealmeid@igalia.com/

Author

Presentation materials

There are no materials yet.