Re: [PATCH net] rds: Make sure updates to cp_send_gen can be observed

From: David Miller
Date: Thu Jul 20 2017 - 18:33:25 EST


From: Håkon Bugge <Haakon.Bugge@xxxxxxxxxx>
Date: Thu, 20 Jul 2017 12:28:55 +0200

> cp->cp_send_gen is treated as a normal variable, although it may be
> used by different threads.
>
> This is fixed by using {READ,WRITE}_ONCE when it is incremented and
> READ_ONCE when it is read outside the {acquire,release}_in_xmit
> protection.
>
> Normative reference from the Linux-Kernel Memory Model:
>
> Loads from and stores to shared (but non-atomic) variables should
> be protected with the READ_ONCE(), WRITE_ONCE(), and
> ACCESS_ONCE().
>
> Clause 5.1.2.4/25 in the C standard is also relevant.
>
> Signed-off-by: Håkon Bugge <haakon.bugge@xxxxxxxxxx>
> Reviewed-by: Knut Omang <knut.omang@xxxxxxxxxx>

Applied, thanks.