Just one clarification ... On 8/10/2018 9:25 AM, Reinette Chatre wrote: > static inline int x86_perf_event_error_state(struct perf_event *event) > { > int ret = 0; > u64 tmp; > > ret = perf_event_read_local(event, &tmp, NULL, NULL); > if (ret < 0) > return ret; > > if (event->attr.pinned && event->oncpu != smp_processor_id()) > return -EBUSY;
I am preparing a patch series and in that the above extra test will be included as the last sanity check in perf_event_read_local() as you suggested. This inline function will thus go away and the only error state check would be a call to perf_event_read_local(). Reinette