diff options
author | Kai Vehmanen <kai.vehmanen@linux.intel.com> | 2020-01-08 21:08:56 +0300 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2020-01-08 22:10:08 +0300 |
commit | 8e85def5723eccea30ebf22645673692ab8cb3e2 (patch) | |
tree | 8cdf1af290e15b00d56659916e9213282d7931e4 | |
parent | 54a6a7dc107da0492a9e84fd7e9a107b3c58138d (diff) | |
download | linux-8e85def5723eccea30ebf22645673692ab8cb3e2.tar.xz |
ALSA: hda: enable regmap internal locking
This reverts commit 42ec336f1f9d ("ALSA: hda: Disable regmap
internal locking").
Without regmap locking, there is a race between snd_hda_codec_amp_init()
and PM callbacks issuing regcache_sync(). This was caught by
following kernel warning trace:
<4> [358.080081] WARNING: CPU: 2 PID: 4157 at drivers/base/regmap/regcache.c:498 regcache_cache_only+0xf5/0x130
[...]
<4> [358.080148] Call Trace:
<4> [358.080158] snd_hda_codec_amp_init+0x4e/0x100 [snd_hda_codec]
<4> [358.080169] snd_hda_codec_amp_init_stereo+0x40/0x80 [snd_hda_codec]
Suggested-by: Takashi Iwai <tiwai@suse.de>
BugLink: https://gitlab.freedesktop.org/drm/intel/issues/592
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20200108180856.5194-1-kai.vehmanen@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/hda/hdac_regmap.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sound/hda/hdac_regmap.c b/sound/hda/hdac_regmap.c index 906b1e20bae0..286361ecd640 100644 --- a/sound/hda/hdac_regmap.c +++ b/sound/hda/hdac_regmap.c @@ -363,7 +363,6 @@ static const struct regmap_config hda_regmap_cfg = { .reg_write = hda_reg_write, .use_single_read = true, .use_single_write = true, - .disable_locking = true, }; /** |