On Wed, Jun 05, 2013 at 03:14:33PM -0400, Vince Weaver wrote: > On Tue, 4 Jun 2013, Jiri Slaby wrote: > > > Even if I apply those three, I still see: > > syscalls/perf_event_open.c: In function 'setup_breakpoints': > > syscalls/perf_event_open.c:237: error: 'struct perf_event_attr' has no > > member named 'bp_type' > > you must be using an older distro, as some of these features that are > missing were added to perf_event_open() in 2.6.33. > > the perf_event_open() syscall is a bit annoying as fields get added > pretty regularly so it's hard to write code that's backward compatible at > the API level. > > The authors of the "perf" tool don't care because their code is in the > kernel tree and they always have an up-to-date include file. Other users, > like libpfm4, PAPI, and my various tools have just given up and carry > along our own copy of perf_event.h, which makes things easier in the long run. > > I'm not sure what the trinity policy is here. Is it better to have a > really elaborate config-type interface for this? There's at least 5 or 6 > different versions you'd have to check for to catch all the changes > between 2.6.32 and current. For "we don't care about out of tree compatibility" like this, carrying our own copy of the header sounds like probably the best option. Dave -- To unsubscribe from this list: send the line "unsubscribe trinity" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html