diff options
author | Colin Ian King <colin.king@canonical.com> | 2016-09-29 17:32:12 (GMT) |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-09-29 18:21:03 (GMT) |
commit | 0730bd2e2ade00d88647b13a0c17cde254ddf56e (patch) | |
tree | 37570151b1860c36b98aa74a2099fabd3c914edb /sound/soc/intel/skylake | |
parent | 5919a3898136aae4d2cb4b18b44f70f7b185aa47 (diff) | |
download | linux-0730bd2e2ade00d88647b13a0c17cde254ddf56e.tar.xz |
ASoC: Intel: Skylake: fix memory leak of module on error exit path
Currently there is a memory leak of module on a ENOMEM return path.
Fix this by kfree'ing module before returning.
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/intel/skylake')
-rw-r--r-- | sound/soc/intel/skylake/skl-sst-utils.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sound/soc/intel/skylake/skl-sst-utils.c b/sound/soc/intel/skylake/skl-sst-utils.c index 1aa0f37..3fe939c 100644 --- a/sound/soc/intel/skylake/skl-sst-utils.c +++ b/sound/soc/intel/skylake/skl-sst-utils.c @@ -349,8 +349,10 @@ int snd_skl_parse_uuids(struct sst_dsp *ctx, const struct firmware *fw, module->max_instance = mod_entry->instance_max_count; size = sizeof(int) * mod_entry->instance_max_count; module->instance_id = devm_kzalloc(ctx->dev, size, GFP_KERNEL); - if (!module->instance_id) + if (!module->instance_id) { + kfree(module); return -ENOMEM; + } list_add_tail(&module->list, &skl->uuid_list); |