Messages in this thread | | | Date | Tue, 23 Oct 2012 15:57:26 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH 05/34] perf, x86: Report PEBS event in a raw format |
| |
On Tue, Oct 23, 2012 at 03:50:50PM +0200, Peter Zijlstra wrote: > PERF_SAMPLE_RAW has a u32 size header and starts the data after that. > This means you PERF_SAMPLE_RAW output ends up on a u32 aligned end > address -- assuming the data is a u64 multiple, this is not good. > > > It appears to work at least. > > It would on x86, I'm fairly sure it'll break on things like SPARC. We > used to have checks in the userspace code to warn for this on x86 as > well. Not sure if that's still there.
Ok this is x86 specific code.
> > Hmm, so in kernel/events/core.c:perf_prepare_sample() there's a > WARN_ON_ONCE() in the PERF_SAMPLE_RAW branch that should trigger with > this.
Haven't seen this this warning so far.
If I added padding the perf userland would need to learn about it too, I suspect it would need all the ugly macros like NETLINK. I always hated those.
-Andi -- ak@linux.intel.com -- Speaking for myself only.
| |