Re: [PATCH V2] perf script: Find script file relative to exec path

From: Jiri Olsa
Date: Sun May 23 2021 - 12:02:11 EST


On Sat, May 22, 2021 at 01:01:51PM +0300, Adrian Hunter wrote:

SNIP

> diff --git a/tools/perf/util/scripting-engines/trace-event-python.c b/tools/perf/util/scripting-engines/trace-event-python.c
> index 4e4aa4c97ac5..db8f24341406 100644
> --- a/tools/perf/util/scripting-engines/trace-event-python.c
> +++ b/tools/perf/util/scripting-engines/trace-event-python.c
> @@ -1876,6 +1876,7 @@ static int python_generate_script(struct tep_handle *pevent, const char *outfile
>
> struct scripting_ops python_scripting_ops = {
> .name = "Python",
> + .dirname = "python",
> .start_script = python_start_script,
> .flush_script = python_flush_script,
> .stop_script = python_stop_script,
> diff --git a/tools/perf/util/trace-event-scripting.c b/tools/perf/util/trace-event-scripting.c
> index 714581b0de65..721f38c0d5cf 100644
> --- a/tools/perf/util/trace-event-scripting.c
> +++ b/tools/perf/util/trace-event-scripting.c
> @@ -63,6 +63,7 @@ static int python_generate_script_unsupported(struct tep_handle *pevent
>
> struct scripting_ops python_scripting_unsupported_ops = {
> .name = "Python",
> + .dirname = "python",
> .start_script = python_start_script_unsupported,
> .flush_script = flush_script_unsupported,
> .stop_script = stop_script_unsupported,
> @@ -126,6 +127,7 @@ static int perl_generate_script_unsupported(struct tep_handle *pevent
>
> struct scripting_ops perl_scripting_unsupported_ops = {
> .name = "Perl",
> + .dirname = "perf",

looks like typo.. usually means that you run perf way too often ;-)

jirka

> .start_script = perl_start_script_unsupported,
> .flush_script = flush_script_unsupported,
> .stop_script = stop_script_unsupported,
> diff --git a/tools/perf/util/trace-event.h b/tools/perf/util/trace-event.h
> index 72fdf2a3577c..39fb39ed6612 100644
> --- a/tools/perf/util/trace-event.h
> +++ b/tools/perf/util/trace-event.h
> @@ -71,6 +71,7 @@ struct perf_stat_config;
>
> struct scripting_ops {
> const char *name;
> + const char *dirname; /* For script path .../scripts/<dirname>/... */
> int (*start_script) (const char *script, int argc, const char **argv);
> int (*flush_script) (void);
> int (*stop_script) (void);
> --
> 2.17.1
>