diff mbox series

[2/3] perf test: Fix perf stat bpf counters test on Intel

Message ID 20230825164152.165610-2-namhyung@kernel.org (mailing list archive)
State Not Applicable
Headers show
Series [1/3] perf test: Skip 6.2 kernel for bpf-filter test | expand

Checks

Context Check Description
netdev/tree_selection success Not a local patch

Commit Message

Namhyung Kim Aug. 25, 2023, 4:41 p.m. UTC
As of now, bpf counters (bperf) don't support event groups.  But the
default perf stat includes topdown metrics if supported (on recent Intel
machines) which require groups.  That makes perf stat exiting.

  $ sudo perf stat --bpf-counter true
  bpf managed perf events do not yet support groups.

Actually the test explicitly uses cycles event only, but it missed to
pass the option when it checks the availability of the command.

Fixes: 2c0cb9f56020d ("perf test: Add a shell test for 'perf stat --bpf-counters' new option")
Cc: stable@vger.kernel.org
Cc: Song Liu <song@kernel.org>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
---
 tools/perf/tests/shell/stat_bpf_counters.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Song Liu Aug. 25, 2023, 4:47 p.m. UTC | #1
On Fri, Aug 25, 2023 at 9:41 AM Namhyung Kim <namhyung@kernel.org> wrote:
>
> As of now, bpf counters (bperf) don't support event groups.  But the
> default perf stat includes topdown metrics if supported (on recent Intel
> machines) which require groups.  That makes perf stat exiting.
>
>   $ sudo perf stat --bpf-counter true
>   bpf managed perf events do not yet support groups.
>
> Actually the test explicitly uses cycles event only, but it missed to
> pass the option when it checks the availability of the command.
>
> Fixes: 2c0cb9f56020d ("perf test: Add a shell test for 'perf stat --bpf-counters' new option")
> Cc: stable@vger.kernel.org
> Cc: Song Liu <song@kernel.org>
> Signed-off-by: Namhyung Kim <namhyung@kernel.org>

Reviewed-by: Song Liu <song@kernel.org>

Thanks!
Song

> ---
>  tools/perf/tests/shell/stat_bpf_counters.sh | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/tests/shell/stat_bpf_counters.sh b/tools/perf/tests/shell/stat_bpf_counters.sh
> index 513cd1e58e0e..a87bb2814b4c 100755
> --- a/tools/perf/tests/shell/stat_bpf_counters.sh
> +++ b/tools/perf/tests/shell/stat_bpf_counters.sh
> @@ -22,10 +22,10 @@ compare_number()
>  }
>
>  # skip if --bpf-counters is not supported
> -if ! perf stat --bpf-counters true > /dev/null 2>&1; then
> +if ! perf stat -e cycles --bpf-counters true > /dev/null 2>&1; then
>         if [ "$1" = "-v" ]; then
>                 echo "Skipping: --bpf-counters not supported"
> -               perf --no-pager stat --bpf-counters true || true
> +               perf --no-pager stat -e cycles --bpf-counters true || true
>         fi
>         exit 2
>  fi
> --
> 2.42.0.rc1.204.g551eb34607-goog
>
diff mbox series

Patch

diff --git a/tools/perf/tests/shell/stat_bpf_counters.sh b/tools/perf/tests/shell/stat_bpf_counters.sh
index 513cd1e58e0e..a87bb2814b4c 100755
--- a/tools/perf/tests/shell/stat_bpf_counters.sh
+++ b/tools/perf/tests/shell/stat_bpf_counters.sh
@@ -22,10 +22,10 @@  compare_number()
 }
 
 # skip if --bpf-counters is not supported
-if ! perf stat --bpf-counters true > /dev/null 2>&1; then
+if ! perf stat -e cycles --bpf-counters true > /dev/null 2>&1; then
 	if [ "$1" = "-v" ]; then
 		echo "Skipping: --bpf-counters not supported"
-		perf --no-pager stat --bpf-counters true || true
+		perf --no-pager stat -e cycles --bpf-counters true || true
 	fi
 	exit 2
 fi