Re: perf: PERF_FLAG_FD_OUTPUT has been broken since 2.6.35

From: Arnaldo Carvalho de Melo
Date: Tue Jan 13 2015 - 06:56:49 EST


Em Tue, Jan 13, 2015 at 10:36:03AM +0100, Peter Zijlstra escreveu:
> On Fri, Jan 09, 2015 at 11:26:54AM -0500, Vince Weaver wrote:
> > On Fri, 9 Jan 2015, Peter Zijlstra wrote:
> > > > So is this worth fixing seeing as apparently no one uses this feature?

> > > I think there's a fair argument for removing it, Ingo, Acme?

> > could the functionality be replaced with a subsequent call to
> > ioctl(PERF_EVENT_IOC_SET_OUTPUT)

> Yes.

> > Although I suppose there's a possibility for losing a small amount of data
> > or some other reason that PERF_FLAG_FD_OUTPUT was introduced in the first
> > place.

> That's a natural race without solution. That is, because there is no
> serialization between the sys_perf_event_open() and any possible acts of
> data generation, we can't even talk about loosing data.

> Even if it were all in a single syscall, there is no saying how long
> that syscall would take to complete -- imagine its stuck on memory
> allocation or whatnot. Similarly you could have issued the syscall a wee
> bit later or whatnot.

That is exactly my thinking, the world goes on while we set up perf to
observe it :-)

- Arnaldo
--
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/