From: Charles Keepax Date: Mon, 17 Nov 2014 10:48:21 +0000 (+0000) Subject: ASoC: wm_adsp: Avoid attempt to free buffers that might still be in use X-Git-Tag: v3.18-rc6~11^2~2^2~1^2 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=9da7a5a9fdeeb76b2243f6b473363a7e6147ab6f;p=karo-tx-linux.git ASoC: wm_adsp: Avoid attempt to free buffers that might still be in use We should not free any buffers associated with writing out coefficients to the DSP until all the async writes have completed. This patch updates the out of memory path when allocating a new buffer to include a call to regmap_async_complete. Reported-by: JS Park Signed-off-by: Charles Keepax Signed-off-by: Mark Brown Cc: stable@vger.kernel.org --- diff --git a/sound/soc/codecs/wm_adsp.c b/sound/soc/codecs/wm_adsp.c index f412a9911a75..67124783558a 100644 --- a/sound/soc/codecs/wm_adsp.c +++ b/sound/soc/codecs/wm_adsp.c @@ -1355,6 +1355,7 @@ static int wm_adsp_load_coeff(struct wm_adsp *dsp) file, blocks, pos - firmware->size); out_fw: + regmap_async_complete(regmap); release_firmware(firmware); wm_adsp_buf_free(&buf_list); out: