From: "Steven Rostedt (Google)" <rostedt@xxxxxxxxxxx> The failure of allocating buf_to returns without freeing buf_from. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=217127 Reported-by: Markus Elfring <Markus.Elfring@xxxxxx> Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx> --- lib/trace-cmd/trace-compress.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/trace-cmd/trace-compress.c b/lib/trace-cmd/trace-compress.c index ca6e03b88e69..e550dbd4b0d5 100644 --- a/lib/trace-cmd/trace-compress.c +++ b/lib/trace-cmd/trace-compress.c @@ -696,8 +696,10 @@ int tracecmd_compress_copy_from(struct tracecmd_compression *handle, int fd, int return -1; buf_to = malloc(csize); - if (!buf_to) + if (!buf_to) { + free(buf_from); return -1; + } /* save the initial offset and write 0 as initial chunk count */ offset = lseek(handle->fd, 0, SEEK_CUR); -- 2.39.2