On Tue, Mar 14, 2017 at 4:44 PM, Mark Rutland <mark.rutland@xxxxxxx> wrote: >> > -static __always_inline int atomic_read(const atomic_t *v) >> > +static __always_inline int arch_atomic_read(const atomic_t *v) >> > { >> > - return READ_ONCE((v)->counter); >> > + return READ_ONCE_NOCHECK((v)->counter); >> >> Should NOCHEKC come with a comment, because i've no idea why this is so. > > I suspect the idea is that given the wrapper will have done the KASAN > check, duplicating it here is either sub-optimal, or results in > duplicate splats. READ_ONCE() has an implicit KASAN check, > READ_ONCE_NOCHECK() does not. > > If this is to solve duplicate splats, it'd be worth having a > WRITE_ONCE_NOCHECK() for arch_atomic_set(). > > Agreed on the comment, regardless. Reverted xchg changes. Added comments re READ_ONCE_NOCHECK() and WRITE_ONCE(). Added file comment. Split into 3 patches and mailed. Thanks! -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>