From: Takashi Iwai Date: Mon, 8 Aug 2011 10:24:46 +0000 (+0200) Subject: ALSA: timer - Fix Oops at closing slave timer X-Git-Tag: v2.6.33.18~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0ef6e5ad8910506f865cf5d4d6399035b9d92aa5;p=thirdparty%2Fkernel%2Fstable.git ALSA: timer - Fix Oops at closing slave timer commit 0584ffa548b6e59aceb027112f23a55f0133400e upstream. A slave-timer instance has no timer reference, and this results in NULL-dereference at stopping the timer, typically called at closing the device. Reference: https://bugzilla.kernel.org/show_bug.cgi?id=40682 Signed-off-by: Takashi Iwai Signed-off-by: Greg Kroah-Hartman --- diff --git a/sound/core/timer.c b/sound/core/timer.c index 8f8b17ac074df..4a138441f7992 100644 --- a/sound/core/timer.c +++ b/sound/core/timer.c @@ -530,6 +530,8 @@ int snd_timer_stop(struct snd_timer_instance *timeri) if (err < 0) return err; timer = timeri->timer; + if (!timer) + return -EINVAL; spin_lock_irqsave(&timer->lock, flags); timeri->cticks = timeri->ticks; timeri->pticks = 0;