Re: [PATCH] Fixed a pathing issue with objdump and grep

From: Arnaldo Carvalho de Melo
Date: Fri May 05 2017 - 08:57:20 EST


Em Wed, May 03, 2017 at 12:12:23PM +0000, Adam Stylinski escreveu:
> The path fed to the argument for objdump used in the perf-annotate
> feature didn't escape spaces. The subsequent argument to grep for
> the name of the DSO containing symbols also assumed no spaces existed
> in the pathname, so grep also parsed these as extra positional
> arguments.

This one didn't apply to tip/perf/urgent, so I tried another patch
addressing the same issue, from Ravi Bangoria, and it applied, ok?

Please take a look at:

http://lkml.kernel.org/r/20170505101417.2117-1-ravi.bangoria@xxxxxxxxxxxxxxxxxx

- Arnaldo

> Signed-off-by: Adam E Stylinski <adam.stylinski@xxxxxxxxxxx>
> ---
> tools/perf/util/annotate.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
> index 7aa57225cbf7..fc5a96d584f2 100644
> --- a/tools/perf/util/annotate.c
> +++ b/tools/perf/util/annotate.c
> @@ -1441,7 +1441,7 @@ int symbol__disassemble(struct symbol *sym, struct map *map, const char *arch_na
> snprintf(command, sizeof(command),
> "%s %s%s --start-address=0x%016" PRIx64
> " --stop-address=0x%016" PRIx64
> - " -l -d %s %s -C %s 2>/dev/null|grep -v %s|expand",
> + " -l -d %s %s -C \"%s\" 2>/dev/null|grep -v \"%s\"|expand",
> objdump_path ? objdump_path : "objdump",
> disassembler_style ? "-M " : "",
> disassembler_style ? disassembler_style : "",
> --
> 2.12.2