diff --git a/src/audio/module_adapter/module_adapter_ipc4.c b/src/audio/module_adapter/module_adapter_ipc4.c index 4e8c91be461c..b014290b380a 100644 --- a/src/audio/module_adapter/module_adapter_ipc4.c +++ b/src/audio/module_adapter/module_adapter_ipc4.c @@ -237,6 +237,10 @@ int module_set_large_config(struct comp_dev *dev, uint32_t param_id, bool first_ switch (pos) { case MODULE_CFG_FRAGMENT_SINGLE: + if (data_offset_size > MAILBOX_HOSTBOX_SIZE) { + comp_err(dev, "invalid large_config fragment size %u", data_offset_size); + return -EINVAL; + } fragment_size = data_offset_size; break; case MODULE_CFG_FRAGMENT_MIDDLE: