Re: [PATCH 3/7] microblaze: Define SMP safe bit operations
From: Peter Zijlstra
Date: Thu Feb 13 2020 - 04:11:12 EST
On Thu, Feb 13, 2020 at 09:01:21AM +0000, Stefan Asserhall wrote:
> The comment in the generic bitops.h says "You should recode these in the
> native assembly language, if at all possible". I don't think using the generic
> implementation will be as efficient as the current arch specific one.
That is a very crusty old recommendation. Please look at the compiler
generated code.
We've extended the atomic_t operations the past few years and Will wrote
the generic atomic bitops for Arm64, we're looking to convert more LL/SC
archs to them.
There is currently one known issue with it, but Will has a patch-set
pending to solve that (IIRC that only matters if you have stack
protector on).
Also see this thread:
https://lkml.kernel.org/r/875zimp0ay.fsf@xxxxxxxxxxxxxxxxxx
And these patches:
https://lkml.kernel.org/r/20200123153341.19947-1-will@xxxxxxxxxx