Re: [RFC PATCH v2 07/10] lib: vdso: don't use READ_ONCE() in __c_kernel_time()

From: Andy Lutomirski
Date: Mon Dec 23 2019 - 20:58:42 EST


On Mon, Dec 23, 2019 at 6:31 AM Christophe Leroy
<christophe.leroy@xxxxxx> wrote:
>
> READ_ONCE() forces the read of the 64 bit value of
> vd[CS_HRES_COARSE].basetime[CLOCK_REALTIME].sec allthough
> only the lower part is needed.

Seems reasonable and very unlikely to be harmful. That being said,
this function really ought to be considered deprecated -- 32-bit
time_t is insufficient.

Do you get even better code if you move the read into the if statement?

Reviewed-by: Andy Lutomirski <luto@xxxxxxxxxx>

--Andy