Re: [RFC PATCH] perf: Add PERF_RECORD_SWITCH to indicate context switches

From: Arnaldo Carvalho de Melo
Date: Fri Jun 12 2015 - 08:36:52 EST


Em Fri, Jun 12, 2015 at 02:09:38PM +0200, Peter Zijlstra escreveu:
> On Fri, Jun 12, 2015 at 02:12:11PM +0300, Adrian Hunter wrote:
> > On 11/06/15 17:15, Peter Zijlstra wrote:
>
> > > Right, so the one wee problem I have is that this only provides sched_in
> > > data, I imagine people might be interested in sched_out as well.
> >
> > That is not a problem although it would be interesting to know the use-case.
> > To me it seemed unreasonable to expect to analyze scheduler behaviour
> > without admin-level privileges since it is inherently an administrative
> > activity.
>
> I was more thinking about it being used to track event duration inside a
> task. Say you want measure the time between event A and event B but got
> scheduled out in between.
>
> ---- A ----] .... [---- B -----
>
> If you do not have the sched_out time, you cannot correct for that.
>
> > > all 3 are already part of sample_id.
> >
> > You have to decide whether you expect to be able to use an event without
> > sample_id. MMAP and MMAP2 both have pid, tid which are in sample_id, LOST
> > has id, EXIT and FORK have time, all of the THROTTLE/UNTHROTTLE members are
> > in sample_id etc. So it currently looks like we expect to be able to use an
> > event without requiring sample_id.

The fact that there is this duplication is because sample_id_all came
after those events, but this new one being proposed doesn't have to do
it :-)

> I think we recently had this discussion:
>
> lkml.kernel.org/r/1430940834-8964-8-git-send-email-kan.liang@xxxxxxxxx
>
> The patch we ended up merging:
>
> f38b0dbb491a ("perf/x86/intel: Introduce PERF_RECORD_LOST_SAMPLES")
>
> Does indeed require sample_id.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/