[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <167293249648.1466799.3332324417306480778.b4-ty@kernel.org>
Date: Thu, 5 Jan 2023 18:04:00 +0000
From: Will Deacon <will@...nel.org>
To: Catalin Marinas <catalin.marinas@....com>,
linux-arm-kernel@...ts.infradead.org,
Mark Rutland <mark.rutland@....com>
Cc: kernel-team@...roid.com, Will Deacon <will@...nel.org>,
peterz@...radead.org, boqun.feng@...il.com,
linux-kernel@...r.kernel.org, stable@...r.kernel.org,
arnd@...db.de, steve.capper@....com
Subject: Re: [PATCH] arm64: cmpxchg_double*: hazard against entire exchange variable
On Wed, 4 Jan 2023 15:16:26 +0000, Mark Rutland wrote:
> The inline assembly for arm64's cmpxchg_double*() implementations use a
> +Q constraint to hazard against other accesses to the memory location
> being exchanged. However, the pointer passed to the constraint is a
> pointer to unsigned long, and thus the hazard only applies to the first
> 8 bytes of the location.
>
> GCC can take advantage of this, assuming that other portions of the
> location are unchanged, leading to a number of potential problems.
>
> [...]
Applied to arm64 (for-next/fixes), thanks!
[1/1] arm64: cmpxchg_double*: hazard against entire exchange variable
https://git.kernel.org/arm64/c/031af50045ea
Cheers,
--
Will
https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev
Powered by blists - more mailing lists