Messages in this thread | | | Date | Wed, 15 Jun 2005 21:39:09 +0400 | From | Oleg Nesterov <> | Subject | Re: [BUG] Race condition with it_real_fn in kernel/itimer.c |
| |
Steven Rostedt wrote: > > + try_again: > spin_lock_irq(&tsk->sighand->siglock); > interval = tsk->signal->it_real_incr; > val = it_real_value(tsk->signal); > - if (val) > + if (val) { > + spin_unlock_irq(&tsk->sighand->siglock); > del_timer_sync(&tsk->signal->real_timer); > + goto try_again;
I think we don't need del_timer_sync() at all, just del_timer().
Because it_real_value() returns 0 when timer is not pending. And in this case the timer may still be running, but do_setitimer() doesn't call del_timer_sync().
Oleg. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |