Re: [PATCH 3/7] microblaze: Define SMP safe bit operations

From: Peter Zijlstra
Date: Wed Feb 12 2020 - 10:53:22 EST


On Wed, Feb 12, 2020 at 04:42:25PM +0100, Michal Simek wrote:
> From: Stefan Asserhall <stefan.asserhall@xxxxxxxxxx>
>
> For SMP based system there is a need to have proper bit operations.
> Microblaze is using exclusive load and store instructions.
>
> Signed-off-by: Stefan Asserhall <stefan.asserhall@xxxxxxxxxx>
> Signed-off-by: Michal Simek <michal.simek@xxxxxxxxxx>

> +/*
> + * clear_bit doesn't imply a memory barrier
> + */
> +#define smp_mb__before_clear_bit() smp_mb()
> +#define smp_mb__after_clear_bit() smp_mb()

These macros no longer exist.

Also, might I draw your attention to:

include/asm-generic/bitops/atomic.h

This being a ll/sc arch, I'm thinking that if you do your atomic_t
implementation right, the generic atomic bitop code should be near
optimal.