diff options
author | Charles Keepax <[email protected]> | 2014-11-17 10:48:21 +0000 |
---|---|---|
committer | Mark Brown <[email protected]> | 2014-11-17 14:22:04 +0000 |
commit | 9da7a5a9fdeeb76b2243f6b473363a7e6147ab6f (patch) | |
tree | 53ff8a29cfca39383c28327e51f9a4b869abb526 | |
parent | f114040e3ea6e07372334ade75d1ee0775c355e1 (diff) |
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 <[email protected]>
Signed-off-by: Charles Keepax <[email protected]>
Signed-off-by: Mark Brown <[email protected]>
Cc: [email protected]
-rw-r--r-- | sound/soc/codecs/wm_adsp.c | 1 |
1 files changed, 1 insertions, 0 deletions
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: |