linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] perf report: Few fixes
@ 2019-11-14 13:22 Ravi Bangoria
  2019-11-14 13:22 ` [PATCH v2 1/3] perf hists: Replace pr_err with ui__error Ravi Bangoria
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Ravi Bangoria @ 2019-11-14 13:22 UTC (permalink / raw)
  To: acme
  Cc: jolsa, kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel, Ravi Bangoria

v1: https://lore.kernel.org/r/20191112054946.5869-1-ravi.bangoria@linux.ibm.com

v1 fixed a segfault when -F phys_daddr is used in perf report without
--mem-mode. Arnaldo suggested to bail out the option completely in
such case instead of showing 0 values.

Ravi Bangoria (3):
  perf hists: Replace pr_err with ui__error
  perf report: Make -F more strict like -s
  perf report: Error out for mem mode fields if mem info is not
    available

 tools/perf/builtin-report.c |  8 ++++++++
 tools/perf/util/sort.c      | 16 +++++++++++-----
 2 files changed, 19 insertions(+), 5 deletions(-)

-- 
2.21.0


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

* [PATCH v2 1/3] perf hists: Replace pr_err with ui__error
  2019-11-14 13:22 [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
@ 2019-11-14 13:22 ` Ravi Bangoria
  2019-12-04 15:26   ` Arnaldo Carvalho de Melo
  2019-12-06  8:03   ` [tip: perf/urgent] perf report/top TUI: Replace pr_err() with ui__error() tip-bot2 for Ravi Bangoria
  2019-11-14 13:22 ` [PATCH v2 2/3] perf report: Make -F more strict like -s Ravi Bangoria
                   ` (3 subsequent siblings)
  4 siblings, 2 replies; 10+ messages in thread
From: Ravi Bangoria @ 2019-11-14 13:22 UTC (permalink / raw)
  To: acme
  Cc: jolsa, kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel, Ravi Bangoria

pr_err() in tui mode does not print anyting on the screen and
just quits. Replace such pr_err with ui__error.

Before:
  $ ./perf report -s +
  $

After:
  $ ./perf report -s +

    ┌─Error:────────────────┐
    │Invalid --sort key: `+'│
    │                       │
    │Press any key...       │
    └───────────────────────┘

Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
---
 tools/perf/util/sort.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index 43d1d410854a..cba8f22e4ffb 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -2696,12 +2696,12 @@ static int setup_sort_list(struct perf_hpp_list *list, char *str,
 			ret = sort_dimension__add(list, tok, evlist, level);
 			if (ret == -EINVAL) {
 				if (!cacheline_size() && !strncasecmp(tok, "dcacheline", strlen(tok)))
-					pr_err("The \"dcacheline\" --sort key needs to know the cacheline size and it couldn't be determined on this system");
+					ui__error("The \"dcacheline\" --sort key needs to know the cacheline size and it couldn't be determined on this system");
 				else
-					pr_err("Invalid --sort key: `%s'", tok);
+					ui__error("Invalid --sort key: `%s'", tok);
 				break;
 			} else if (ret == -ESRCH) {
-				pr_err("Unknown --sort key: `%s'", tok);
+				ui__error("Unknown --sort key: `%s'", tok);
 				break;
 			}
 		}
@@ -2758,7 +2758,7 @@ static int setup_sort_order(struct evlist *evlist)
 		return 0;
 
 	if (sort_order[1] == '\0') {
-		pr_err("Invalid --sort key: `+'");
+		ui__error("Invalid --sort key: `+'");
 		return -EINVAL;
 	}
 
@@ -3049,7 +3049,7 @@ static int __setup_output_field(void)
 		strp++;
 
 	if (!strlen(strp)) {
-		pr_err("Invalid --fields key: `+'");
+		ui__error("Invalid --fields key: `+'");
 		goto out;
 	}
 
-- 
2.21.0


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

