From eed07c607f7ffcd6fc63903f6351a7b1b0ad4a3a Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 1 Feb 2006 03:05:09 -0800 Subject: [PATCH] --- yaml --- r: 19347 b: refs/heads/master c: a16a1c095a2392d49fafea22f3a508e268ef7167 h: refs/heads/master i: 19345: 073df5a1fdc178d5b279ebb3071fe822a32b0ee3 19343: f18ea3538a4184f4e6ba9a9157605ad4b67ec1ee v: v3 --- [refs] | 2 +- trunk/kernel/itimer.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index fe72e73f6156..78fc746fa378 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b6557fbca805217588a412f391a65ceafcf1a1af +refs/heads/master: a16a1c095a2392d49fafea22f3a508e268ef7167 diff --git a/trunk/kernel/itimer.c b/trunk/kernel/itimer.c index 6433d0685506..379be2f8c84c 100644 --- a/trunk/kernel/itimer.c +++ b/trunk/kernel/itimer.c @@ -155,16 +155,16 @@ int do_setitimer(int which, struct itimerval *value, struct itimerval *ovalue) again: spin_lock_irq(&tsk->sighand->siglock); timer = &tsk->signal->real_timer; - /* We are sharing ->siglock with it_real_fn() */ - if (hrtimer_try_to_cancel(timer) < 0) { - spin_unlock_irq(&tsk->sighand->siglock); - goto again; - } if (ovalue) { ovalue->it_value = itimer_get_remtime(timer); ovalue->it_interval = ktime_to_timeval(tsk->signal->it_real_incr); } + /* We are sharing ->siglock with it_real_fn() */ + if (hrtimer_try_to_cancel(timer) < 0) { + spin_unlock_irq(&tsk->sighand->siglock); + goto again; + } tsk->signal->it_real_incr = timeval_to_ktime(value->it_interval); expires = timeval_to_ktime(value->it_value);