target-mips: fix memory leak
authorGonglei <arei.gonglei@huawei.com>
Tue, 28 Apr 2015 09:11:02 +0000 (17:11 +0800)
committerMichael Tokarev <mjt@tls.msk.ru>
Thu, 30 Apr 2015 13:06:17 +0000 (16:06 +0300)
Coveristy reports that variable prom_buf/params_buf going
out of scope leaks the storage it points to.

Cc: Aurelien Jarno <aurelien@aurel32.net>
Cc: Leon Alrae <leon.alrae@imgtec.com>
Signed-off-by: Gonglei <arei.gonglei@huawei.com>
Reviewed-by: Leon Alrae <leon.alrae@imgtec.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
hw/mips/mips_fulong2e.c
hw/mips/mips_malta.c
hw/mips/mips_r4k.c

index 4aae64a9eca132166a2b5aea510c693d1092f477..dea941ad887db190e43a8a7f73c09eb51f660cf7 100644 (file)
@@ -168,6 +168,7 @@ static int64_t load_kernel (CPUMIPSState *env)
     rom_add_blob_fixed("prom", prom_buf, prom_size,
                        cpu_mips_kseg0_to_phys(NULL, ENVP_ADDR));
 
+    g_free(prom_buf);
     return kernel_entry;
 }
 
index b0fa71a5141f3c74c68a38370abfef93167f4a61..482250d85d759f00acbd2a64d6c60d6f1ca189de 100644 (file)
@@ -861,6 +861,7 @@ static int64_t load_kernel (void)
     rom_add_blob_fixed("prom", prom_buf, prom_size,
                        cpu_mips_kseg0_to_phys(NULL, ENVP_ADDR));
 
+    g_free(prom_buf);
     return kernel_entry;
 }
 
index 66e2a58e86d436ebdf988edd982f77ae773ea178..f4dcacd8628d13aa34ef4d2552af806946db1513 100644 (file)
@@ -139,6 +139,7 @@ static int64_t load_kernel(void)
     rom_add_blob_fixed("params", params_buf, params_size,
                        (16 << 20) - 264);
 
+    g_free(params_buf);
     return entry;
 }