diff options
author | Ben Hutchings <ben.hutchings@codethink.co.uk> | 2018-05-17 22:34:39 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-05-30 07:50:16 +0200 |
commit | 416808fbc20144d1cb76400d97ddafe26c6df9ff (patch) | |
tree | 63806ba2af23786a5d5d8f8660628f8ed5396164 /sound | |
parent | b14cfa26071daa8ad8c58aae85773e7e78647f31 (diff) | |
download | linux-stable-416808fbc20144d1cb76400d97ddafe26c6df9ff.tar.gz linux-stable-416808fbc20144d1cb76400d97ddafe26c6df9ff.tar.bz2 linux-stable-416808fbc20144d1cb76400d97ddafe26c6df9ff.zip |
ALSA: timer: Fix pause event notification
commit 3ae180972564846e6d794e3615e1ab0a1e6c4ef9 upstream.
Commit f65e0d299807 ("ALSA: timer: Call notifier in the same spinlock")
combined the start/continue and stop/pause functions, and in doing so
changed the event code for the pause case to SNDRV_TIMER_EVENT_CONTINUE.
Change it back to SNDRV_TIMER_EVENT_PAUSE.
Fixes: f65e0d299807 ("ALSA: timer: Call notifier in the same spinlock")
Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
Cc: stable@vger.kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/core/timer.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/core/timer.c b/sound/core/timer.c index e5ddc475dca4..152254193c69 100644 --- a/sound/core/timer.c +++ b/sound/core/timer.c @@ -547,7 +547,7 @@ static int snd_timer_stop1(struct snd_timer_instance *timeri, bool stop) else timeri->flags |= SNDRV_TIMER_IFLG_PAUSED; snd_timer_notify1(timeri, stop ? SNDRV_TIMER_EVENT_STOP : - SNDRV_TIMER_EVENT_CONTINUE); + SNDRV_TIMER_EVENT_PAUSE); unlock: spin_unlock_irqrestore(&timer->lock, flags); return result; @@ -569,7 +569,7 @@ static int snd_timer_stop_slave(struct snd_timer_instance *timeri, bool stop) list_del_init(&timeri->ack_list); list_del_init(&timeri->active_list); snd_timer_notify1(timeri, stop ? SNDRV_TIMER_EVENT_STOP : - SNDRV_TIMER_EVENT_CONTINUE); + SNDRV_TIMER_EVENT_PAUSE); spin_unlock(&timeri->timer->lock); } spin_unlock_irqrestore(&slave_active_lock, flags); |