Skip to content

Commit 58a37e7

Browse files
Wang YanPaul Walmsley
authored andcommitted
selftests/riscv: ptrace: Fix memory leak of regset_data in vector tests
The regset_data buffer allocated with calloc() in the parent process of several vector ptrace tests is never freed before returning, causing memory leaks in: - ptrace_v_not_enabled - ptrace_v_early_debug - ptrace_v_syscall_clobbering - v_csr_invalid/ptrace_v_invalid_values - v_csr_valid/ptrace_v_valid_values Add free(regset_data) before kill(pid, SIGKILL) to release the allocated buffer. Signed-off-by: Wang Yan <wangyan01@kylinos.cn> Reviewed-by: Sergey Matyukevich <geomatsi@gmail.com> Link: https://patch.msgid.link/20260710083437.489648-1-wangyan01@kylinos.cn [pjw@kernel.org: Fixed Sergey's E-mail address] Signed-off-by: Paul Walmsley <pjw@kernel.org>
1 parent a2ac823 commit 58a37e7

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

tools/testing/selftests/riscv/vector/validate_v_ptrace.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ TEST(ptrace_v_not_enabled)
7575
ASSERT_EQ(-1, ret);
7676

7777
/* cleanup */
78-
78+
free(regset_data);
7979
ASSERT_EQ(0, kill(pid, SIGKILL));
8080
}
8181
}
@@ -207,7 +207,7 @@ TEST(ptrace_v_early_debug)
207207
EXPECT_EQ(vl_csr, regset_data->vl);
208208

209209
/* cleanup */
210-
210+
free(regset_data);
211211
ASSERT_EQ(0, kill(pid, SIGKILL));
212212
}
213213
}
@@ -331,7 +331,7 @@ TEST(ptrace_v_syscall_clobbering)
331331
EXPECT_EQ(0UL, regset_data->vl);
332332

333333
/* cleanup */
334-
334+
free(regset_data);
335335
ASSERT_EQ(0, kill(pid, SIGKILL));
336336
}
337337
}
@@ -649,7 +649,7 @@ TEST_F(v_csr_invalid, ptrace_v_invalid_values)
649649
ASSERT_EQ(ret, -1);
650650

651651
/* cleanup */
652-
652+
free(regset_data);
653653
ASSERT_EQ(0, kill(pid, SIGKILL));
654654
}
655655
}
@@ -911,7 +911,7 @@ TEST_F(v_csr_valid, ptrace_v_valid_values)
911911
EXPECT_EQ(regset_data->vlenb, vlenb);
912912

913913
/* cleanup */
914-
914+
free(regset_data);
915915
ASSERT_EQ(0, kill(pid, SIGKILL));
916916
}
917917
}

0 commit comments

Comments
 (0)