ALSA: hrtimer - Fix lock-up
authorTakashi Iwai <tiwai@suse.de>
Fri, 11 Dec 2009 11:51:05 +0000 (12:51 +0100)
committerTakashi Iwai <tiwai@suse.de>
Fri, 11 Dec 2009 11:53:27 +0000 (12:53 +0100)
The timer stop callback can be called from snd_timer_interrupt(), which
is called from the hrtimer callback.  Since hrtimer_cancel() waits for
the callback completion, this eventually results in a lock-up.

This patch fixes the problem by just toggling a flag at stop callback
and call hrtimer_cancel() later.

Reported-and-tested-by: Wojtek Zabolotny <W.Zabolotny@elka.pw.edu.pl>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

No differences found