mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
ALSA: hda: fix: lock reg_lock before calling snd_hdac_bus_update_rirb
The patch is to fix commit5e13cf6cd6
(ALSA: hda: add polling mode in snd_hdac_bus_get_response) spin_lock_irq should be called before snd_hdac_bus_update_rirb. Fixes:5e13cf6cd6
("ALSA: hda: add polling mode in snd_hdac_bus_get_response") Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
64ca9d9fcb
commit
ee8829dc60
@ -239,9 +239,9 @@ int snd_hdac_bus_get_response(struct hdac_bus *bus, unsigned int addr,
|
||||
timeout = jiffies + msecs_to_jiffies(1000);
|
||||
|
||||
for (loopcounter = 0;; loopcounter++) {
|
||||
spin_lock_irq(&bus->reg_lock);
|
||||
if (bus->polling_mode)
|
||||
snd_hdac_bus_update_rirb(bus);
|
||||
spin_lock_irq(&bus->reg_lock);
|
||||
if (!bus->rirb.cmds[addr]) {
|
||||
if (res)
|
||||
*res = bus->rirb.res[addr]; /* the last value */
|
||||
|
Loading…
Reference in New Issue
Block a user