| Date | Tue, 01 Feb 2011 13:51:09 -0000 | From | Thomas Gleixner <> | Subject | [patch 05/28] 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 -EINVAL. For valid clocks it returns a pointer to the matching posix_clock.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: John Stultz <john.stultz@linaro.org> Cc: Richard Cochran <richard.cochran@omicron.at> --- kernel/posix-timers.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
Index: linux-2.6-tip/kernel/posix-timers.c =================================================================== --- linux-2.6-tip.orig/kernel/posix-timers.c +++ linux-2.6-tip/kernel/posix-timers.c @@ -531,6 +531,16 @@ static void release_posix_timer(struct k 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. */ SYSCALL_DEFINE3(timer_create, const clockid_t, which_clock,
|