* [PATCH v2 2/3] perf report: Make -F more strict like -s
  2019-11-14 13:22 [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
  2019-11-14 13:22 ` [PATCH v2 1/3] perf hists: Replace pr_err with ui__error Ravi Bangoria
@ 2019-11-14 13:22 ` Ravi Bangoria
  2019-12-06  8:03   ` [tip: perf/urgent] " tip-bot2 for Ravi Bangoria
  2019-11-14 13:22 ` [PATCH v2 3/3] perf report: Bail out --mem-mode if mem info is not available Ravi Bangoria
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 10+ messages in thread
From: Ravi Bangoria @ 2019-11-14 13:22 UTC (permalink / raw)
  To: acme
  Cc: jolsa, kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel, Ravi Bangoria

Currently -F allows branch-mode / mem-mode fields with -F even
when perf report is not running in that mode. Don't allow that.

Suggested-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
---
 tools/perf/util/sort.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index cba8f22e4ffb..9999f6853440 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -2974,6 +2974,9 @@ int output_field_add(struct perf_hpp_list *list, char *tok)
 		if (strncasecmp(tok, sd->name, strlen(tok)))
 			continue;
 
+		if (sort__mode != SORT_MODE__BRANCH)
+			return -EINVAL;
+
 		return __sort_dimension__add_output(list, sd);
 	}
 
@@ -2983,6 +2986,9 @@ int output_field_add(struct perf_hpp_list *list, char *tok)
 		if (strncasecmp(tok, sd->name, strlen(tok)))
 			continue;
 
+		if (sort__mode != SORT_MODE__MEMORY)
+			return -EINVAL;
+
 		return __sort_dimension__add_output(list, sd);
 	}
 
-- 
2.21.0


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

* [PATCH v2 3/3] perf report: Bail out --mem-mode if mem info is not available
  2019-11-14 13:22 [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
  2019-11-14 13:22 ` [PATCH v2 1/3] perf hists: Replace pr_err with ui__error Ravi Bangoria
  2019-11-14 13:22 ` [PATCH v2 2/3] perf report: Make -F more strict like -s Ravi Bangoria
@ 2019-11-14 13:22 ` Ravi Bangoria
  2019-12-06  8:03   ` [tip: perf/urgent] " tip-bot2 for Ravi Bangoria
  2019-12-04 10:36 ` [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
  2019-12-04 12:07 ` Jiri Olsa
  4 siblings, 1 reply; 10+ messages in thread
From: Ravi Bangoria @ 2019-11-14 13:22 UTC (permalink / raw)
  To: acme
  Cc: jolsa, kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel, Ravi Bangoria

If perf.data is recorded without -d, don't allow user to use
--mem-mode with perf report. symbol_daddr and phys_daddr can
be recorded separately and may be present in the perf.data but
at the report time they are associated with mem-mode fields and
thus this restriction applies to them as well.

Before:
  $ ./perf record ls
  $ ./perf report --mem-mode --stdio
  # Overhead  Local Weight  Memory access  Symbol                 
  # ........  ............  .............  .......................
      55.56%  0             N/A            [k] 0xffffffff81a00ae7 

After:
  $ ./perf report --mem-mode --stdio
  Error:
  Selected --mem-mode but no mem data. Did you call perf record without -d?

Suggested-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
---
 tools/perf/builtin-report.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index aae0e57c60fb..7c854d35c9ef 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -383,6 +383,14 @@ static int report__setup_sample_type(struct report *rep)
 		}
 	}
 
