All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf probe: fix module name matching
@ 2016-08-05  9:41 Konstantin Khlebnikov
  2016-08-05 12:17 ` Masami Hiramatsu
  0 siblings, 1 reply; 3+ messages in thread
From: Konstantin Khlebnikov @ 2016-08-05  9:41 UTC (permalink / raw)
  To: linux-kernel, Arnaldo Carvalho de Melo

If module is "module" then dso->short_name is "[module]".
Substring comparing is't enough: "raid10" matches to "[raid1]".
This patch also checks terminating zero in module name.

Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
---
 tools/perf/util/probe-event.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index 953dc1ab2ed7..c27b7aca4a6d 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -170,8 +170,10 @@ static struct map *kernel_get_module_map(const char *module)
 		module = "kernel";
 
 	for (pos = maps__first(maps); pos; pos = map__next(pos)) {
+		/* short_name is "[module]" */
 		if (strncmp(pos->dso->short_name + 1, module,
-			    pos->dso->short_name_len - 2) == 0) {
+			    pos->dso->short_name_len - 2) == 0 &&
+		    module[pos->dso->short_name_len - 2] == 0) {
 			return pos;
 		}
 	}

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] perf probe: fix module name matching
  2016-08-05  9:41 [PATCH] perf probe: fix module name matching Konstantin Khlebnikov
@ 2016-08-05 12:17 ` Masami Hiramatsu
  2016-08-08 19:34   ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 3+ messages in thread
From: Masami Hiramatsu @ 2016-08-05 12:17 UTC (permalink / raw)
  To: Konstantin Khlebnikov; +Cc: linux-kernel, Arnaldo Carvalho de Melo

On Fri, 05 Aug 2016 12:41:03 +0300
Konstantin Khlebnikov <khlebnikov@yandex-team.ru> wrote:

> If module is "module" then dso->short_name is "[module]".
> Substring comparing is't enough: "raid10" matches to "[raid1]".
> This patch also checks terminating zero in module name.

Right, just one comment on this patch.

> 
> Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
> ---
>  tools/perf/util/probe-event.c |    4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> index 953dc1ab2ed7..c27b7aca4a6d 100644
> --- a/tools/perf/util/probe-event.c
> +++ b/tools/perf/util/probe-event.c
> @@ -170,8 +170,10 @@ static struct map *kernel_get_module_map(const char *module)
>  		module = "kernel";
>  
>  	for (pos = maps__first(maps); pos; pos = map__next(pos)) {
> +		/* short_name is "[module]" */
>  		if (strncmp(pos->dso->short_name + 1, module,
> -			    pos->dso->short_name_len - 2) == 0) {
> +			    pos->dso->short_name_len - 2) == 0 &&
> +		    module[pos->dso->short_name_len - 2] == 0) {

Here, please use '\0' instead of 0, because "module" should points a null
terminated string.

Thanks,

>  			return pos;
>  		}
>  	}
> 


-- 
Masami Hiramatsu <mhiramat@kernel.org>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] perf probe: fix module name matching
  2016-08-05 12:17 ` Masami Hiramatsu
@ 2016-08-08 19:34   ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-08-08 19:34 UTC (permalink / raw)
  To: Masami Hiramatsu; +Cc: Konstantin Khlebnikov, linux-kernel

Em Fri, Aug 05, 2016 at 09:17:29PM +0900, Masami Hiramatsu escreveu:
> On Fri, 05 Aug 2016 12:41:03 +0300
> Konstantin Khlebnikov <khlebnikov@yandex-team.ru> wrote:
> 
> > If module is "module" then dso->short_name is "[module]".
> > Substring comparing is't enough: "raid10" matches to "[raid1]".
> > This patch also checks terminating zero in module name.
> 
> Right, just one comment on this patch.
> 
> > 
> > Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
> > ---
> >  tools/perf/util/probe-event.c |    4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> > 
> > diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> > index 953dc1ab2ed7..c27b7aca4a6d 100644
> > --- a/tools/perf/util/probe-event.c
> > +++ b/tools/perf/util/probe-event.c
> > @@ -170,8 +170,10 @@ static struct map *kernel_get_module_map(const char *module)
> >  		module = "kernel";
> >  
> >  	for (pos = maps__first(maps); pos; pos = map__next(pos)) {
> > +		/* short_name is "[module]" */
> >  		if (strncmp(pos->dso->short_name + 1, module,
> > -			    pos->dso->short_name_len - 2) == 0) {
> > +			    pos->dso->short_name_len - 2) == 0 &&
> > +		    module[pos->dso->short_name_len - 2] == 0) {
> 
> Here, please use '\0' instead of 0, because "module" should points a null
> terminated string.

I can do this myself, with that, can I have your Acked-by?
 
> Thanks,
> 
> >  			return pos;
> >  		}
> >  	}
> > 
> 
> 
> -- 
> Masami Hiramatsu <mhiramat@kernel.org>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-08-08 19:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-05  9:41 [PATCH] perf probe: fix module name matching Konstantin Khlebnikov
2016-08-05 12:17 ` Masami Hiramatsu
2016-08-08 19:34   ` Arnaldo Carvalho de Melo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.