On 3/6/2020 2:54 AM, Arnd Bergmann wrote: > The exact semantics of inl() and readl() are slightly different, so they > have distinct sets of barriers in the asm-generic/io.h implementation. > > For instance, the arm64 architectures defines in_par() as '__iormb(v)', > but defines __io_ar() as a '__rmb()'. Similarly, riscv defines them > as "fence i,ior" and "fence i,r". makes sense