Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1506593 > unrolled thread
| Started by | Jérémie Galarneau <jeremie.galarneau@efficios.com> |
|---|---|
| First post | 2016-10-22 22:00 +0200 |
| Last post | 2016-10-23 13:50 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] Fix: perf data convert: leak of bt_ctf_field_type Jérémie Galarneau <jeremie.galarneau@efficios.com> - 2016-10-22 22:00 +0200
Re: [PATCH] Fix: perf data convert: leak of bt_ctf_field_type Jiri Olsa <jolsa@redhat.com> - 2016-10-23 13:50 +0200
| From | Jérémie Galarneau <jeremie.galarneau@efficios.com> |
|---|---|
| Date | 2016-10-22 22:00 +0200 |
| Subject | [PATCH] Fix: perf data convert: leak of bt_ctf_field_type |
| Message-ID | <svaCt-7IO-7@gated-at.bofh.it> |
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@efficios.com>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: Philippe Proulx <philippe.proulx@efficios.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Zefan Li <lizefan@huawei.com>
Cc: pi3orama@163.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
[toc] | [next] | [standalone]
| From | Jiri Olsa <jolsa@redhat.com> |
|---|---|
| Date | 2016-10-23 13:50 +0200 |
| Message-ID | <svprP-mD-15@gated-at.bofh.it> |
| In reply to | #1506593 |
On Sat, Oct 22, 2016 at 03:57:27PM -0400, Jérémie Galarneau wrote:
> 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.
this actualy looks like good solution, sry we missed that first time
Could one of you guys please resend that?
thanks,
jirka
>
> 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@efficios.com>
> Cc: Wang Nan <wangnan0@huawei.com>
> Cc: Philippe Proulx <philippe.proulx@efficios.com>
> Cc: David S. Miller <davem@davemloft.net>
> Cc: Alexei Starovoitov <ast@kernel.org>
> Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
> Cc: David S. Miller <davem@davemloft.net>
> Cc: Jiri Olsa <jolsa@kernel.org>
> Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: Zefan Li <lizefan@huawei.com>
> Cc: pi3orama@163.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
>
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web