All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jiri Olsa <jolsa@redhat.com>
To: Alexey Budankov <alexey.budankov@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Ingo Molnar <mingo@redhat.com>, Andi Kleen <ak@linux.intel.com>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v1] perf session: fix decompression of PERF_RECORD_COMPRESSED records
Date: Mon, 18 Nov 2019 11:46:51 +0100	[thread overview]
Message-ID: <20191118104651.GE28372@krava> (raw)
In-Reply-To: <2f2b2421-6865-4669-7e30-918d12ae5e01@linux.intel.com>

On Fri, Nov 15, 2019 at 08:09:19PM +0300, Alexey Budankov wrote:
> 
> On 15.11.2019 18:11, Jiri Olsa wrote:
> > On Fri, Nov 15, 2019 at 12:05:14PM +0300, Alexey Budankov wrote:
> <SNIP>
> >> diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
> >> index f07b8ecb91bc..3f6f812ec4ed 100644
> >> --- a/tools/perf/util/session.c
> >> +++ b/tools/perf/util/session.c
> >> @@ -1957,9 +1957,31 @@ static int __perf_session__process_pipe_events(struct perf_session *session)
> >>  	return err;
> >>  }
> >>  
> >> +static union perf_event *
> >> +prefetch_event(char *buf, u64 head, size_t mmap_size,
> >> +	       bool needs_swap, union perf_event *ret);
> > 
> > why not move prefetch_event definition in here?
> > I don't see any need for the static declaration..
> 
> It is just for the sake of more readable patch formatting 
> and, yes, could be avoided and replaced by the definition.

I think we're trying to avoid static declarations

> 
> > 
> >> +
> >>  static union perf_event *
> >>  fetch_mmaped_event(struct perf_session *session,
> >>  		   u64 head, size_t mmap_size, char *buf)
> >> +{
> >> +	return prefetch_event(buf, head, mmap_size,
> >> +			      session->header.needs_swap,
> >> +			      ERR_PTR(-EINVAL));
> >> +}
> >> +
> >> +static union perf_event *
> >> +fetch_decomp_event(struct perf_session *session,
> >> +		   u64 head, size_t mmap_size, char *buf)
> >> +{
> > 
> > if this is decomp specific, it could take 'struct decomp*' as argument
> 
> Well, it makes sense. whole session object is not required here.
> Just session->header.needs_swap could be passed as a param.
> Shall we make it like this?
> 
> static union perf_event * 
> fetch_decomp_event(u64 head, size_t mmap_size, char *buf, bool needs_swap)

ok, I just saw the call passing all the stuff from 'struct decomp'
so I thought it'd save some arguments if we pass the  struct itself
instead

jirka


      reply	other threads:[~2019-11-18 10:47 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-15  9:05 [PATCH v1] perf session: fix decompression of PERF_RECORD_COMPRESSED records Alexey Budankov
2019-11-15 15:11 ` Jiri Olsa
2019-11-15 17:09   ` Alexey Budankov
2019-11-18 10:46     ` Jiri Olsa [this message]

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=20191118104651.GE28372@krava \
    --to=jolsa@redhat.com \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=alexey.budankov@linux.intel.com \
    --cc=linux-kernel@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 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.