Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1215692 > unrolled thread
| Started by | Wang Nan <wangnan0@huawei.com> |
|---|---|
| First post | 2015-08-29 06:30 +0200 |
| Last post | 2015-09-02 03:40 +0200 |
| Articles | 4 — 4 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH 28/31] perf probe: Init symbol as kprobe Wang Nan <wangnan0@huawei.com> - 2015-08-29 06:30 +0200
Re: [PATCH 28/31] perf probe: Init symbol as kprobe Arnaldo Carvalho de Melo <acme@redhat.com> - 2015-09-01 22:20 +0200
Re: [PATCH 28/31] perf probe: Init symbol as kprobe "Wangnan (F)" <wangnan0@huawei.com> - 2015-09-02 03:30 +0200
RE: Re: [PATCH 28/31] perf probe: Init symbol as kprobe 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> - 2015-09-02 03:40 +0200
| From | Wang Nan <wangnan0@huawei.com> |
|---|---|
| Date | 2015-08-29 06:30 +0200 |
| Subject | [PATCH 28/31] perf probe: Init symbol as kprobe |
| Message-ID | <q2FWa-7Rj-27@gated-at.bofh.it> |
Before this patch, add_perf_probe_events() init symbol maps only for
uprobe if the first 'struct perf_probe_event' passed to it is a uprobe
event. This is a trick because 'perf probe''s command line syntax
constrains the first elements of the probe_event arrays must be kprobes
if there is one kprobe there.
However, with the incoming BPF uprobe support, that constrain is not
hold since 'perf record' will also probe on k/u probes through BPF
object, and is possible to pass an array with kprobe but the first
element is uprobe.
This patch init symbol maps for kprobes even if all of events are
uprobes, because the extra cost should be small enough.
Signed-off-by: Wang Nan <wangnan0@huawei.com>
Cc: Alexei Starovoitov <ast@plumgrid.com>
Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: David Ahern <dsahern@gmail.com>
Cc: He Kuang <hekuang@huawei.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kaixu Xia <xiakaixu@huawei.com>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Zefan Li <lizefan@huawei.com>
Cc: pi3orama@163.com
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Link: http://lkml.kernel.org/n/1436445342-1402-39-git-send-email-wangnan0@huawei.com
---
tools/perf/util/probe-event.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index e720913..b94a8d7 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -2789,7 +2789,7 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
{
int i, ret;
- ret = init_symbol_maps(pevs->uprobes);
+ ret = init_symbol_maps(false);
if (ret < 0)
return ret;
--
2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Arnaldo Carvalho de Melo <acme@redhat.com> |
|---|---|
| Date | 2015-09-01 22:20 +0200 |
| Message-ID | <q40ca-7Z-13@gated-at.bofh.it> |
| In reply to | #1215692 |
Em Sat, Aug 29, 2015 at 04:22:02AM +0000, Wang Nan escreveu:
> Before this patch, add_perf_probe_events() init symbol maps only for
> uprobe if the first 'struct perf_probe_event' passed to it is a uprobe
> event. This is a trick because 'perf probe''s command line syntax
> constrains the first elements of the probe_event arrays must be kprobes
> if there is one kprobe there.
>
> However, with the incoming BPF uprobe support, that constrain is not
> hold since 'perf record' will also probe on k/u probes through BPF
> object, and is possible to pass an array with kprobe but the first
> element is uprobe.
>
> This patch init symbol maps for kprobes even if all of events are
> uprobes, because the extra cost should be small enough.
Masami, are you Ok with this one?
- Arnaldo
> Signed-off-by: Wang Nan <wangnan0@huawei.com>
> Cc: Alexei Starovoitov <ast@plumgrid.com>
> Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
> Cc: Daniel Borkmann <daniel@iogearbox.net>
> Cc: David Ahern <dsahern@gmail.com>
> Cc: He Kuang <hekuang@huawei.com>
> Cc: Jiri Olsa <jolsa@kernel.org>
> Cc: Kaixu Xia <xiakaixu@huawei.com>
> Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> Cc: Zefan Li <lizefan@huawei.com>
> Cc: pi3orama@163.com
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> Link: http://lkml.kernel.org/n/1436445342-1402-39-git-send-email-wangnan0@huawei.com
> ---
> tools/perf/util/probe-event.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> index e720913..b94a8d7 100644
> --- a/tools/perf/util/probe-event.c
> +++ b/tools/perf/util/probe-event.c
> @@ -2789,7 +2789,7 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> {
> int i, ret;
>
> - ret = init_symbol_maps(pevs->uprobes);
> + ret = init_symbol_maps(false);
> if (ret < 0)
> return ret;
>
> --
> 2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | "Wangnan (F)" <wangnan0@huawei.com> |
|---|---|
| Date | 2015-09-02 03:30 +0200 |
| Message-ID | <q452a-70h-3@gated-at.bofh.it> |
| In reply to | #1217059 |
On 2015/9/2 4:11, Arnaldo Carvalho de Melo wrote:
> Em Sat, Aug 29, 2015 at 04:22:02AM +0000, Wang Nan escreveu:
>> Before this patch, add_perf_probe_events() init symbol maps only for
>> uprobe if the first 'struct perf_probe_event' passed to it is a uprobe
>> event. This is a trick because 'perf probe''s command line syntax
>> constrains the first elements of the probe_event arrays must be kprobes
>> if there is one kprobe there.
>>
>> However, with the incoming BPF uprobe support, that constrain is not
>> hold since 'perf record' will also probe on k/u probes through BPF
>> object, and is possible to pass an array with kprobe but the first
>> element is uprobe.
>>
>> This patch init symbol maps for kprobes even if all of events are
>> uprobes, because the extra cost should be small enough.
> Masami, are you Ok with this one?
I think he would be okay with it because it is his idea :)
Please refer to: http://lkml.kernel.org/n/558E5F42.1060705@hitachi.com
Thank you.
> - Arnaldo
>
>> Signed-off-by: Wang Nan <wangnan0@huawei.com>
>> Cc: Alexei Starovoitov <ast@plumgrid.com>
>> Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
>> Cc: Daniel Borkmann <daniel@iogearbox.net>
>> Cc: David Ahern <dsahern@gmail.com>
>> Cc: He Kuang <hekuang@huawei.com>
>> Cc: Jiri Olsa <jolsa@kernel.org>
>> Cc: Kaixu Xia <xiakaixu@huawei.com>
>> Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
>> Cc: Namhyung Kim <namhyung@kernel.org>
>> Cc: Paul Mackerras <paulus@samba.org>
>> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
>> Cc: Zefan Li <lizefan@huawei.com>
>> Cc: pi3orama@163.com
>> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
>> Link: http://lkml.kernel.org/n/1436445342-1402-39-git-send-email-wangnan0@huawei.com
>> ---
>> tools/perf/util/probe-event.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
>> index e720913..b94a8d7 100644
>> --- a/tools/perf/util/probe-event.c
>> +++ b/tools/perf/util/probe-event.c
>> @@ -2789,7 +2789,7 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
>> {
>> int i, ret;
>>
>> - ret = init_symbol_maps(pevs->uprobes);
>> + ret = init_symbol_maps(false);
>> if (ret < 0)
>> return ret;
>>
>> --
>> 2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> |
|---|---|
| Date | 2015-09-02 03:40 +0200 |
| Message-ID | <q45bQ-7bH-11@gated-at.bofh.it> |
| In reply to | #1217059 |
> From: Arnaldo Carvalho de Melo [mailto:acme@redhat.com]
>
> Em Sat, Aug 29, 2015 at 04:22:02AM +0000, Wang Nan escreveu:
> > Before this patch, add_perf_probe_events() init symbol maps only for
> > uprobe if the first 'struct perf_probe_event' passed to it is a uprobe
> > event. This is a trick because 'perf probe''s command line syntax
> > constrains the first elements of the probe_event arrays must be kprobes
> > if there is one kprobe there.
> >
> > However, with the incoming BPF uprobe support, that constrain is not
> > hold since 'perf record' will also probe on k/u probes through BPF
> > object, and is possible to pass an array with kprobe but the first
> > element is uprobe.
> >
> > This patch init symbol maps for kprobes even if all of events are
> > uprobes, because the extra cost should be small enough.
>
> Masami, are you Ok with this one?
Yeah, looks OK for me ! :)
Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Thanks!
>
> - Arnaldo
>
> > Signed-off-by: Wang Nan <wangnan0@huawei.com>
> > Cc: Alexei Starovoitov <ast@plumgrid.com>
> > Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
> > Cc: Daniel Borkmann <daniel@iogearbox.net>
> > Cc: David Ahern <dsahern@gmail.com>
> > Cc: He Kuang <hekuang@huawei.com>
> > Cc: Jiri Olsa <jolsa@kernel.org>
> > Cc: Kaixu Xia <xiakaixu@huawei.com>
> > Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
> > Cc: Namhyung Kim <namhyung@kernel.org>
> > Cc: Paul Mackerras <paulus@samba.org>
> > Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
> > Cc: Zefan Li <lizefan@huawei.com>
> > Cc: pi3orama@163.com
> > Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> > Link: http://lkml.kernel.org/n/1436445342-1402-39-git-send-email-wangnan0@huawei.com
> > ---
> > tools/perf/util/probe-event.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> > index e720913..b94a8d7 100644
> > --- a/tools/perf/util/probe-event.c
> > +++ b/tools/perf/util/probe-event.c
> > @@ -2789,7 +2789,7 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
> > {
> > int i, ret;
> >
> > - ret = init_symbol_maps(pevs->uprobes);
> > + ret = init_symbol_maps(false);
> > if (ret < 0)
> > return ret;
> >
> > --
> > 2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web