[Ping][PATCH] perf test: Checking BPF metadata collection fails on version string

Thomas Richter posted 1 patch 1 month, 1 week ago
tools/perf/tests/shell/test_bpf_metadata.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[Ping][PATCH] perf test: Checking BPF metadata collection fails on version string
Posted by Thomas Richter 1 month, 1 week ago
commit edf2cadf01e8f ("perf test: add test for BPF metadata collection")

fails consistently on the version string check. The perf version
string on some of the constant integration test machines contains
characters with special meaning in grep's extended regular expression
matching algorithm. The output of perf version is:

 # perf version
 perf version 6.17.0-20250814.rc1.git20.24ea63ea3877.63.fc42.s390x+git
 #

and the '+' character has special meaning in egrep command.
Also the use of egrep is deprecated.

Change the perf version string check to fixed character matching
and get rid of egrep's warning being deprecated. Use grep -F instead.

Output before:
 # perf test -F 102
 Checking BPF metadata collection
 egrep: warning: egrep is obsolescent; using grep -E
 Basic BPF metadata test [Failed invalid output]
 102: BPF metadata collection test             : FAILED!
 #

Output after:
 # perf test -F 102
 Checking BPF metadata collection
 Basic BPF metadata test [Success]
 102: BPF metadata collection test             : Ok
 #

Fixes: edf2cadf01e8f ("perf test: add test for BPF metadata collection")
Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
Cc: Blake Jones <blakejones@google.com>
---
 tools/perf/tests/shell/test_bpf_metadata.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/tests/shell/test_bpf_metadata.sh b/tools/perf/tests/shell/test_bpf_metadata.sh
index 69e3c2055134..be67d56e0f09 100755
--- a/tools/perf/tests/shell/test_bpf_metadata.sh
+++ b/tools/perf/tests/shell/test_bpf_metadata.sh
@@ -61,7 +61,7 @@ test_bpf_metadata() {
 		/perf_version/ {
 			if (entry) print $NF;
 		}
-	' | egrep "$VERS" > /dev/null
+	' | grep -qF "$VERS"
 	then
 		echo "Basic BPF metadata test [Failed invalid output]"
 		err=1
-- 
2.50.1
Re: [Ping][PATCH] perf test: Checking BPF metadata collection fails on version string
Posted by Ian Rogers 1 month, 1 week ago
On Fri, Aug 22, 2025 at 5:26 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
>
> commit edf2cadf01e8f ("perf test: add test for BPF metadata collection")
>
> fails consistently on the version string check. The perf version
> string on some of the constant integration test machines contains
> characters with special meaning in grep's extended regular expression
> matching algorithm. The output of perf version is:
>
>  # perf version
>  perf version 6.17.0-20250814.rc1.git20.24ea63ea3877.63.fc42.s390x+git
>  #
>
> and the '+' character has special meaning in egrep command.
> Also the use of egrep is deprecated.
>
> Change the perf version string check to fixed character matching
> and get rid of egrep's warning being deprecated. Use grep -F instead.
>
> Output before:
>  # perf test -F 102
>  Checking BPF metadata collection
>  egrep: warning: egrep is obsolescent; using grep -E
>  Basic BPF metadata test [Failed invalid output]
>  102: BPF metadata collection test             : FAILED!
>  #
>
> Output after:
>  # perf test -F 102
>  Checking BPF metadata collection
>  Basic BPF metadata test [Success]
>  102: BPF metadata collection test             : Ok
>  #
>
> Fixes: edf2cadf01e8f ("perf test: add test for BPF metadata collection")
> Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
> Cc: Blake Jones <blakejones@google.com>

Reviewed-by: Ian Rogers <irogers@google.com>

Thanks,
Ian

> ---
>  tools/perf/tests/shell/test_bpf_metadata.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/tests/shell/test_bpf_metadata.sh b/tools/perf/tests/shell/test_bpf_metadata.sh
> index 69e3c2055134..be67d56e0f09 100755
> --- a/tools/perf/tests/shell/test_bpf_metadata.sh
> +++ b/tools/perf/tests/shell/test_bpf_metadata.sh
> @@ -61,7 +61,7 @@ test_bpf_metadata() {
>                 /perf_version/ {
>                         if (entry) print $NF;
>                 }
> -       ' | egrep "$VERS" > /dev/null
> +       ' | grep -qF "$VERS"
>         then
>                 echo "Basic BPF metadata test [Failed invalid output]"
>                 err=1
> --
> 2.50.1
>
>
Re: [PATCH v6.17-rc] perf test: Checking BPF metadata collection fails on version string
Posted by Arnaldo Carvalho de Melo 1 month ago
On Fri, Aug 22, 2025 at 11:02:27AM -0700, Ian Rogers wrote:
> On Fri, Aug 22, 2025 at 5:26 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
> > commit edf2cadf01e8f ("perf test: add test for BPF metadata collection")

> > fails consistently on the version string check. The perf version
> > string on some of the constant integration test machines contains
> > characters with special meaning in grep's extended regular expression
> > matching algorithm. The output of perf version is:

> >  # perf version
> >  perf version 6.17.0-20250814.rc1.git20.24ea63ea3877.63.fc42.s390x+git

> > and the '+' character has special meaning in egrep command.
> > Also the use of egrep is deprecated.

> > Change the perf version string check to fixed character matching
> > and get rid of egrep's warning being deprecated. Use grep -F instead.

<SNIP>

> > Fixes: edf2cadf01e8f ("perf test: add test for BPF metadata collection")
> > Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> > Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
> > Cc: Blake Jones <blakejones@google.com>
 
> Reviewed-by: Ian Rogers <irogers@google.com>

Reviewed-by: Arnaldo Carvalho de Melo <acme@redhat.com>

Namhyung, I think this should go into v6.17-rc.

Thanks,

- Arnaldo
Re: [PATCH v6.17-rc] perf test: Checking BPF metadata collection fails on version string
Posted by Namhyung Kim 1 month ago
On Wed, Sep 03, 2025 at 01:17:16PM -0300, Arnaldo Carvalho de Melo wrote:
> On Fri, Aug 22, 2025 at 11:02:27AM -0700, Ian Rogers wrote:
> > On Fri, Aug 22, 2025 at 5:26 AM Thomas Richter <tmricht@linux.ibm.com> wrote:
> > > commit edf2cadf01e8f ("perf test: add test for BPF metadata collection")
> 
> > > fails consistently on the version string check. The perf version
> > > string on some of the constant integration test machines contains
> > > characters with special meaning in grep's extended regular expression
> > > matching algorithm. The output of perf version is:
> 
> > >  # perf version
> > >  perf version 6.17.0-20250814.rc1.git20.24ea63ea3877.63.fc42.s390x+git
> 
> > > and the '+' character has special meaning in egrep command.
> > > Also the use of egrep is deprecated.
> 
> > > Change the perf version string check to fixed character matching
> > > and get rid of egrep's warning being deprecated. Use grep -F instead.
> 
> <SNIP>
> 
> > > Fixes: edf2cadf01e8f ("perf test: add test for BPF metadata collection")
> > > Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
> > > Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com>
> > > Cc: Blake Jones <blakejones@google.com>
>  
> > Reviewed-by: Ian Rogers <irogers@google.com>
> 
> Reviewed-by: Arnaldo Carvalho de Melo <acme@redhat.com>
> 
> Namhyung, I think this should go into v6.17-rc.

Sorry for the delay, will add.

Thanks,
Namhyung