summaryrefslogtreecommitdiffstats
path: root/kernel/itimer.c
diff options
context:
space:
mode:
authorJames Bottomley <jejb@titanic.(none)>2005-05-20 22:27:44 +0200
committerJames Bottomley <jejb@titanic.(none)>2005-05-20 22:27:44 +0200
commitad34ea2cc3845ef4dcd7d12fb0fa8484734bd672 (patch)
treead434400f5ecaa33b433c8f830e40792d8d6c05c /kernel/itimer.c
parent[SCSI] remove Documentation/DocBook/scsidrivers.tmpl (diff)
parentLinux v2.6.12-rc4 (diff)
downloadlinux-ad34ea2cc3845ef4dcd7d12fb0fa8484734bd672.tar.xz
linux-ad34ea2cc3845ef4dcd7d12fb0fa8484734bd672.zip
merge by hand - fix up rejections in Documentation/DocBook/Makefile
Diffstat (limited to 'kernel/itimer.c')
-rw-r--r--kernel/itimer.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/itimer.c b/kernel/itimer.c
index e9a40e947e07..1dc988e0d2c7 100644
--- a/kernel/itimer.c
+++ b/kernel/itimer.c
@@ -123,7 +123,11 @@ static inline void it_real_arm(struct task_struct *p, unsigned long interval)
return;
if (interval > (unsigned long) LONG_MAX)
interval = LONG_MAX;
- p->signal->real_timer.expires = jiffies + interval;
+ /* the "+ 1" below makes sure that the timer doesn't go off before
+ * the interval requested. This could happen if
+ * time requested % (usecs per jiffy) is more than the usecs left
+ * in the current jiffy */
+ p->signal->real_timer.expires = jiffies + interval + 1;
add_timer(&p->signal->real_timer);
}