summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.osdl.org>2003-11-07 20:11:44 -0800
committerLinus Torvalds <torvalds@home.osdl.org>2003-11-07 20:11:44 -0800
commit35d64a3345463ace22f42ca6ca993b84e1d5f1e9 (patch)
tree1d38f45655574505061f9bfcf1bf8d2bb738fce8 /kernel
parent59ccfc460a322aa9522a259572258a5fffbd4bcc (diff)
Don't fold nanosleep() into clock_nanosleep().
The latter has buggy restart functionality and is a lot more complicated anyway.
Diffstat (limited to 'kernel')
-rw-r--r--kernel/posix-timers.c25
-rw-r--r--kernel/timer.c2
2 files changed, 1 insertions, 26 deletions
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
index 64940545cb84..6b248db8034e 100644
--- a/kernel/posix-timers.c
+++ b/kernel/posix-timers.c
@@ -1104,29 +1104,6 @@ long clock_nanosleep_restart(struct restart_block *restart_block);
extern long do_clock_nanosleep(clockid_t which_clock, int flags,
struct timespec *t);
-#ifdef FOLD_NANO_SLEEP_INTO_CLOCK_NANO_SLEEP
-
-asmlinkage long
-sys_nanosleep(struct timespec __user *rqtp, struct timespec __user *rmtp)
-{
- struct timespec t;
- long ret;
-
- if (copy_from_user(&t, rqtp, sizeof (t)))
- return -EFAULT;
-
- if ((unsigned) t.tv_nsec >= NSEC_PER_SEC || t.tv_sec < 0)
- return -EINVAL;
-
- ret = do_clock_nanosleep(CLOCK_REALTIME, 0, &t);
-
- if (ret == -ERESTART_RESTARTBLOCK && rmtp &&
- copy_to_user(rmtp, &t, sizeof (t)))
- return -EFAULT;
- return ret;
-}
-#endif // ! FOLD_NANO_SLEEP_INTO_CLOCK_NANO_SLEEP
-
asmlinkage long
sys_clock_nanosleep(clockid_t which_clock, int flags,
const struct timespec __user *rqtp,
@@ -1244,7 +1221,7 @@ do_clock_nanosleep(clockid_t which_clock, int flags, struct timespec *tsave)
return 0;
}
/*
- * This will restart either clock_nanosleep or clock_nanosleep
+ * This will restart clock_nanosleep. Incorrectly, btw.
*/
long
clock_nanosleep_restart(struct restart_block *restart_block)
diff --git a/kernel/timer.c b/kernel/timer.c
index a8442b38659b..a9c8c1958b6a 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -1059,7 +1059,6 @@ asmlinkage long sys_gettid(void)
{
return current->pid;
}
-#ifndef FOLD_NANO_SLEEP_INTO_CLOCK_NANO_SLEEP
static long nanosleep_restart(struct restart_block *restart)
{
@@ -1118,7 +1117,6 @@ asmlinkage long sys_nanosleep(struct timespec *rqtp, struct timespec *rmtp)
}
return ret;
}
-#endif // ! FOLD_NANO_SLEEP_INTO_CLOCK_NANO_SLEEP
/*
* sys_sysinfo - fill in sysinfo struct