Re: [PATCH V8 7/8] perf, x86: introduce PERF_RECORD_LOST_SAMPLES

From: Peter Zijlstra
Date: Thu May 07 2015 - 13:38:09 EST


On Thu, May 07, 2015 at 01:22:23PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Thu, May 07, 2015 at 04:39:39PM +0200, Peter Zijlstra escreveu:
> > On Thu, May 07, 2015 at 11:15:20AM -0300, Arnaldo Carvalho de Melo wrote:
> > > Em Thu, May 07, 2015 at 01:54:46PM +0200, Peter Zijlstra escreveu:
> > > > On Thu, May 07, 2015 at 01:35:24PM +0200, Peter Zijlstra wrote:
> > > > >
> > > > > - dropped the @id field from the record, it is already included in the
> > > > > @sample_id values.
> > > >
> > > > Hmm, this would force people to use sample_id; which in general is a
> > > > good idea, but should we really force that on people?
> > >
> > > Well, if there are more than one sample, we need it, right? If there is
> > > just one, we don't need it, what is different? Am I needing (even more)
> > > coffee?
> > >
> > > /me goes read some code...
> >
> > So the question was, do we do:
> >
> > /*
> > * struct {
> > * struct perf_event_header header;
> > * u64 id;
> > * u64 lost;
> > * struct sample_id sample_id;
> > * };
> > */
> > PERF_RECORD_LOST_SAMPLES
> >
> > And have the id thing twice if attr.sample_id && PERF_SAMPLE_ID, but
> > allow decoding if !attr.sample_id.
> >
> > Or force attr.sample_id && PERF_SAMPLE_ID if there's multiple events and
> > do away with the extra id field, like:
> >
> > /*
> > * struct {
> > * struct perf_event_header header;
> > * u64 lost;
> > * struct sample_id sample_id;
> > * };
> > */
> > PERF_RECORD_LOST_SAMPLES
> >
> > Should we force the use of sample_id on people?
>
> If we have more than one event we _need_ PERF_SAMPLE_ID, to
> disambiguate, if we don't, then the lost events are just for that one,
> no?

Sure, PERF_SAMPLE_ID is required, but attr::sample_id_all is not is it?

We can largely get by without using sample_id_all, as we did for a
while.

That said; sample_id_all has been around for more than 4 years and its
recommended for use; but should we mandate it?
--
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/