lkml.org 
[lkml]   [2019]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 01/13] compiler.h: Split {READ,WRITE}_ONCE definitions out into rwonce.h
From
Date


On 08.11.19 20:57, Arnd Bergmann wrote:
> On Fri, Nov 8, 2019 at 6:01 PM Will Deacon <will@kernel.org> wrote:
>>
>> In preparation for allowing architectures to define their own
>> implementation of the 'READ_ONCE()' macro, move the generic
>> '{READ,WRITE}_ONCE()' definitions out of the unwieldy 'linux/compiler.h'
>> and into a new 'rwonce.h' header under 'asm-generic'.
>
> Adding Christian Bornträger to Cc, he originally added the
> READ_ONCE()/WRITE_ONCE()
> code.
>
> I wonder if it would be appropriate now to revert back to a much simpler version
> of these helpers for any modern compiler. As I understand, only gcc-4.6 and
> gcc4.7 actually need the song-and-dance version with the union and switch/case,
> while for others, we can might be able back to a macro doing a volatile access.

As far as I know this particular issue with volatile access on aggregate types
was fixed in gcc 4.8. On the other hand we know that the current construct will
work on all compilers. Not so sure about the orignal ACCESS_ONCE implementation.

\
 
 \ /
  Last update: 2019-11-11 09:10    [W:0.098 / U:55.764 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site