Skip to content

Commit d750e0c

Browse files
ipc: Fix incorrect dcache invalidate
struct sof_ipc_cmd_hdr belongs to IPC3. There is no 'size' field in IPC4 payload at that offset. comp_data is zeroed on init and on IPC4 it is only used to send responses by get_large_config. Probably get_large_config is rarely used as, otherwise, that would result in invalidates of dcache with weird sizes and problems at runtime. Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
1 parent b2a138b commit d750e0c

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

src/ipc/ipc-common.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,11 @@ int ipc_process_on_core(uint32_t core, bool blocking)
5555
return -EACCES;
5656
}
5757

58+
#if !CONFIG_IPC_MAJOR_4
5859
/* The other core will write there its response */
5960
dcache_invalidate_region((__sparse_force void __sparse_cache *)MAILBOX_HOSTBOX_BASE,
6061
((struct sof_ipc_cmd_hdr *)ipc->comp_data)->size);
62+
#endif
6163

6264
/*
6365
* If the primary core is waiting for secondary cores to complete, it

0 commit comments

Comments
 (0)