Re: [PATCH 0/2]: Get perf counters working on D-cache aliasingcpus.
From: Ingo Molnar
Date: Tue Sep 08 2009 - 08:36:35 EST
* David Miller <davem@xxxxxxxxxxxxx> wrote:
> With Jen's Axboe's basic sparc counter patch in my tree I started
> playing with it on sparc64. Turns out it won't work on anything
> pre-Niagara.
>
> The issue is D-cache aliasing between the kernel side mapping and
> the user side mapping of the perf event ring buffer.
>
> The following two patches attempt to address this issue and are
> working properly on my test machine.
Oh, great!
The only (small) worry would be that this uses vmalloc space on
32-bit platforms which is generally a scarce resource.
IMHO it's not a big issue as the typical workflow would be to have
just a handful of perf ring-buffers around and most of the
performance work happens in the 64-bit space anyway.
One practical complication is lots of tracepoints and perf trace:
but we can solve that via output buffer multiplexing:
PERF_COUNTER_IOC_SET_OUTPUT - which is implemented in
tip:perfcounters/core but not yet propagated to the tools. That
would be desirable to do anyway, to enable time-coherent trace
entries, etc.
Ingo
--
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/