Skip to content

Commit a6e5e7c

Browse files
committed
trace2: cleanup whitespace in perf format
Make use of new sq_quote_argv_pretty_ltrim() to normalize how we handle leading whitespace in perf format messages. Signed-off-by: Jeff Hostetler <[email protected]>
1 parent bb64bb2 commit a6e5e7c

File tree

2 files changed

+22
-13
lines changed

2 files changed

+22
-13
lines changed

t/t0211-trace2-perf.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,11 @@ test_expect_success 'perf stream, child processes' '
130130
d0|main|version|||||$V
131131
d0|main|start||_T_ABS_|||_EXE_ trace2 004child test-tool trace2 004child test-tool trace2 001return 0
132132
d0|main|cmd_name|||||trace2 (trace2)
133-
d0|main|child_start||_T_ABS_|||[ch0] class:? argv: test-tool trace2 004child test-tool trace2 001return 0
133+
d0|main|child_start||_T_ABS_|||[ch0] class:? argv:[test-tool trace2 004child test-tool trace2 001return 0]
134134
d1|main|version|||||$V
135135
d1|main|start||_T_ABS_|||_EXE_ trace2 004child test-tool trace2 001return 0
136136
d1|main|cmd_name|||||trace2 (trace2/trace2)
137-
d1|main|child_start||_T_ABS_|||[ch0] class:? argv: test-tool trace2 001return 0
137+
d1|main|child_start||_T_ABS_|||[ch0] class:? argv:[test-tool trace2 001return 0]
138138
d2|main|version|||||$V
139139
d2|main|start||_T_ABS_|||_EXE_ trace2 001return 0
140140
d2|main|cmd_name|||||trace2 (trace2/trace2/trace2)

trace2/tr2_tgt_perf.c

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ static void fn_start_fl(const char *file, int line,
184184
const char *event_name = "start";
185185
struct strbuf buf_payload = STRBUF_INIT;
186186

187-
sq_quote_argv_pretty(&buf_payload, argv);
187+
sq_quote_argv_pretty_ltrim(&buf_payload, argv);
188188

189189
perf_io_write_fl(file, line, event_name, NULL, &us_elapsed_absolute,
190190
NULL, NULL, &buf_payload);
@@ -299,8 +299,9 @@ static void fn_alias_fl(const char *file, int line, const char *alias,
299299
const char *event_name = "alias";
300300
struct strbuf buf_payload = STRBUF_INIT;
301301

302-
strbuf_addf(&buf_payload, "alias:%s argv:", alias);
303-
sq_quote_argv_pretty(&buf_payload, argv);
302+
strbuf_addf(&buf_payload, "alias:%s argv:[", alias);
303+
sq_quote_argv_pretty_ltrim(&buf_payload, argv);
304+
strbuf_addch(&buf_payload, ']');
304305

305306
perf_io_write_fl(file, line, event_name, NULL, NULL, NULL, NULL,
306307
&buf_payload);
@@ -329,10 +330,14 @@ static void fn_child_start_fl(const char *file, int line,
329330
sq_quote_buf_pretty(&buf_payload, cmd->dir);
330331
}
331332

332-
strbuf_addstr(&buf_payload, " argv:");
333-
if (cmd->git_cmd)
334-
strbuf_addstr(&buf_payload, " git");
335-
sq_quote_argv_pretty(&buf_payload, cmd->argv);
333+
strbuf_addstr(&buf_payload, " argv:[");
334+
if (cmd->git_cmd) {
335+
strbuf_addstr(&buf_payload, "git");
336+
if (cmd->argv[0])
337+
strbuf_addch(&buf_payload, ' ');
338+
}
339+
sq_quote_argv_pretty_ltrim(&buf_payload, cmd->argv);
340+
strbuf_addch(&buf_payload, ']');
336341

337342
perf_io_write_fl(file, line, event_name, NULL, &us_elapsed_absolute,
338343
NULL, NULL, &buf_payload);
@@ -383,10 +388,14 @@ static void fn_exec_fl(const char *file, int line, uint64_t us_elapsed_absolute,
383388
struct strbuf buf_payload = STRBUF_INIT;
384389

385390
strbuf_addf(&buf_payload, "id:%d ", exec_id);
386-
strbuf_addstr(&buf_payload, "argv:");
387-
if (exe)
388-
strbuf_addf(&buf_payload, " %s", exe);
389-
sq_quote_argv_pretty(&buf_payload, argv);
391+
strbuf_addstr(&buf_payload, "argv:[");
392+
if (exe) {
393+
strbuf_addstr(&buf_payload, exe);
394+
if (argv[0])
395+
strbuf_addch(&buf_payload, ' ');
396+
}
397+
sq_quote_argv_pretty_ltrim(&buf_payload, argv);
398+
strbuf_addch(&buf_payload, ']');
390399

391400
perf_io_write_fl(file, line, event_name, NULL, &us_elapsed_absolute,
392401
NULL, NULL, &buf_payload);

0 commit comments

Comments
 (0)