summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2017-08-30 14:50:07 +0200
committerTakashi Iwai <tiwai@suse.de>2017-08-30 15:10:12 +0200
commitbcab3a6e64a9647e022b46182c9687a8c3aa9d11 (patch)
tree0f8fb5ae4e57b0858333a86e7412d02de6a5999e /block
parent9ce76511b67be8fbcdff36b7e1662e3887bb7377 (diff)
downloadlinux-stable-bcab3a6e64a9647e022b46182c9687a8c3aa9d11.tar.gz
linux-stable-bcab3a6e64a9647e022b46182c9687a8c3aa9d11.tar.bz2
linux-stable-bcab3a6e64a9647e022b46182c9687a8c3aa9d11.zip
ALSA: pcm: Fix power lock unbalance via OSS emulation
PCM OSS emulation issues the drain ioctl without power lock. It used to work in the earlier kernels as the power lock was taken inside snd_pcm_drain() itself. But since 68b4acd32249 ("ALSA: pcm: Apply power lock globally to common ioctls"), the power lock is taken outside the function. Due to that change, the call via OSS emulation leads to the unbalanced power lock, thus it deadlocks. As a quick fix, just take the power lock before snd_pcm_drain() call for OSS emulation path. A better cleanup will follow later. Fixes: 68b4acd32249 ("ALSA: pcm: Apply power lock globally to common ioctls") Reported-and-tested-by: Markus Trippelsdorf <markus@trippelsdorf.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions