mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
timekeeping: remove timespec_add/timespec_del
The last users were removed a while ago since everyone moved to ktime_t, so we can remove the two unused interfaces for old timespec structures. With those two gone, set_normalized_timespec() is also unused, so remove that as well. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: John Stultz <john.stultz@linaro.org>
This commit is contained in:
parent
926617889d
commit
437e78d3fd
2 changed files with 0 additions and 61 deletions
|
@ -96,31 +96,6 @@ static inline int timespec_compare(const struct timespec *lhs, const struct time
|
||||||
return lhs->tv_nsec - rhs->tv_nsec;
|
return lhs->tv_nsec - rhs->tv_nsec;
|
||||||
}
|
}
|
||||||
|
|
||||||
extern void set_normalized_timespec(struct timespec *ts, time_t sec, s64 nsec);
|
|
||||||
|
|
||||||
static inline struct timespec timespec_add(struct timespec lhs,
|
|
||||||
struct timespec rhs)
|
|
||||||
{
|
|
||||||
struct timespec ts_delta;
|
|
||||||
|
|
||||||
set_normalized_timespec(&ts_delta, lhs.tv_sec + rhs.tv_sec,
|
|
||||||
lhs.tv_nsec + rhs.tv_nsec);
|
|
||||||
return ts_delta;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* sub = lhs - rhs, in normalized form
|
|
||||||
*/
|
|
||||||
static inline struct timespec timespec_sub(struct timespec lhs,
|
|
||||||
struct timespec rhs)
|
|
||||||
{
|
|
||||||
struct timespec ts_delta;
|
|
||||||
|
|
||||||
set_normalized_timespec(&ts_delta, lhs.tv_sec - rhs.tv_sec,
|
|
||||||
lhs.tv_nsec - rhs.tv_nsec);
|
|
||||||
return ts_delta;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Returns true if the timespec is norm, false if denorm:
|
* Returns true if the timespec is norm, false if denorm:
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -386,42 +386,6 @@ time64_t mktime64(const unsigned int year0, const unsigned int mon0,
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(mktime64);
|
EXPORT_SYMBOL(mktime64);
|
||||||
|
|
||||||
/**
|
|
||||||
* set_normalized_timespec - set timespec sec and nsec parts and normalize
|
|
||||||
*
|
|
||||||
* @ts: pointer to timespec variable to be set
|
|
||||||
* @sec: seconds to set
|
|
||||||
* @nsec: nanoseconds to set
|
|
||||||
*
|
|
||||||
* Set seconds and nanoseconds field of a timespec variable and
|
|
||||||
* normalize to the timespec storage format
|
|
||||||
*
|
|
||||||
* Note: The tv_nsec part is always in the range of
|
|
||||||
* 0 <= tv_nsec < NSEC_PER_SEC
|
|
||||||
* For negative values only the tv_sec field is negative !
|
|
||||||
*/
|
|
||||||
void set_normalized_timespec(struct timespec *ts, time_t sec, s64 nsec)
|
|
||||||
{
|
|
||||||
while (nsec >= NSEC_PER_SEC) {
|
|
||||||
/*
|
|
||||||
* The following asm() prevents the compiler from
|
|
||||||
* optimising this loop into a modulo operation. See
|
|
||||||
* also __iter_div_u64_rem() in include/linux/time.h
|
|
||||||
*/
|
|
||||||
asm("" : "+rm"(nsec));
|
|
||||||
nsec -= NSEC_PER_SEC;
|
|
||||||
++sec;
|
|
||||||
}
|
|
||||||
while (nsec < 0) {
|
|
||||||
asm("" : "+rm"(nsec));
|
|
||||||
nsec += NSEC_PER_SEC;
|
|
||||||
--sec;
|
|
||||||
}
|
|
||||||
ts->tv_sec = sec;
|
|
||||||
ts->tv_nsec = nsec;
|
|
||||||
}
|
|
||||||
EXPORT_SYMBOL(set_normalized_timespec);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ns_to_timespec - Convert nanoseconds to timespec
|
* ns_to_timespec - Convert nanoseconds to timespec
|
||||||
* @nsec: the nanoseconds value to be converted
|
* @nsec: the nanoseconds value to be converted
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue