From: Andrew Morton include/linux/time.h: In function `ns_to_timeval': include/linux/time.h:176: warning: passing arg 3 of `div_long_long_rem_signed' from incompatible pointer type sparc64 uses `int' for suseconds_t. Please re-review the whole ktimers patch for that. Also, ns_to_timeval() is waaaaaaaay too big for inlining. As is ns_to_timespec() and set_normalized_timespec() and, while we're there, mktime(). Pls fix. Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "David S. Miller" Signed-off-by: Andrew Morton --- include/linux/time.h | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff -puN include/linux/time.h~ktimers-kt2-sparc64-fix include/linux/time.h --- 25-sparc64/include/linux/time.h~ktimers-kt2-sparc64-fix 2005-10-24 00:21:21.000000000 -0700 +++ 25-sparc64-akpm/include/linux/time.h 2005-10-24 00:21:21.000000000 -0700 @@ -143,7 +143,8 @@ static inline struct timespec ns_to_time struct timespec ts; if (nsec) - ts.tv_sec = div_long_long_rem_signed(nsec, NSEC_PER_SEC, &ts.tv_nsec); + ts.tv_sec = div_long_long_rem_signed(nsec, NSEC_PER_SEC, + &ts.tv_nsec); else ts.tv_sec = ts.tv_nsec = 0; return ts; @@ -173,8 +174,10 @@ static inline struct timeval ns_to_timev { struct timeval tv; if (n) { - tv.tv_sec = div_long_long_rem_signed(n, NSEC_PER_SEC, &tv.tv_usec); - tv.tv_usec /= 1000; + long suseconds = tv.tv_usec; + tv.tv_sec = div_long_long_rem_signed(n, NSEC_PER_SEC, + &suseconds); + tv.tv_usec = suseconds / 1000; } else tv.tv_sec = tv.tv_usec = 0; return tv; _