2024-04-10 22:24:10

by Ian Rogers

[permalink] [raw]
Subject: [PATCH v1] perf list: Esacpe \r in json output

Events like for sapphirerapids have \r in the uncore descriptions. The
non-escaped versions of this fail json validation the the perf list
test.

Signed-off-by: Ian Rogers <[email protected]>
---
tools/perf/builtin-list.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/tools/perf/builtin-list.c b/tools/perf/builtin-list.c
index 02bf608d585e..9333cc64c2ce 100644
--- a/tools/perf/builtin-list.c
+++ b/tools/perf/builtin-list.c
@@ -313,6 +313,9 @@ static void fix_escape_fprintf(FILE *fp, struct strbuf *buf, const char *fmt, ..
case '\n':
strbuf_addstr(buf, "\\n");
break;
+ case '\r':
+ strbuf_addstr(buf, "\\r");
+ break;
case '\\':
fallthrough;
case '\"':
--
2.44.0.478.gd926399ef9-goog



2024-04-12 19:35:40

by Arnaldo Carvalho de Melo

[permalink] [raw]
Subject: Re: [PATCH v1] perf list: Esacpe \r in json output

On Wed, Apr 10, 2024 at 03:23:53PM -0700, Ian Rogers wrote:
> Events like for sapphirerapids have \r in the uncore descriptions. The
> non-escaped versions of this fail json validation the the perf list
> test.

Thanks, applied to perf-tools-next,

- Arnaldo

> Signed-off-by: Ian Rogers <[email protected]>
> ---
> tools/perf/builtin-list.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/tools/perf/builtin-list.c b/tools/perf/builtin-list.c
> index 02bf608d585e..9333cc64c2ce 100644
> --- a/tools/perf/builtin-list.c
> +++ b/tools/perf/builtin-list.c
> @@ -313,6 +313,9 @@ static void fix_escape_fprintf(FILE *fp, struct strbuf *buf, const char *fmt, ..
> case '\n':
> strbuf_addstr(buf, "\\n");
> break;
> + case '\r':
> + strbuf_addstr(buf, "\\r");
> + break;
> case '\\':
> fallthrough;
> case '\"':
> --
> 2.44.0.478.gd926399ef9-goog