Skip to content

Commit 1a1cd5f

Browse files
t-8chKAGA-KOKO
authored andcommitted
vdso/gettimeofday: Introduce vdso_clockid_valid()
Move the clock ID validation check into a common helper. Signed-off-by: Thomas Weißschuh <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Link: https://lore.kernel.org/all/[email protected]
1 parent fb61bdb commit 1a1cd5f

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

lib/vdso/gettimeofday.c

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,12 @@ static inline bool vdso_cycles_ok(u64 cycles)
7171
}
7272
#endif
7373

74+
static __always_inline bool vdso_clockid_valid(clockid_t clock)
75+
{
76+
/* Check for negative values or invalid clocks */
77+
return likely((u32) clock < MAX_CLOCKS);
78+
}
79+
7480
#ifdef CONFIG_TIME_NS
7581

7682
#ifdef CONFIG_GENERIC_VDSO_DATA_STORE
@@ -268,8 +274,7 @@ __cvdso_clock_gettime_common(const struct vdso_time_data *vd, clockid_t clock,
268274
const struct vdso_clock *vc = vd->clock_data;
269275
u32 msk;
270276

271-
/* Check for negative values or invalid clocks */
272-
if (unlikely((u32) clock >= MAX_CLOCKS))
277+
if (!vdso_clockid_valid(clock))
273278
return false;
274279

275280
/*
@@ -405,8 +410,7 @@ bool __cvdso_clock_getres_common(const struct vdso_time_data *vd, clockid_t cloc
405410
u32 msk;
406411
u64 ns;
407412

408-
/* Check for negative values or invalid clocks */
409-
if (unlikely((u32) clock >= MAX_CLOCKS))
413+
if (!vdso_clockid_valid(clock))
410414
return false;
411415

412416
if (IS_ENABLED(CONFIG_TIME_NS) &&

0 commit comments

Comments
 (0)