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

Ian Rogers posted 1 patch 1 year, 10 months ago
tools/perf/builtin-list.c | 3 +++
1 file changed, 3 insertions(+)
[PATCH v1] perf list: Esacpe \r in json output
Posted by Ian Rogers 1 year, 10 months ago
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 <irogers@google.com>
---
 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
Re: [PATCH v1] perf list: Esacpe \r in json output
Posted by Arnaldo Carvalho de Melo 1 year, 10 months ago
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 <irogers@google.com>
> ---
>  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