Re: [PATCH 2/2] arm64: io: Hook up __io_par() for inX() ordering
From: Geert Uytterhoeven
Date: Tue Feb 12 2019 - 05:43:00 EST
Hi Will,
On Mon, Feb 11, 2019 at 9:34 PM Will Deacon <will.deacon@xxxxxxx> wrote:
> Ensure that inX() provides the same ordering guarantees as readX()
> by hooking up __io_par() so that it maps directly to __iormb().
>
> Reported-by: Andrew Murray <andrew.murray@xxxxxxx>
> Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
Thanks for your patch!
> --- a/arch/arm64/include/asm/io.h
> +++ b/arch/arm64/include/asm/io.h
> @@ -121,6 +121,7 @@ static inline u64 __raw_readq(const volatile void __iomem *addr)
> : "memory"); \
> })
>
> +#define __io_par __iormb
I think it makes sense to make the parameter passing explicit, for
documentation purposes:
#define __io_par(v) __iormb(v)
> #define __iowmb() wmb()
>
> #define mmiowb() do { } while (0)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds