]> git.baikalelectronics.ru Git - kernel.git/commit
lib/vdso: Update coarse timekeeper unconditionally
authorThomas Gleixner <tglx@linutronix.de>
Tue, 14 Jan 2020 18:52:39 +0000 (19:52 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 17 Jan 2020 14:53:50 +0000 (15:53 +0100)
commitcf1ba8b983473d6c096112552e5653a81f58cae0
tree7ad3b8589d6f5b6c405f2f21dc10108fbc619447
parent16811275bff1dca18352fbfefe83fcd38b3dcdf9
lib/vdso: Update coarse timekeeper unconditionally

The low resolution parts of the VDSO, i.e.:

  clock_gettime(CLOCK_*_COARSE), clock_getres(), time()

can be used even if there is no VDSO capable clocksource.

But if an architecture opts out of the VDSO data update then this
information becomes stale. This affects ARM when there is no architected
timer available. The lack of update causes userspace to use stale data
forever.

Make the update of the low resolution parts unconditional and only skip
the update of the high resolution parts if the architecture requests it.

Fixes: 47d529de7e29 ("timekeeping: Provide a generic update_vsyscall() implementation")
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20200114185946.765577901@linutronix.de
kernel/time/vsyscall.c