diff options
author | Yang Jihong <yangjihong1@huawei.com> | 2024-01-19 04:03:02 +0000 |
---|---|---|
committer | Sasha Levin <sashal@kernel.org> | 2024-03-26 18:18:29 -0400 |
commit | a99aac31221acf81106e81cef8ae531a6dfeb567 (patch) | |
tree | a3f2b7e3a3922288700d1a44b5c9f4a7832b1871 /tools | |
parent | 1f7108fa7cb5a397b366527df07da53fe3002075 (diff) | |
download | linux-stable-a99aac31221acf81106e81cef8ae531a6dfeb567.tar.gz linux-stable-a99aac31221acf81106e81cef8ae531a6dfeb567.tar.bz2 linux-stable-a99aac31221acf81106e81cef8ae531a6dfeb567.zip |
perf record: Fix possible incorrect free in record__switch_output()
[ Upstream commit aff10a165201f6f60cff225083ce301ad3f5d8f1 ]
perf_data__switch() may not assign a legal value to 'new_filename'.
In this case, 'new_filename' uses the on-stack value, which may cause a
incorrect free and unexpected result.
Fixes: 03724b2e9c45 ("perf record: Allow to limit number of reported perf.data files")
Signed-off-by: Yang Jihong <yangjihong1@huawei.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240119040304.3708522-2-yangjihong1@huawei.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/perf/builtin-record.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index dcf288a4fb9a..fa13479ed73d 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -1818,8 +1818,8 @@ static int record__switch_output(struct record *rec, bool at_exit) { struct perf_data *data = &rec->data; + char *new_filename = NULL; int fd, err; - char *new_filename; /* Same Size: "2015122520103046"*/ char timestamp[] = "InvalidTimestamp"; |