The MAX_CLOCKS supported by the kernel is 16. But the kernel may not have all the clock sources defined in the range 0-15. Hence, to test whether kernel returns error for an INVALID clock source id, we should use the upper limit MAX_CLOCKS (16 at the moment). But to verify the the defined clocks work fine, we should loop through the "list" of clock sources defined for sure. (Used as CLOCKS_DEFINED below) Signed-off-by: Suzuki K P Index: ltp/testcases/kernel/timers/include/common_timers.h =================================================================== --- ltp.orig/testcases/kernel/timers/include/common_timers.h 2009-12-06 20:53:44.000000000 +0000 +++ ltp/testcases/kernel/timers/include/common_timers.h 2010-05-05 09:17:58.000000000 +0000 @@ -35,7 +35,10 @@ CLOCK_THREAD_CPUTIME_ID, CLOCK_MONOTONIC_RAW, }; -#define MAX_CLOCKS (sizeof(clock_list) / sizeof(*clock_list)) +/* CLOCKS_DEFINED is the number of clock sources defined for sure */ +#define CLOCKS_DEFINED (sizeof(clock_list) / sizeof(*clock_list)) +/* MAX_CLOCKS is the maximum number of clock sources supported by kernel */ +#define MAX_CLOCKS 16 const char *get_clock_str(const int clock_id) { Index: ltp/testcases/kernel/timers/timer_create/timer_create02.c =================================================================== --- ltp.orig/testcases/kernel/timers/timer_create/timer_create02.c 2010-05-05 09:18:21.000000000 +0000 +++ ltp/testcases/kernel/timers/timer_create/timer_create02.c 2010-05-05 09:18:38.000000000 +0000 @@ -113,7 +113,7 @@ setup_test(i); - for (j = 0; j < MAX_CLOCKS; ++j) { + for (j = 0; j < CLOCKS_DEFINED; ++j) { if (strstr(get_clock_str(clock_list[j]), "CPUTIME_ID")) {