+	if (sort__mode == SORT_MODE__MEMORY) {
+		if (!is_pipe && !(sample_type & PERF_SAMPLE_DATA_SRC)) {
+			ui__error("Selected --mem-mode but no mem data. "
+				  "Did you call perf record without -d?\n");
+			return -1;
+		}
+	}
+
 	if (symbol_conf.use_callchain || symbol_conf.cumulate_callchain) {
 		if ((sample_type & PERF_SAMPLE_REGS_USER) &&
 		    (sample_type & PERF_SAMPLE_STACK_USER)) {
-- 
2.21.0


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

* Re: [PATCH v2 0/3] perf report: Few fixes
  2019-11-14 13:22 [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
                   ` (2 preceding siblings ...)
  2019-11-14 13:22 ` [PATCH v2 3/3] perf report: Bail out --mem-mode if mem info is not available Ravi Bangoria
@ 2019-12-04 10:36 ` Ravi Bangoria
  2019-12-04 12:07 ` Jiri Olsa
  4 siblings, 0 replies; 10+ messages in thread
From: Ravi Bangoria @ 2019-12-04 10:36 UTC (permalink / raw)
  To: acme, jolsa
  Cc: kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel, Ravi Bangoria

Arnaldo, Jiri,

Any feedback?

Ravi

On 11/14/19 6:52 PM, Ravi Bangoria wrote:
> v1: https://lore.kernel.org/r/20191112054946.5869-1-ravi.bangoria@linux.ibm.com
> 
> v1 fixed a segfault when -F phys_daddr is used in perf report without
> --mem-mode. Arnaldo suggested to bail out the option completely in
> such case instead of showing 0 values.
> 
> Ravi Bangoria (3):
>    perf hists: Replace pr_err with ui__error
>    perf report: Make -F more strict like -s
>    perf report: Error out for mem mode fields if mem info is not
>      available
> 
>   tools/perf/builtin-report.c |  8 ++++++++
>   tools/perf/util/sort.c      | 16 +++++++++++-----
>   2 files changed, 19 insertions(+), 5 deletions(-)
> 


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

* Re: [PATCH v2 0/3] perf report: Few fixes
  2019-11-14 13:22 [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
                   ` (3 preceding siblings ...)
  2019-12-04 10:36 ` [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
@ 2019-12-04 12:07 ` Jiri Olsa
  4 siblings, 0 replies; 10+ messages in thread
From: Jiri Olsa @ 2019-12-04 12:07 UTC (permalink / raw)
  To: Ravi Bangoria
  Cc: acme, kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel

On Thu, Nov 14, 2019 at 06:52:10PM +0530, Ravi Bangoria wrote:
> v1: https://lore.kernel.org/r/20191112054946.5869-1-ravi.bangoria@linux.ibm.com
> 
> v1 fixed a segfault when -F phys_daddr is used in perf report without
> --mem-mode. Arnaldo suggested to bail out the option completely in
> such case instead of showing 0 values.
> 
> Ravi Bangoria (3):
>   perf hists: Replace pr_err with ui__error
>   perf report: Make -F more strict like -s
>   perf report: Error out for mem mode fields if mem info is not
>     available
> 
>  tools/perf/builtin-report.c |  8 ++++++++
>  tools/perf/util/sort.c      | 16 +++++++++++-----
>  2 files changed, 19 insertions(+), 5 deletions(-)

looks good

Acked-by: Jiri Olsa <jolsa@kernel.org>

thanks,
jirka


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

* Re: [PATCH v2 1/3] perf hists: Replace pr_err with ui__error
  2019-11-14 13:22 ` [PATCH v2 1/3] perf hists: Replace pr_err with ui__error Ravi Bangoria
@ 2019-12-04 15:26   ` Arnaldo Carvalho de Melo
  2019-12-06  8:03   ` [tip: perf/urgent] perf report/top TUI: Replace pr_err() with ui__error() tip-bot2 for Ravi Bangoria
  1 sibling, 0 replies; 10+ messages in thread
From: Arnaldo Carvalho de Melo @ 2019-12-04 15:26 UTC (permalink / raw)
  To: Ravi Bangoria
  Cc: jolsa, kan.liang, mark.rutland, alexander.shishkin, namhyung, ak,
	yao.jin, linux-kernel

Em Thu, Nov 14, 2019 at 06:52:11PM +0530, Ravi Bangoria escreveu:
> pr_err() in tui mode does not print anyting on the screen and
> just quits. Replace such pr_err with ui__error.
> 
> Before:
>   $ ./perf report -s +
>   $
> 
> After:
>   $ ./perf report -s +
> 
>     ┌─Error:────────────────┐
>     │Invalid --sort key: `+'│
>     │                       │
>     │Press any key...       │
>     └───────────────────────┘

Cool, I've seen this before and should have investigated, even today it
happened... Thanks for fixing it, tested and applied.

- Arnaldo
 
> Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
> ---
>  tools/perf/util/sort.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
> index 43d1d410854a..cba8f22e4ffb 100644
> --- a/tools/perf/util/sort.c
> +++ b/tools/perf/util/sort.c
> @@ -2696,12 +2696,12 @@ static int setup_sort_list(struct perf_hpp_list *list, char *str,
>  			ret = sort_dimension__add(list, tok, evlist, level);
>  			if (ret == -EINVAL) {
>  				if (!cacheline_size() && !strncasecmp(tok, "dcacheline", strlen(tok)))
> -					pr_err("The \"dcacheline\" --sort key needs to know the cacheline size and it couldn't be determined on this system");
> +					ui__error("The \"dcacheline\" --sort key needs to know the cacheline size and it couldn't be determined on this system");
>  				else
> -					pr_err("Invalid --sort key: `%s'", tok);
> +					ui__error("Invalid --sort key: `%s'", tok);
>  				break;
>  			} else if (ret == -ESRCH) {
> -				pr_err("Unknown --sort key: `%s'", tok);
> +				ui__error("Unknown --sort key: `%s'", tok);
>  				break;
>  			}
>  		}
> @@ -2758,7 +2758,7 @@ static int setup_sort_order(struct evlist *evlist)
>  		return 0;
>  
>  	if (sort_order[1] == '\0') {
> -		pr_err("Invalid --sort key: `+'");
> +		ui__error("Invalid --sort key: `+'");
>  		return -EINVAL;
>  	}
>  
> @@ -3049,7 +3049,7 @@ static int __setup_output_field(void)
>  		strp++;
>  
>  	if (!strlen(strp)) {
> -		pr_err("Invalid --fields key: `+'");
> +		ui__error("Invalid --fields key: `+'");
>  		goto out;
>  	}
>  
> -- 
> 2.21.0

-- 

- Arnaldo

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

* [tip: perf/urgent] perf report: Bail out --mem-mode if mem info is not available
  2019-11-14 13:22 ` [PATCH v2 3/3] perf report: Bail out --mem-mode if mem info is not available Ravi Bangoria
@ 2019-12-06  8:03   ` tip-bot2 for Ravi Bangoria
  0 siblings, 0 replies; 10+ messages in thread
From: tip-bot2 for Ravi Bangoria @ 2019-12-06  8:03 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: Arnaldo Carvalho de Melo, Ravi Bangoria, Jiri Olsa,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Andi Kleen,
	Jin Yao, Kan Liang, Mark Rutland, Namhyung Kim, x86, LKML

The following commit has been merged into the perf/urgent branch of tip:

Commit-ID:     bb30acae4c4dacfa2622387c5ad5563246810583
Gitweb:        https://git.kernel.org/tip/bb30acae4c4dacfa2622387c5ad5563246810583
Author:        Ravi Bangoria <ravi.bangoria@linux.ibm.com>
AuthorDate:    Thu, 14 Nov 2019 18:52:13 +05:30
Committer:     Arnaldo Carvalho de Melo <acme@redhat.com>
CommitterDate: Wed, 04 Dec 2019 12:34:02 -03:00

perf report: Bail out --mem-mode if mem info is not available

If perf.data is recorded without -d, don't allow user to use --mem-mode
with 'perf report'. symbol_daddr and phys_daddr can be recorded
separately and may be present in the perf.data but at the report time
they are associated with mem-mode fields and thus this restriction
applies to them as well.

Before:
  $ perf record ls
  $ perf report --mem-mode --stdio
  # Overhead  Local Weight  Memory access  Symbol
  # ........  ............  .............  .......................
      55.56%  0             N/A            [k] 0xffffffff81a00ae7

After:
  $ perf report --mem-mode --stdio
  Error:
  Selected --mem-mode but no mem data. Did you call perf record without -d?

Suggested-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lore.kernel.org/lkml/20191114132213.5419-4-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-report.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index 830d563..387311c 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -388,6 +388,14 @@ static int report__setup_sample_type(struct report *rep)
 		}
 	}
 
+	if (sort__mode == SORT_MODE__MEMORY) {
+		if (!is_pipe && !(sample_type & PERF_SAMPLE_DATA_SRC)) {
+			ui__error("Selected --mem-mode but no mem data. "
+				  "Did you call perf record without -d?\n");
+			return -1;
+		}
+	}
+
 	if (symbol_conf.use_callchain || symbol_conf.cumulate_callchain) {
 		if ((sample_type & PERF_SAMPLE_REGS_USER) &&
 		    (sample_type & PERF_SAMPLE_STACK_USER)) {

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

* [tip: perf/urgent] perf report/top TUI: Replace pr_err() with ui__error()
  2019-11-14 13:22 ` [PATCH v2 1/3] perf hists: Replace pr_err with ui__error Ravi Bangoria
  2019-12-04 15:26   ` Arnaldo Carvalho de Melo
@ 2019-12-06  8:03   ` tip-bot2 for Ravi Bangoria
  1 sibling, 0 replies; 10+ messages in thread
From: tip-bot2 for Ravi Bangoria @ 2019-12-06  8:03 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: Ravi Bangoria, Jiri Olsa, Arnaldo Carvalho de Melo,
	Alexander Shishkin, Andi Kleen, Jin Yao, Kan Liang, Mark Rutland,
	Namhyung Kim, x86, LKML

The following commit has been merged into the perf/urgent branch of tip:

Commit-ID:     ae87405fb511d6220ce86b9a60807fef92e1a934
Gitweb:        https://git.kernel.org/tip/ae87405fb511d6220ce86b9a60807fef92e1a934
Author:        Ravi Bangoria <ravi.bangoria@linux.ibm.com>
AuthorDate:    Thu, 14 Nov 2019 18:52:11 +05:30
Committer:     Arnaldo Carvalho de Melo <acme@redhat.com>
CommitterDate: Wed, 04 Dec 2019 12:27:14 -03:00

perf report/top TUI: Replace pr_err() with ui__error()

pr_err() in TUI mode does not print anyting on the screen and just
quits.

Replace such pr_err() with ui__error().

Before:

  $ perf report -s +
  $

After:

  $ perf report -s +

    ┌─Error:────────────────┐
    │Invalid --sort key: `+'│
    │                       │
    │Press any key...       │
    └───────────────────────┘

Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lore.kernel.org/lkml/20191114132213.5419-2-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/sort.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index 345b5cc..106d795 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -2681,12 +2681,12 @@ static int setup_sort_list(struct perf_hpp_list *list, char *str,
 			ret = sort_dimension__add(list, tok, evlist, level);
 			if (ret == -EINVAL) {
 				if (!cacheline_size() && !strncasecmp(tok, "dcacheline", strlen(tok)))
-					pr_err("The \"dcacheline\" --sort key needs to know the cacheline size and it couldn't be determined on this system");
+					ui__error("The \"dcacheline\" --sort key needs to know the cacheline size and it couldn't be determined on this system");
 				else
-					pr_err("Invalid --sort key: `%s'", tok);
+					ui__error("Invalid --sort key: `%s'", tok);
 				break;
 			} else if (ret == -ESRCH) {
-				pr_err("Unknown --sort key: `%s'", tok);
+				ui__error("Unknown --sort key: `%s'", tok);
 				break;
 			}
 		}
@@ -2743,7 +2743,7 @@ static int setup_sort_order(struct evlist *evlist)
 		return 0;
 
 	if (sort_order[1] == '\0') {
-		pr_err("Invalid --sort key: `+'");
+		ui__error("Invalid --sort key: `+'");
 		return -EINVAL;
 	}
 
@@ -3034,7 +3034,7 @@ static int __setup_output_field(void)
 		strp++;
 
 	if (!strlen(strp)) {
-		pr_err("Invalid --fields key: `+'");
+		ui__error("Invalid --fields key: `+'");
 		goto out;
 	}
 

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

* [tip: perf/urgent] perf report: Make -F more strict like -s
  2019-11-14 13:22 ` [PATCH v2 2/3] perf report: Make -F more strict like -s Ravi Bangoria
@ 2019-12-06  8:03   ` tip-bot2 for Ravi Bangoria
  0 siblings, 0 replies; 10+ messages in thread
From: tip-bot2 for Ravi Bangoria @ 2019-12-06  8:03 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: Arnaldo Carvalho de Melo, Ravi Bangoria, Jiri Olsa,
	Alexander Shishkin, Andi Kleen, Jin Yao, Kan Liang, Mark Rutland,
	Namhyung Kim, Arnaldo Carvalho de Melo, x86, LKML

The following commit has been merged into the perf/urgent branch of tip:

Commit-ID:     aa6b3c99236b49a3e842d7272efa2529f15f7d8a
Gitweb:        https://git.kernel.org/tip/aa6b3c99236b49a3e842d7272efa2529f15f7d8a
Author:        Ravi Bangoria <ravi.bangoria@linux.ibm.com>
AuthorDate:    Thu, 14 Nov 2019 18:52:12 +05:30
Committer:     Arnaldo Carvalho de Melo <acme@redhat.com>
CommitterDate: Wed, 04 Dec 2019 12:32:40 -03:00

perf report: Make -F more strict like -s

Currently -F allows branch-mode / mem-mode fields with -F even
when perf report is not running in that mode. Don't allow that.

Suggested-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lore.kernel.org/lkml/20191114132213.5419-3-ravi.bangoria@linux.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/sort.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
index 106d795..9fcba28 100644
--- a/tools/perf/util/sort.c
+++ b/tools/perf/util/sort.c
@@ -2959,6 +2959,9 @@ int output_field_add(struct perf_hpp_list *list, char *tok)
 		if (strncasecmp(tok, sd->name, strlen(tok)))
 			continue;
 
+		if (sort__mode != SORT_MODE__MEMORY)
+			return -EINVAL;
+
 		return __sort_dimension__add_output(list, sd);
 	}
 
@@ -2968,6 +2971,9 @@ int output_field_add(struct perf_hpp_list *list, char *tok)
 		if (strncasecmp(tok, sd->name, strlen(tok)))
 			continue;
 
+		if (sort__mode != SORT_MODE__BRANCH)
+			return -EINVAL;
+
 		return __sort_dimension__add_output(list, sd);
 	}
 

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

end of thread, other threads:[~2019-12-06  8:04 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-14 13:22 [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
2019-11-14 13:22 ` [PATCH v2 1/3] perf hists: Replace pr_err with ui__error Ravi Bangoria
2019-12-04 15:26   ` Arnaldo Carvalho de Melo
2019-12-06  8:03   ` [tip: perf/urgent] perf report/top TUI: Replace pr_err() with ui__error() tip-bot2 for Ravi Bangoria
2019-11-14 13:22 ` [PATCH v2 2/3] perf report: Make -F more strict like -s Ravi Bangoria
2019-12-06  8:03   ` [tip: perf/urgent] " tip-bot2 for Ravi Bangoria
2019-11-14 13:22 ` [PATCH v2 3/3] perf report: Bail out --mem-mode if mem info is not available Ravi Bangoria
2019-12-06  8:03   ` [tip: perf/urgent] " tip-bot2 for Ravi Bangoria
2019-12-04 10:36 ` [PATCH v2 0/3] perf report: Few fixes Ravi Bangoria
2019-12-04 12:07 ` Jiri Olsa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).