[PATCH v3 0/3] arm64: Fixes for __READ_ONCE() with CONFIG_LTO=y
Will Deacon
will at kernel.org
Mon Feb 2 11:13:42 PST 2026
On Fri, 30 Jan 2026 14:28:23 +0100, Marco Elver wrote:
> While investigating a Clang Context Analysis [1] false positive [2], I started
> to dig deeper into arm64's __READ_ONCE() implementation with LTO. That rabbit
> hole led me to find one critical bug with the current implementation (patch 1),
> and subtle improvements that then enabled me to fix the original false positive.
>
> Patch 1 fixes a bug where READ_ONCE() on types larger than 8 bytes (non-atomic
> fallback) incorrectly qualified the pointer rather than the pointee as volatile.
> This resulted in a lack of "once" semantics for large struct loads.
>
> [...]
Applied first patch only to arm64 (for-next/core), thanks!
[1/3] arm64: Fix non-atomic __READ_ONCE() with CONFIG_LTO=y
https://git.kernel.org/arm64/c/bb0c99e08ab9
Cheers,
--
Will
https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev
More information about the linux-arm-kernel
mailing list