On Thu, 16 Mar 2017, tip-bot for Alexander Shishkin wrote: > Commit-ID: ae0c2d995d648d5165545d5e05e2869642009b38 > perf/core: Add a flag for partial AUX records > > The Intel PT driver needs to be able to communicate partial AUX transactions, > that is, transactions with gaps in data for reasons other than no room > left in the buffer (i.e. truncated transactions). Therefore, this condition > does not imply a wakeup for the consumer. > > To this end, add a new "partial" AUX flag. ... > diff --git a/include/uapi/linux/perf_event.h b/include/uapi/linux/perf_event.h > index bec0aad..d09a9cd 100644 > --- a/include/uapi/linux/perf_event.h > +++ b/include/uapi/linux/perf_event.h > @@ -915,6 +915,7 @@ enum perf_callchain_context { > */ > #define PERF_AUX_FLAG_TRUNCATED 0x01 /* record was truncated to fit */ > #define PERF_AUX_FLAG_OVERWRITE 0x02 /* snapshot from overwrite mode */ > +#define PERF_AUX_FLAG_PARTIAL 0x04 /* record contains gaps */ was this included in the wrong patch? It adds the flag but nothing uses it? Though it appears a later patch makes use of it. This makes it confusing when trying to update the perf_event_open.2 manpage, as the git commit that adds the new ABI to perf_event.h doesn't seem to have anything to do with any behavior affected by it. > #define PERF_FLAG_FD_NO_GROUP (1UL << 0) > #define PERF_FLAG_FD_OUTPUT (1UL << 1) > diff --git a/kernel/events/ring_buffer.c b/kernel/events/ring_buffer.c > index 9654e55..2831480 100644 > --- a/kernel/events/ring_buffer.c > +++ b/kernel/events/ring_buffer.c > @@ -424,8 +424,8 @@ err: > */ > void perf_aux_output_end(struct perf_output_handle *handle, unsigned long size) > { > + bool wakeup = !!(handle->aux_flags & PERF_AUX_FLAG_TRUNCATED); > struct ring_buffer *rb = handle->rb; > - bool wakeup = !!handle->aux_flags; > unsigned long aux_head; > -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |