Linux Perf Users
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ian Rogers <irogers@google.com>
Cc: namhyung@kernel.org, adrian.hunter@intel.com,
	alexander.shishkin@linux.intel.com, james.clark@linaro.org,
	jolsa@kernel.org, linux-kernel@vger.kernel.org,
	linux-perf-users@vger.kernel.org, mingo@redhat.com,
	peterz@infradead.org
Subject: Re: [PATCH v8 18/18] perf test: Truncate printed test descriptions dynamically to avoid terminal wrapping
Date: Thu, 4 Jun 2026 11:48:11 -0300	[thread overview]
Message-ID: <aiGQK7FzJYNobXvv@x1> (raw)
In-Reply-To: <aiGPimuOAmUe4E0U@x1>

On Thu, Jun 04, 2026 at 11:45:34AM -0300, Arnaldo Carvalho de Melo wrote:
> On Tue, Jun 02, 2026 at 10:41:29AM -0700, Ian Rogers wrote:
> > When test descriptions are extremely long (e.g., the truncated perf.data
> > graceful handling test is 103 characters long), they wrap across terminal
> > boundaries.
> > 
> > Because the ANSI escape code to delete the line (PERF_COLOR_DELETE_LINE)
> > only clears a single terminal line, visual wrapping leaves orphan
> > wrapped lines on the screen, which results in the test description being
> > printed multiple times.
> > 
> > Resolve this by checking the terminal width (get_term_dimensions) and
> > dynamically truncating the printed test description to fit within the
> > available columns, leaving safety space for the prefix index and status
> > suffix.
> > 
> > JUnit XML output and the failure summary report still print the full,
> > untruncated test descriptions.
> > 
> > Assisted-by: Gemini-CLI:Google Gemini 3
> > Signed-off-by: Ian Rogers <irogers@google.com>
> 
> I processed the first 17 patches this one has this problem, please take
> a look:

I pushed what I have to tmp.perf-tools-next, please continue from there.

- Arnaldo

> 
>   GENSKEL /tmp/build/perf-tools-next/util/bpf_skel/lock_contention.skel.h
>   CC      /tmp/build/perf-tools-next/util/bpf_lock_contention.o
> tests/builtin-test.c: In function ‘print_test_result.isra’:
> tests/builtin-test.c:420:40: error: ‘%-*s’ directive output may be truncated writing between 20 and 65505 bytes into a region of size 256 [-Werror=format-truncation=]
>   420 |                 snprintf(buf, buf_sz, "%-*s", width, desc);
>       |                                        ^~~~
> In file included from /usr/include/stdio.h:974,
>                  from /home/acme/git/perf-tools-next/tools/include/linux/panic.h:6,
>                  from /home/acme/git/perf-tools-next/tools/include/linux/kernel.h:11,
>                  from /home/acme/git/perf-tools-next/tools/include/linux/list.h:7,
>                  from /home/acme/git/perf-tools-next/tools/perf/util/config.h:6,
>                  from tests/builtin-test.c:26:
> In function ‘snprintf’,
>     inlined from ‘format_test_description’ at tests/builtin-test.c:420:3,
>     inlined from ‘print_test_result.isra’ at tests/builtin-test.c:459:3:
> /usr/include/bits/stdio2.h:68:10: note: ‘__builtin___snprintf_chk’ output between 21 and 65506 bytes into a destination of size 256
>    68 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    69 |                                    __glibc_objsize (__s), __fmt,
>       |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    70 |                                    __va_arg_pack ());
>       |                                    ~~~~~~~~~~~~~~~~~
> tests/builtin-test.c: In function ‘print_test_result.isra’:
> tests/builtin-test.c:420:40: error: ‘%-*s’ directive output may be truncated writing between 20 and 65507 bytes into a region of size 256 [-Werror=format-truncation=]
>   420 |                 snprintf(buf, buf_sz, "%-*s", width, desc);
>       |                                        ^~~~
> In function ‘snprintf’,
>     inlined from ‘format_test_description’ at tests/builtin-test.c:420:3,
>     inlined from ‘print_test_result.isra’ at tests/builtin-test.c:466:3:
> /usr/include/bits/stdio2.h:68:10: note: ‘__builtin___snprintf_chk’ output between 21 and 65508 bytes into a destination of size 256
>    68 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    69 |                                    __glibc_objsize (__s), __fmt,
>       |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    70 |                                    __va_arg_pack ());
>       |                                    ~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> make[4]: *** [/home/acme/git/perf-tools-next/tools/build/Makefile.build:95: /tmp/build/perf-tools-next/tests/builtin-test.o] Error 1
> make[3]: *** [/home/acme/git/perf-tools-next/tools/build/Makefile.build:158: tests] Error 2
> make[2]: *** [Makefile.perf:566: /tmp/build/perf-tools-next/perf-test-in.o] Error 2
> make[2]: *** Waiting for unfinished jobs....
>   LD      /tmp/build/perf-tools-next/util/perf-util-in.o
>   LD      /tmp/build/perf-tools-next/perf-util-in.o
> make[1]: *** [Makefile.perf:288: sub-make] Error 2
> make: *** [Makefile:122: install-bin] Error 2
> make: Leaving directory '/home/acme/git/perf-tools-next/tools/perf'
> ⬢ [acme@toolbx perf-tools-next]$
> acme@number:~/git/perf-tools-next$
> 
> acme@number:~/git/perf-tools-next$ gcc -v
> Using built-in specs.
> COLLECT_GCC=gcc
> COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/16/lto-wrapper
> OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
> OFFLOAD_TARGET_DEFAULT=1
> Target: x86_64-redhat-linux
> Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,m2,cobol,algol68,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugzilla.redhat.com/ --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-libstdcxx-zoneinfo=/usr/share/zoneinfo --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-16.1.1-build/gcc-16.1.1-20260515/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none,amdgcn-amdhsa --enable-offload-defaulted --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-tls=gnu2 --with-arch_32=i686 --build=x86_64-redhat-linux --with-build-config=bootstrap-lto --enable-link-serialization=1 --disable-libssp
> Thread model: posix
> Supported LTO compression algorithms: zlib zstd
> gcc version 16.1.1 20260515 (Red Hat 16.1.1-2) (GCC)
> acme@number:~/git/perf-tools-next$
> 
> 
> > ---
> >  tools/perf/tests/builtin-test.c | 63 +++++++++++++++++++++++++++++----
> >  1 file changed, 56 insertions(+), 7 deletions(-)
> > 
> > diff --git a/tools/perf/tests/builtin-test.c b/tools/perf/tests/builtin-test.c
> > index b64fc2204f22..edb4eaa695f1 100644
> > --- a/tools/perf/tests/builtin-test.c
> > +++ b/tools/perf/tests/builtin-test.c
> > @@ -20,6 +20,8 @@
> >  #include <sys/wait.h>
> >  #include <sys/stat.h>
> >  #include <sys/time.h>
> > +#include <sys/ioctl.h>
> > +#include "util/term.h"
> >  #include "builtin.h"
> >  #include "config.h"
> >  #include "hist.h"
> > @@ -404,19 +406,66 @@ static char *xml_escape(const char *str)
> >  	return res ? res : strdup("");
> >  }
> >  
> > +static const char *format_test_description(const char *desc, int width, int max_desc_width,
> > +					  char *buf, size_t buf_sz)
> > +{
> > +	int len = strlen(desc);
> > +
> > +	if (width > max_desc_width)
> > +		width = max_desc_width;
> > +
> > +	if (len > max_desc_width) {
> > +		snprintf(buf, buf_sz, "%.*s...", max_desc_width - 3, desc);
> > +	} else {
> > +		snprintf(buf, buf_sz, "%-*s", width, desc);
> > +	}
> > +	return buf;
> > +}
> > +
> >  static int print_test_result(struct test_suite *t, int curr_suite, int curr_test_case,
> >  			     int result, int width, int running,
> >  			     const char *err_output, double elapsed)
> >  {
> > +	char desc_buf[256];
> > +	const char *desc = test_description(t, curr_test_case);
> > +	struct winsize ws;
> > +	int max_desc_area_width;
> > +	int target_desc_area_width;
> > +	int desc_padding;
> > +
> > +	get_term_dimensions(&ws);
> > +	/*
> > +	 * Total terminal columns minus space for status e.g. " Running (12 active)"
> > +	 * which is 20 chars, plus a margin of 3 chars = 23 chars.
> > +	 */
> > +	max_desc_area_width = ws.ws_col - 23;
> > +	if (max_desc_area_width < 40)
> > +		max_desc_area_width = 40;
> > +
> > +	/* Standard test has prefix "%3d: " which is 5 chars */
> > +	target_desc_area_width = width + 5;
> > +	if (target_desc_area_width > max_desc_area_width)
> > +		target_desc_area_width = max_desc_area_width;
> > +
> >  	if (test_suite__num_test_cases(t) > 1) {
> >  		char prefix[32];
> >  		int len = snprintf(prefix, sizeof(prefix), "%3d.%1d:",
> >  				   curr_suite + 1, curr_test_case + 1);
> > -		int subw = len >= 4 ? width + 4 - len : width;
> >  
> > -		pr_info("%s %-*s:", prefix, subw, test_description(t, curr_test_case));
> > -	} else
> > -		pr_info("%3d: %-*s:", curr_suite + 1, width, test_description(t, curr_test_case));
> > +		desc_padding = target_desc_area_width - (len + 1);
> > +		if (desc_padding < 20)
> > +			desc_padding = 20;
> > +
> > +		format_test_description(desc, desc_padding, desc_padding, desc_buf, sizeof(desc_buf));
> > +		pr_info("%s %s:", prefix, desc_buf);
> > +	} else {
> > +		desc_padding = target_desc_area_width - 5;
> > +		if (desc_padding < 20)
> > +			desc_padding = 20;
> > +
> > +		format_test_description(desc, desc_padding, desc_padding, desc_buf, sizeof(desc_buf));
> > +		pr_info("%3d: %s:", curr_suite + 1, desc_buf);
> > +	}
> >  
> >  	switch (result) {
> >  	case TEST_RUNNING:
> > @@ -700,7 +749,7 @@ static void finish_test(struct child_test **child_tests, int running_test, int c
> >  	 * sub test names.
> >  	 */
> >  	if (test_suite__num_test_cases(t) > 1 && curr_test_case == 0)
> > -		pr_info("%3d: %-*s:\n", curr_suite + 1, width, test_description(t, -1));
> > +		pr_info("%3d: %s:\n", curr_suite + 1, test_description(t, -1));
> >  
> >  	/*
> >  	 * Busy loop reading from the child's stdout/stderr that are set to be
> > @@ -976,7 +1025,7 @@ static int finish_tests_parallel(struct child_test **child_tests, size_t num_tes
> >  			if (next_child) {
> >  				if (test_suite__num_test_cases(next_child->test) > 1 &&
> >  				    last_suite_printed != next_child->suite_num) {
> > -					pr_info("%3d: %-*s:\n", next_child->suite_num + 1, width,
> > +					pr_info("%3d: %s:\n", next_child->suite_num + 1,
> >  						test_description(next_child->test, -1));
> >  					last_suite_printed = next_child->suite_num;
> >  				}
> > @@ -1040,7 +1089,7 @@ static int finish_tests_parallel(struct child_test **child_tests, size_t num_tes
> >  
> >  			if (test_suite__num_test_cases(child->test) > 1 &&
> >  			    last_suite_printed != child->suite_num) {
> > -				pr_info("%3d: %-*s:\n", child->suite_num + 1, width,
> > +				pr_info("%3d: %s:\n", child->suite_num + 1,
> >  					test_description(child->test, -1));
> >  				last_suite_printed = child->suite_num;
> >  			}
> > -- 
> > 2.54.0.1013.g208068f2d8-goog

  reply	other threads:[~2026-06-04 14:48 UTC|newest]

Thread overview: 185+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-13 23:04 [PATCH v1 00/14] perf test: Harness improvements Ian Rogers
2026-05-13 23:04 ` [PATCH v1 01/14] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-05-13 23:04 ` [PATCH v1 02/14] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-05-14 11:42   ` sashiko-bot
2026-05-13 23:04 ` [PATCH v1 03/14] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-05-13 23:04 ` [PATCH v1 04/14] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-05-14 12:10   ` sashiko-bot
2026-05-13 23:04 ` [PATCH v1 05/14] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-05-13 23:04 ` [PATCH v1 06/14] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-05-14 14:27   ` sashiko-bot
2026-05-13 23:04 ` [PATCH v1 07/14] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-05-14 15:50   ` sashiko-bot
2026-05-13 23:04 ` [PATCH v1 08/14] perf test: Add summary reporting Ian Rogers
2026-05-14 16:10   ` sashiko-bot
2026-05-13 23:04 ` [PATCH v1 09/14] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-05-13 23:04 ` [PATCH v1 10/14] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-05-13 23:04 ` [PATCH v1 11/14] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-05-13 23:04 ` [PATCH v1 12/14] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-05-14 17:48   ` sashiko-bot
2026-05-13 23:04 ` [PATCH v1 13/14] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-05-13 23:04 ` [PATCH v1 14/14] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-05-14 18:28   ` sashiko-bot
2026-05-31  5:27 ` [PATCH v2 00/14] perf test: Accelerate parallel test harness and add JUnit XML reporting Ian Rogers
2026-05-31  5:27   ` [PATCH v2 01/14] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-05-31  5:36     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 02/14] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-05-31  5:36     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 03/14] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-05-31  5:37     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 04/14] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-05-31  5:27   ` [PATCH v2 05/14] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-05-31  5:27   ` [PATCH v2 06/14] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-05-31  5:39     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 07/14] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-05-31  5:37     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 08/14] perf test: Add summary reporting Ian Rogers
2026-05-31  5:38     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 09/14] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-05-31  5:27   ` [PATCH v2 10/14] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-05-31  5:46     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 11/14] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-05-31  5:48     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 12/14] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-05-31  5:43     ` sashiko-bot
2026-05-31  5:27   ` [PATCH v2 13/14] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-05-31  5:27   ` [PATCH v2 14/14] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-05-31  5:47     ` sashiko-bot
2026-05-31  6:37   ` [PATCH v3 00/14] perf test: Accelerate parallel test harness and add JUnit XML reporting Ian Rogers
2026-05-31  6:37     ` [PATCH v3 01/14] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-05-31  6:46       ` sashiko-bot
2026-05-31  6:37     ` [PATCH v3 02/14] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-05-31  6:37     ` [PATCH v3 03/14] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-05-31  6:37     ` [PATCH v3 04/14] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-05-31  6:37     ` [PATCH v3 05/14] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-05-31  6:37     ` [PATCH v3 06/14] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-05-31  6:55       ` sashiko-bot
2026-05-31  6:37     ` [PATCH v3 07/14] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-05-31  6:47       ` sashiko-bot
2026-05-31  6:37     ` [PATCH v3 08/14] perf test: Add summary reporting Ian Rogers
2026-05-31  6:50       ` sashiko-bot
2026-05-31  6:37     ` [PATCH v3 09/14] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-05-31  6:37     ` [PATCH v3 10/14] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-05-31  6:52       ` sashiko-bot
2026-05-31  6:37     ` [PATCH v3 11/14] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-05-31  6:37     ` [PATCH v3 12/14] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-05-31  6:37     ` [PATCH v3 13/14] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-05-31  6:37     ` [PATCH v3 14/14] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-05-31  6:58       ` sashiko-bot
2026-05-31  8:22     ` [PATCH v4 00/15] perf test: Accelerate parallel test harness and add JUnit XML reporting Ian Rogers
2026-05-31  8:22       ` [PATCH v4 01/15] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-05-31  8:22       ` [PATCH v4 02/15] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-05-31  8:22       ` [PATCH v4 03/15] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-05-31  8:22       ` [PATCH v4 04/15] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-05-31  8:22       ` [PATCH v4 05/15] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-05-31  8:22       ` [PATCH v4 06/15] tools subcmd: Robust fallback and existence checks for process reaping Ian Rogers
2026-05-31  8:33         ` sashiko-bot
2026-05-31  8:22       ` [PATCH v4 07/15] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-05-31  8:34         ` sashiko-bot
2026-05-31  8:22       ` [PATCH v4 08/15] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-05-31  8:31         ` sashiko-bot
2026-05-31  8:22       ` [PATCH v4 09/15] perf test: Add summary reporting Ian Rogers
2026-05-31  8:33         ` sashiko-bot
2026-05-31  8:22       ` [PATCH v4 10/15] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-05-31  8:33         ` sashiko-bot
2026-05-31  8:22       ` [PATCH v4 11/15] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-05-31  8:22       ` [PATCH v4 12/15] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-05-31  8:22       ` [PATCH v4 13/15] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-05-31  8:41         ` sashiko-bot
2026-05-31  8:22       ` [PATCH v4 14/15] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-05-31  8:22       ` [PATCH v4 15/15] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-05-31  8:38         ` sashiko-bot
2026-06-01  0:05       ` [PATCH v5 00/15] perf test: Accelerate parallel test harness and add JUnit XML reporting Ian Rogers
2026-06-01  0:05         ` [PATCH 01/15] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-06-01  0:05         ` [PATCH 02/15] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-06-01  0:05         ` [PATCH 03/15] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-06-01  0:05         ` [PATCH 04/15] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-06-01  0:05         ` [PATCH 05/15] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-06-01  0:05         ` [PATCH 06/15] tools subcmd: Robust fallback and existence checks for process reaping Ian Rogers
2026-06-01  0:19           ` sashiko-bot
2026-06-01  0:05         ` [PATCH 07/15] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-06-01  0:19           ` sashiko-bot
2026-06-01  0:05         ` [PATCH 08/15] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-06-01  0:05         ` [PATCH 09/15] perf test: Add summary reporting Ian Rogers
2026-06-01  0:17           ` sashiko-bot
2026-06-01  0:05         ` [PATCH 10/15] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-06-01  0:05         ` [PATCH 11/15] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-06-01  0:05         ` [PATCH 12/15] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-06-01  0:05         ` [PATCH 13/15] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-06-01  0:23           ` sashiko-bot
2026-06-01  0:05         ` [PATCH 14/15] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-06-01  0:05         ` [PATCH 15/15] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-06-01  0:23           ` sashiko-bot
2026-06-01  6:13         ` [PATCH v6 00/15] perf test: Accelerate parallel test harness and add JUnit XML reporting Ian Rogers
2026-06-01  6:13           ` [PATCH 01/15] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-06-01  6:25             ` sashiko-bot
2026-06-01  6:13           ` [PATCH 02/15] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-06-01  6:13           ` [PATCH 03/15] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-06-01  6:13           ` [PATCH 04/15] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-06-01  6:27             ` sashiko-bot
2026-06-01  6:13           ` [PATCH 05/15] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-06-01  6:13           ` [PATCH 06/15] tools subcmd: Robust fallback and existence checks for process reaping Ian Rogers
2026-06-01  6:28             ` sashiko-bot
2026-06-01  6:13           ` [PATCH 07/15] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-06-01  6:28             ` sashiko-bot
2026-06-01  6:13           ` [PATCH 08/15] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-06-01  6:25             ` sashiko-bot
2026-06-01  6:13           ` [PATCH 09/15] perf test: Add summary reporting Ian Rogers
2026-06-01  6:24             ` sashiko-bot
2026-06-01  6:13           ` [PATCH 10/15] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-06-01  6:13           ` [PATCH 11/15] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-06-01  6:13           ` [PATCH 12/15] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-06-01  6:13           ` [PATCH 13/15] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-06-01  6:33             ` sashiko-bot
2026-06-01  6:14           ` [PATCH 14/15] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-06-01  6:14           ` [PATCH 15/15] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-06-01  6:37             ` sashiko-bot
2026-06-02  7:31           ` [PATCH v7 00/16] perf test: Parallel harness optimizations, summary & JUnit XML Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf tpebs: Fix concurrent stop races and PID reuse hazards in tpebs_stop Ian Rogers
2026-06-02  7:46               ` sashiko-bot
2026-06-02  7:31             ` [PATCH v7] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-06-02  7:49               ` sashiko-bot
2026-06-02  7:31             ` [PATCH v7] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-06-02  7:40               ` sashiko-bot
2026-06-02  7:31             ` [PATCH v7] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-06-02  7:53               ` sashiko-bot
2026-06-02  7:31             ` [PATCH v7] tools subcmd: Robust fallback and existence checks for process reaping Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-06-02  7:47               ` sashiko-bot
2026-06-02  7:31             ` [PATCH v7] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Add summary reporting Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-06-02  7:49               ` sashiko-bot
2026-06-02  7:31             ` [PATCH v7] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-06-02  7:31             ` [PATCH v7] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-06-02  9:45               ` sashiko-bot
2026-06-02 17:41             ` [PATCH v8 00/18] perf test: Parallel harness optimizations, summary, JUnit XML & PMU fixes Ian Rogers
2026-06-02 17:41               ` [PATCH v8 01/18] perf tpebs: Fix concurrent stop races and PID reuse hazards in tpebs_stop Ian Rogers
2026-06-02 17:41               ` [PATCH v8 02/18] perf jevents.py: Make generated C code more kernel style Ian Rogers
2026-06-02 17:41               ` [PATCH v8 03/18] perf pmu-events: Add API to get metric table name and iterate tables Ian Rogers
2026-06-02 17:41               ` [PATCH v8 04/18] perf test: Drain pipe after child finishes to avoid losing output Ian Rogers
2026-06-02 17:41               ` [PATCH v8 05/18] perf test: Support dynamic test suites with setup callback and private data Ian Rogers
2026-06-02 17:41               ` [PATCH v8 06/18] perf test pmu-events: A sub-test per metric table Ian Rogers
2026-06-02 17:41               ` [PATCH v8 07/18] tools subcmd: Robust fallback and existence checks for process reaping Ian Rogers
2026-06-02 17:41               ` [PATCH v8 08/18] perf test: Refactor parallel poll loop to drain all pipes simultaneously Ian Rogers
2026-06-02 17:41               ` [PATCH v8 09/18] perf test: Show snippet failure output for verbose=1 Ian Rogers
2026-06-02 17:41               ` [PATCH v8 10/18] perf test: Add summary reporting Ian Rogers
2026-06-04 14:38                 ` Arnaldo Carvalho de Melo
2026-06-04 14:40                   ` Arnaldo Carvalho de Melo
2026-06-02 17:41               ` [PATCH v8 11/18] perf test: Fix subtest status alignment for multi-digit indexes Ian Rogers
2026-06-02 17:41               ` [PATCH v8 12/18] perf test: Skip shebang and SPDX comments in shell test descriptions Ian Rogers
2026-06-02 17:41               ` [PATCH v8 13/18] perf test: Split monolithic 'util' test suite into sub-tests Ian Rogers
2026-06-02 17:41               ` [PATCH v8 14/18] perf test: Add -j/--junit option for JUnit XML test reports Ian Rogers
2026-06-02 17:41               ` [PATCH v8 15/18] perf test: Add shell test to validate JUnit XML reporting output Ian Rogers
2026-06-02 17:41               ` [PATCH v8 16/18] perf test: Remove /usr/bin/cc dependency from Intel PT shell test Ian Rogers
2026-06-02 17:41               ` [PATCH v8 17/18] perf pmu: Recognize 'default_core' as a core PMU and document matching Ian Rogers
2026-06-02 17:41               ` [PATCH v8 18/18] perf test: Truncate printed test descriptions dynamically to avoid terminal wrapping Ian Rogers
2026-06-04 14:45                 ` Arnaldo Carvalho de Melo
2026-06-04 14:48                   ` Arnaldo Carvalho de Melo [this message]
2026-06-04 16:36               ` [PATCH v9 0/2] perf test & PMU metric resolution improvements Ian Rogers
2026-06-04 16:36                 ` [PATCH v9 1/2] perf pmu: Recognize 'default_core' as a core PMU and document matching Ian Rogers
2026-06-04 16:36                 ` [PATCH v9 2/2] perf test: Truncate printed test descriptions dynamically to avoid terminal wrapping Ian Rogers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aiGQK7FzJYNobXvv@x1 \
    --to=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=irogers@google.com \
    --cc=james.clark@linaro.org \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox