summaryrefslogtreecommitdiffstats
path: root/kernel/posix-timers.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-10 12:02:45 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-10 12:02:45 -0800
commit58a14ee9c49aa2b9742c56a0477666335368e05e (patch)
tree01dae0e9458eea6289f78bd21cea056798e5c75e /kernel/posix-timers.c
parent712a30e63c8066ed84385b12edbfb804f49cbc44 (diff)
parentc289b074b66e2e59c65aba73f40b99e797e92d2f (diff)
downloadkernel-crypto-58a14ee9c49aa2b9742c56a0477666335368e05e.tar.gz
kernel-crypto-58a14ee9c49aa2b9742c56a0477666335368e05e.tar.xz
kernel-crypto-58a14ee9c49aa2b9742c56a0477666335368e05e.zip
Merge git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt
* git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt: hrtimer: don't modify restart_block->fn in restart functions hrtimer: fix *rmtp/restarts handling in compat_sys_nanosleep() hrtimer: fix *rmtp handling in hrtimer_nanosleep() ntp: correct inconsistent interval/tick_length usage
Diffstat (limited to 'kernel/posix-timers.c')
-rw-r--r--kernel/posix-timers.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
index ce268966007..022c9c3cee6 100644
--- a/kernel/posix-timers.c
+++ b/kernel/posix-timers.c
@@ -982,20 +982,9 @@ sys_clock_getres(const clockid_t which_clock, struct timespec __user *tp)
static int common_nsleep(const clockid_t which_clock, int flags,
struct timespec *tsave, struct timespec __user *rmtp)
{
- struct timespec rmt;
- int ret;
-
- ret = hrtimer_nanosleep(tsave, rmtp ? &rmt : NULL,
- flags & TIMER_ABSTIME ?
- HRTIMER_MODE_ABS : HRTIMER_MODE_REL,
- which_clock);
-
- if (ret && rmtp) {
- if (copy_to_user(rmtp, &rmt, sizeof(*rmtp)))
- return -EFAULT;
- }
-
- return ret;
+ return hrtimer_nanosleep(tsave, rmtp, flags & TIMER_ABSTIME ?
+ HRTIMER_MODE_ABS : HRTIMER_MODE_REL,
+ which_clock);
}
asmlinkage long