diff options
author | Cezary Rojewski <cezary.rojewski@intel.com> | 2022-10-10 14:19:50 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-10-17 13:50:13 +0200 |
commit | 18a787909ca6bac3a3a3235c08d68a4a9838fe7b (patch) | |
tree | 4472987938af65e27dd707e90eacabbcd10e5986 /sound/soc/intel | |
parent | ASoC: Intel: avs: Add missing include to HDA board (diff) | |
download | linux-18a787909ca6bac3a3a3235c08d68a4a9838fe7b.tar.xz linux-18a787909ca6bac3a3a3235c08d68a4a9838fe7b.zip |
ASoC: Intel: avs: Do not reuse msg between different IPC handlers
While LOG_BUFFER_STATUS is a simple notification with only one
meaningful field, same message ptr shall not be reused for two different
handlers.
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://lore.kernel.org/r/20221010121955.718168-11-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/intel')
-rw-r--r-- | sound/soc/intel/avs/apl.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sound/soc/intel/avs/apl.c b/sound/soc/intel/avs/apl.c index b8e2b23c9f64..7c8ce98eda9d 100644 --- a/sound/soc/intel/avs/apl.c +++ b/sound/soc/intel/avs/apl.c @@ -133,12 +133,14 @@ static int apl_coredump(struct avs_dev *adev, union avs_notify_msg *msg) buf = apl_log_payload_addr(addr); memcpy_fromio(&layout, addr, sizeof(layout)); if (!apl_is_entry_stackdump(buf + layout.read_ptr)) { + union avs_notify_msg lbs_msg = AVS_NOTIFICATION(LOG_BUFFER_STATUS); + /* * DSP awaits the remaining logs to be * gathered before dumping stack */ - msg->log.core = msg->ext.coredump.core_id; - avs_dsp_op(adev, log_buffer_status, msg); + lbs_msg.log.core = msg->ext.coredump.core_id; + avs_dsp_op(adev, log_buffer_status, &lbs_msg); } pos = dump + AVS_FW_REGS_SIZE; |