From 6512499d21f91e8ba8530e7170e60947ec2402eb Mon Sep 17 00:00:00 2001 From: Pin-chih Lin Date: Fri, 10 Feb 2023 11:51:58 +0800 Subject: [PATCH] module_adapter: waves: fix unfreed rballoc memory block There is a rballoc() call during module_init() lacking the correspondent rfree() on module_free(). Replace it with module_allocate_memory() to ensure the memory to be freed by module_adapter. Signed-off-by: Pin-chih Lin --- src/audio/module_adapter/module/waves.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/audio/module_adapter/module/waves.c b/src/audio/module_adapter/module/waves.c index c57cd50a2989..bc86f57997f6 100644 --- a/src/audio/module_adapter/module/waves.c +++ b/src/audio/module_adapter/module/waves.c @@ -645,7 +645,7 @@ static int waves_codec_init(struct processing_module *mod) struct module_config *setup_cfg = &waves_codec->setup_cfg; /* allocate memory for set up config */ - setup_cfg->data = rballoc(0, SOF_MEM_CAPS_RAM, codec->cfg.size); + setup_cfg->data = module_allocate_memory(mod, codec->cfg.size, 16); if (!setup_cfg->data) { comp_err(dev, "waves_codec_init(): failed to alloc setup config"); module_free_memory(mod, waves_codec); @@ -658,6 +658,7 @@ static int waves_codec_init(struct processing_module *mod) codec->cfg.init_data, setup_cfg->size); if (ret) { comp_err(dev, "waves_codec_init(): failed to copy setup config %d", ret); + module_free_memory(mod, setup_cfg->data); module_free_memory(mod, waves_codec); return ret; }