kselftest/arm64: fix a memleak in zt_regs_run()
authorDing Xiang <dingxiang@cmss.chinamobile.com>
Tue, 15 Aug 2023 07:49:15 +0000 (15:49 +0800)
committerWill Deacon <will@kernel.org>
Wed, 16 Aug 2023 13:17:06 +0000 (14:17 +0100)
If memcmp() does not return 0, "zeros" need to be freed to prevent memleak

Signed-off-by: Ding Xiang <dingxiang@cmss.chinamobile.com>
Link: https://lore.kernel.org/r/20230815074915.245528-1-dingxiang@cmss.chinamobile.com
Signed-off-by: Will Deacon <will@kernel.org>
tools/testing/selftests/arm64/signal/testcases/zt_regs.c

index e1eb4d5..2e384d7 100644 (file)
@@ -65,6 +65,7 @@ int zt_regs_run(struct tdescr *td, siginfo_t *si, ucontext_t *uc)
        if (memcmp(zeros, (char *)zt + ZT_SIG_REGS_OFFSET,
                   ZT_SIG_REGS_SIZE(zt->nregs)) != 0) {
                fprintf(stderr, "ZT data invalid\n");
+               free(zeros);
                return 1;
        }