posix-timers: Introduce clockid_to_kclock()
New function to find the kclock for a given clockid. Returns a pointer to clock_posix_cpu if clockid < 0. If clockid >= MAXCLOCK or if the clock_getres pointer is not set it returns NULL. For valid clocks it returns a pointer to the matching posix_clock. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: John Stultz <johnstul@us.ibm.com> Acked-by: Richard Cochran <richard.cochran@omicron.at> LKML-Reference: <20110201134417.938447839@linutronix.de>
This commit is contained in:
Родитель
1976945eea
Коммит
cc785ac22b
|
@ -531,6 +531,16 @@ static void release_posix_timer(struct k_itimer *tmr, int it_id_set)
|
||||||
kmem_cache_free(posix_timers_cache, tmr);
|
kmem_cache_free(posix_timers_cache, tmr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static struct k_clock *clockid_to_kclock(const clockid_t id)
|
||||||
|
{
|
||||||
|
if (id < 0)
|
||||||
|
return &clock_posix_cpu;
|
||||||
|
|
||||||
|
if (id >= MAX_CLOCKS || !posix_clocks[id].clock_getres)
|
||||||
|
return NULL;
|
||||||
|
return &posix_clocks[id];
|
||||||
|
}
|
||||||
|
|
||||||
/* Create a POSIX.1b interval timer. */
|
/* Create a POSIX.1b interval timer. */
|
||||||
|
|
||||||
SYSCALL_DEFINE3(timer_create, const clockid_t, which_clock,
|
SYSCALL_DEFINE3(timer_create, const clockid_t, which_clock,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче