Re: [PATCH] percpu: make this_cpu_generic_read() atomic w.r.t. interrupts

From: Mark Rutland
Date: Wed Sep 27 2017 - 06:11:53 EST


On Wed, Sep 27, 2017 at 11:01:13AM +0200, Thomas Gleixner wrote:
> The default for 32bit architectures is that they CANNOT do atomic
> fetch/write of 8 bytes.

Indeed.

In addition, even the native word size accesses weren't guaranteed to be
atomic, as we hadn't used the appropriate accessors to prevent the
compiler from messing with things behind our backs.

> So instead of forcing that to be implemented in every affected
> architecture this wants to be addressed in generic code and those few
> 32bit architectures which can do atomic double word fetch/write
> implement the magic functions to do so.

I've done this in v2 [1], which Tejun has queued [2] as a fix for v4.14.

Thanks,
Mark.

[1] https://lkml.kernel.org/r/1506426112-19826-1-git-send-email-mark.rutland@xxxxxxx
[2] https://lkml.kernel.org/r/20170926144118.GA70381@xxxxxxxxxxxxxxxxxxxxxxxxxxx