Skip to content

Commit

Permalink
[PATCH] hrtimers: remove nsec_t typedef
Browse files Browse the repository at this point in the history
nsec_t predates ktime_t and has mostly been superseded by it.  In the few
places that are left it's better to make it explicit that we're dealing with
64 bit values here.

Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: John Stultz <johnstul@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Roman Zippel authored and Linus Torvalds committed Mar 26, 2006
1 parent 272705c commit df869b6
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 16 deletions.
18 changes: 6 additions & 12 deletions include/linux/time.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,12 +73,6 @@ extern void set_normalized_timespec(struct timespec *ts, time_t sec, long nsec);
#define timespec_valid(ts) \
(((ts)->tv_sec >= 0) && (((unsigned long) (ts)->tv_nsec) < NSEC_PER_SEC))

/*
* 64-bit nanosec type. Large enough to span 292+ years in nanosecond
* resolution. Ought to be enough for a while.
*/
typedef s64 nsec_t;

extern struct timespec xtime;
extern struct timespec wall_to_monotonic;
extern seqlock_t xtime_lock;
Expand Down Expand Up @@ -114,9 +108,9 @@ extern struct timespec timespec_trunc(struct timespec t, unsigned gran);
* Returns the scalar nanosecond representation of the timespec
* parameter.
*/
static inline nsec_t timespec_to_ns(const struct timespec *ts)
static inline s64 timespec_to_ns(const struct timespec *ts)
{
return ((nsec_t) ts->tv_sec * NSEC_PER_SEC) + ts->tv_nsec;
return ((s64) ts->tv_sec * NSEC_PER_SEC) + ts->tv_nsec;
}

/**
Expand All @@ -126,9 +120,9 @@ static inline nsec_t timespec_to_ns(const struct timespec *ts)
* Returns the scalar nanosecond representation of the timeval
* parameter.
*/
static inline nsec_t timeval_to_ns(const struct timeval *tv)
static inline s64 timeval_to_ns(const struct timeval *tv)
{
return ((nsec_t) tv->tv_sec * NSEC_PER_SEC) +
return ((s64) tv->tv_sec * NSEC_PER_SEC) +
tv->tv_usec * NSEC_PER_USEC;
}

Expand All @@ -138,15 +132,15 @@ static inline nsec_t timeval_to_ns(const struct timeval *tv)
*
* Returns the timespec representation of the nsec parameter.
*/
extern struct timespec ns_to_timespec(const nsec_t nsec);
extern struct timespec ns_to_timespec(const s64 nsec);

/**
* ns_to_timeval - Convert nanoseconds to timeval
* @nsec: the nanoseconds value to be converted
*
* Returns the timeval representation of the nsec parameter.
*/
extern struct timeval ns_to_timeval(const nsec_t nsec);
extern struct timeval ns_to_timeval(const s64 nsec);

#endif /* __KERNEL__ */

Expand Down
4 changes: 2 additions & 2 deletions kernel/hrtimer.c
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,7 @@ ktime_t ktime_add_ns(const ktime_t kt, u64 nsec)
/*
* Divide a ktime value by a nanosecond value
*/
static unsigned long ktime_divns(const ktime_t kt, nsec_t div)
static unsigned long ktime_divns(const ktime_t kt, s64 div)
{
u64 dclc, inc, dns;
int sft = 0;
Expand Down Expand Up @@ -322,7 +322,7 @@ hrtimer_forward(struct hrtimer *timer, ktime_t now, ktime_t interval)
interval.tv64 = timer->base->resolution.tv64;

if (unlikely(delta.tv64 >= interval.tv64)) {
nsec_t incr = ktime_to_ns(interval);
s64 incr = ktime_to_ns(interval);

orun = ktime_divns(delta, incr);
timer->expires = ktime_add_ns(timer->expires, incr * orun);
Expand Down
4 changes: 2 additions & 2 deletions kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -610,7 +610,7 @@ void set_normalized_timespec(struct timespec *ts, time_t sec, long nsec)
*
* Returns the timespec representation of the nsec parameter.
*/
struct timespec ns_to_timespec(const nsec_t nsec)
struct timespec ns_to_timespec(const s64 nsec)
{
struct timespec ts;

Expand All @@ -630,7 +630,7 @@ struct timespec ns_to_timespec(const nsec_t nsec)
*
* Returns the timeval representation of the nsec parameter.
*/
struct timeval ns_to_timeval(const nsec_t nsec)
struct timeval ns_to_timeval(const s64 nsec)
{
struct timespec ts = ns_to_timespec(nsec);
struct timeval tv;
Expand Down

0 comments on commit df869b6

Please sign in to comment.