UPSTREAM: lib/vdso: Avoid duplication in __cvdso_clock_getres()

VDSO_HRES and VDSO_RAW clocks are handled the same way.

Avoid the code duplication.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Andy Lutomirski <luto@kernel.org>
Link: https://lore.kernel.org/r/fdf1a968a8f7edd61456f1689ac44082ebb19c15.1577111367.git.christophe.leroy@c-s.fr
(cherry picked from commit cdb7c5a9c8)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154668398
Change-Id: I765c9ddf53427d970e8b186cf4d37623c9218f25
This commit is contained in:
Christophe Leroy
2019-12-23 14:31:09 +00:00
committed by Alistair Delva
parent a6500f4a5b
commit dfbf6e6a12

View File

@@ -198,7 +198,7 @@ int __cvdso_clock_getres_common(clockid_t clock, struct __kernel_timespec *res)
* clocks are handled in the VDSO directly.
*/
msk = 1U << clock;
if (msk & VDSO_HRES) {
if (msk & (VDSO_HRES | VDSO_RAW)) {
/*
* Preserves the behaviour of posix_get_hrtimer_res().
*/
@@ -208,11 +208,6 @@ int __cvdso_clock_getres_common(clockid_t clock, struct __kernel_timespec *res)
* Preserves the behaviour of posix_get_coarse_res().
*/
ns = LOW_RES_NSEC;
} else if (msk & VDSO_RAW) {
/*
* Preserves the behaviour of posix_get_hrtimer_res().
*/
ns = hrtimer_res;
} else {
return -1;
}