All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] perf archive: Fix filtering of empty build-ids
@ 2021-02-19 16:09 Nicholas Fraser
  2021-02-24 13:50 ` Jiri Olsa
  0 siblings, 1 reply; 3+ messages in thread
From: Nicholas Fraser @ 2021-02-19 16:09 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Nicholas Fraser, Ian Rogers, linux-kernel
  Cc: Ulrich Czekalla, Huw Davies

A non-existent build-id used to be treated as all-zero SHA-1 hash.
Build-ids are now variable width. A non-existent build-id is an empty
string and "perf buildid-list" pads this with spaces. This is true even
when using old perf.data files recorded from older versions of perf;
"perf buildid-list" never reports an all-zero hash anymore.

This fixes "perf-archive" to skip missing build-ids by skipping lines
that start with a padding space rather than with zeroes.

Signed-off-by: Nicholas Fraser <nfraser@codeweavers.com>
---
 tools/perf/perf-archive.sh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/tools/perf/perf-archive.sh b/tools/perf/perf-archive.sh
index 0cfb3e2cefef..133f0eddbcc4 100644
--- a/tools/perf/perf-archive.sh
+++ b/tools/perf/perf-archive.sh
@@ -20,9 +20,8 @@ else
 fi
 
 BUILDIDS=$(mktemp /tmp/perf-archive-buildids.XXXXXX)
-NOBUILDID=0000000000000000000000000000000000000000
 
-perf buildid-list -i $PERF_DATA --with-hits | grep -v "^$NOBUILDID " > $BUILDIDS
+perf buildid-list -i $PERF_DATA --with-hits | grep -v "^ " > $BUILDIDS
 if [ ! -s $BUILDIDS ] ; then
 	echo "perf archive: no build-ids found"
 	rm $BUILDIDS || true
-- 
2.30.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/2] perf archive: Fix filtering of empty build-ids
  2021-02-19 16:09 [PATCH 1/2] perf archive: Fix filtering of empty build-ids Nicholas Fraser
@ 2021-02-24 13:50 ` Jiri Olsa
  2021-03-03 15:56   ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 3+ messages in thread
From: Jiri Olsa @ 2021-02-24 13:50 UTC (permalink / raw)
  To: Nicholas Fraser
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Namhyung Kim, Ian Rogers,
	linux-kernel, Ulrich Czekalla, Huw Davies

On Fri, Feb 19, 2021 at 11:09:32AM -0500, Nicholas Fraser wrote:
> A non-existent build-id used to be treated as all-zero SHA-1 hash.
> Build-ids are now variable width. A non-existent build-id is an empty
> string and "perf buildid-list" pads this with spaces. This is true even
> when using old perf.data files recorded from older versions of perf;
> "perf buildid-list" never reports an all-zero hash anymore.
> 
> This fixes "perf-archive" to skip missing build-ids by skipping lines
> that start with a padding space rather than with zeroes.
> 
> Signed-off-by: Nicholas Fraser <nfraser@codeweavers.com>

Acked-by: Jiri Olsa <jolsa@redhat.com>

thanks,
jirka

> ---
>  tools/perf/perf-archive.sh | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/tools/perf/perf-archive.sh b/tools/perf/perf-archive.sh
> index 0cfb3e2cefef..133f0eddbcc4 100644
> --- a/tools/perf/perf-archive.sh
> +++ b/tools/perf/perf-archive.sh
> @@ -20,9 +20,8 @@ else
>  fi
>  
>  BUILDIDS=$(mktemp /tmp/perf-archive-buildids.XXXXXX)
> -NOBUILDID=0000000000000000000000000000000000000000
>  
> -perf buildid-list -i $PERF_DATA --with-hits | grep -v "^$NOBUILDID " > $BUILDIDS
> +perf buildid-list -i $PERF_DATA --with-hits | grep -v "^ " > $BUILDIDS
>  if [ ! -s $BUILDIDS ] ; then
>  	echo "perf archive: no build-ids found"
>  	rm $BUILDIDS || true
> -- 
> 2.30.1
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/2] perf archive: Fix filtering of empty build-ids
  2021-02-24 13:50 ` Jiri Olsa
@ 2021-03-03 15:56   ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2021-03-03 15:56 UTC (permalink / raw)
  To: Jiri Olsa
  Cc: Nicholas Fraser, Peter Zijlstra, Ingo Molnar, Mark Rutland,
	Alexander Shishkin, Namhyung Kim, Ian Rogers, linux-kernel,
	Ulrich Czekalla, Huw Davies

Em Wed, Feb 24, 2021 at 02:50:20PM +0100, Jiri Olsa escreveu:
> On Fri, Feb 19, 2021 at 11:09:32AM -0500, Nicholas Fraser wrote:
> > A non-existent build-id used to be treated as all-zero SHA-1 hash.
> > Build-ids are now variable width. A non-existent build-id is an empty
> > string and "perf buildid-list" pads this with spaces. This is true even
> > when using old perf.data files recorded from older versions of perf;
> > "perf buildid-list" never reports an all-zero hash anymore.
> > 
> > This fixes "perf-archive" to skip missing build-ids by skipping lines
> > that start with a padding space rather than with zeroes.
> > 
> > Signed-off-by: Nicholas Fraser <nfraser@codeweavers.com>
> 
> Acked-by: Jiri Olsa <jolsa@redhat.com>

Thanks, applied.

- Arnaldo

 
> thanks,
> jirka
> 
> > ---
> >  tools/perf/perf-archive.sh | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> > 
> > diff --git a/tools/perf/perf-archive.sh b/tools/perf/perf-archive.sh
> > index 0cfb3e2cefef..133f0eddbcc4 100644
> > --- a/tools/perf/perf-archive.sh
> > +++ b/tools/perf/perf-archive.sh
> > @@ -20,9 +20,8 @@ else
> >  fi
> >  
> >  BUILDIDS=$(mktemp /tmp/perf-archive-buildids.XXXXXX)
> > -NOBUILDID=0000000000000000000000000000000000000000
> >  
> > -perf buildid-list -i $PERF_DATA --with-hits | grep -v "^$NOBUILDID " > $BUILDIDS
> > +perf buildid-list -i $PERF_DATA --with-hits | grep -v "^ " > $BUILDIDS
> >  if [ ! -s $BUILDIDS ] ; then
> >  	echo "perf archive: no build-ids found"
> >  	rm $BUILDIDS || true
> > -- 
> > 2.30.1
> > 
> 

-- 

- Arnaldo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-03-03 19:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-19 16:09 [PATCH 1/2] perf archive: Fix filtering of empty build-ids Nicholas Fraser
2021-02-24 13:50 ` Jiri Olsa
2021-03-03 15:56   ` Arnaldo Carvalho de Melo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.