[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20161022195727.13209-1-jeremie.galarneau@efficios.com>
Date: Sat, 22 Oct 2016 15:57:27 -0400
From: Jérémie Galarneau
<jeremie.galarneau@...icios.com>
To: linux-kernel@...r.kernel.org
Cc: Jérémie Galarneau
<jeremie.galarneau@...icios.com>, Wang Nan <wangnan0@...wei.com>,
Philippe Proulx <philippe.proulx@...icios.com>,
"David S . Miller" <davem@...emloft.net>,
Alexei Starovoitov <ast@...nel.org>,
Brendan Gregg <brendan.d.gregg@...il.com>,
Jiri Olsa <jolsa@...nel.org>,
Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>,
Namhyung Kim <namhyung@...nel.org>,
Zefan Li <lizefan@...wei.com>, pi3orama@....com
Subject: [PATCH] Fix: perf data convert: leak of bt_ctf_field_type
The ctf_writer structure contains an union of a structure containing
7 pointer members and an array of 6 struct bt_ctf_field_type*, which
are used to release the references to these objects in
ctf_writer__cleanup_data().
26812d46 introduced the u32_hex member and should have increased the
array's size. The disparity results in the last member of the "data"
structure being leaked as its reference is never released/put.
Philippe Proulx proposed a patch back in February which hasn't received
any feedback and would eliminate the need to manually update this
array.
http://lkml.iu.edu/hypermail/linux/kernel/1602.1/03800.html
CC-ing the people who were CC-ed on the original patch.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@...icios.com>
Cc: Wang Nan <wangnan0@...wei.com>
Cc: Philippe Proulx <philippe.proulx@...icios.com>
Cc: David S. Miller <davem@...emloft.net>
Cc: Alexei Starovoitov <ast@...nel.org>
Cc: Brendan Gregg <brendan.d.gregg@...il.com>
Cc: David S. Miller <davem@...emloft.net>
Cc: Jiri Olsa <jolsa@...nel.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>
Cc: Namhyung Kim <namhyung@...nel.org>
Cc: Zefan Li <lizefan@...wei.com>
Cc: pi3orama@....com
---
tools/perf/util/data-convert-bt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/data-convert-bt.c b/tools/perf/util/data-convert-bt.c
index 7123f4d..16364f0 100644
--- a/tools/perf/util/data-convert-bt.c
+++ b/tools/perf/util/data-convert-bt.c
@@ -67,7 +67,7 @@ struct ctf_writer {
struct bt_ctf_field_type *u32_hex;
struct bt_ctf_field_type *u64_hex;
};
- struct bt_ctf_field_type *array[6];
+ struct bt_ctf_field_type *array[7];
} data;
struct bt_ctf_event_class *comm_class;
struct bt_ctf_event_class *exit_class;
--
2.10.1
Powered by blists - more mailing lists