Messages in this thread | | | Date | Fri, 5 Jul 2013 11:28:08 -0400 (EDT) | From | Vince Weaver <> | Subject | Re: perf/Documentation/ABI -- add some documentation for perf_event sysfs usage |
| |
On Fri, 5 Jul 2013, Jiri Olsa wrote:
> On Thu, Jul 04, 2013 at 11:02:53AM +0200, Peter Zijlstra wrote: > > On Wed, Jul 03, 2013 at 11:14:40PM -0400, Vince Weaver wrote:
> > > Documentation/ABI/testing/sysfs-bus-event_source-devices-events > > > > > > Should the ldlat value be fixed to be hex? Or should we ammend the ABI > > > document to allow decimal? > > > > I don't see a good reason not to allow decimal as well. Jolsa? > > yep, no technical problem with decimal > > hum, the doc mentions 'event' term only, which IS hex only AFAICS ;-) > > I think this docs should be updated and either describe all > allowed terms or be generic enough to cover all of them.
So you're saying the official kernel ABI should be "whatever the userspace perf tool happens to accept"?
That's not really useful, especially as perf doesn't distinguish between event strings read from sysfs and those passed on the perf command line. The ABI documentation in effect ends up being a pointer to a mostly incomprehensible lex/yacc file.
I think we should just remove the Documentation/ABI/testing/sysfs-bus-event_source-devices-events file as it's misleading. Userspace broke and no one cares.
It's not even easy to audit all places in the kernel that create the sysfs event files because each architecture does it differently. And there's no sane way to unit test this on a new kernel release because the values printed depend on the hardware you have, so without a full range of all families of cpus for all architectures you never know when someone has added a decimal value, or started depending on { characters, etc.
This is the problem with perf in the tools directory, any other user of the ABI is eternally second-class.
Vince
| |