diff --git a/[refs] b/[refs] index 30c5cfc190ca..b81387de6782 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d5e181f78ac753893eb930868a52a4488cd3de0a +refs/heads/master: 9412e28649d0272df5e4af57bb378926fd4df580 diff --git a/trunk/include/linux/time.h b/trunk/include/linux/time.h index 05f9517a8ed1..e15206a7e82e 100644 --- a/trunk/include/linux/time.h +++ b/trunk/include/linux/time.h @@ -170,10 +170,13 @@ extern struct timeval ns_to_timeval(const s64 nsec); * timespec_add_ns - Adds nanoseconds to a timespec * @a: pointer to timespec to be incremented * @ns: unsigned nanoseconds value to be added + * + * This must always be inlined because its used from the x86-64 vdso, + * which cannot call other kernel functions. */ -static inline void timespec_add_ns(struct timespec *a, u64 ns) +static __always_inline void timespec_add_ns(struct timespec *a, u64 ns) { - a->tv_sec += iter_div_u64_rem(a->tv_nsec + ns, NSEC_PER_SEC, &ns); + a->tv_sec += __iter_div_u64_rem(a->tv_nsec + ns, NSEC_PER_SEC, &ns); a->tv_nsec = ns; } #endif /* __KERNEL__ */