summaryrefslogtreecommitdiffstats
path: root/fs/binfmt_elf.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2013-03-15 09:19:11 +0100
committerTakashi Iwai <tiwai@suse.de>2013-03-20 18:36:06 +0100
commiteb49faa6a4703698fa5d8b304b01e7f59e7d1f11 (patch)
tree13fcb4aedfee2a58bd690690b7ca7f17b0608cf9 /fs/binfmt_elf.c
parentALSA: hda - Fix typo in checking IEC958 emphasis bit (diff)
downloadlinux-eb49faa6a4703698fa5d8b304b01e7f59e7d1f11.tar.xz
linux-eb49faa6a4703698fa5d8b304b01e7f59e7d1f11.zip
ALSA: hda - Fix abuse of snd_hda_lock_devices() for DSP loader
The current DSP loader code abuses snd_hda_lock_devices() for ensuring the DSP loader not conflicting with the other normal operations. But this trick obviously doesn't work for the PM resume since the streams are kept opened there where snd_hda_lock_devices() returns -EBUSY. That means we need another lock mechanism instead of abuse. This patch provides the new lock state to azx_dev. Theoretically it's possible that the DSP loader conflicts with the stream that has been already assigned for another PCM. If it's running, the DSP loader should simply fail. If not -- it's the case for PM resume --, we should assign this stream temporarily to the DSP loader, and take it back to the PCM after finishing DSP loading. If the PCM is operated during the DSP loading, it should get an error, too. Reported-and-tested-by: Dylan Reid <dgreid@chromium.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'fs/binfmt_elf.c')
0 files changed, 0 insertions, 0 deletions