[DTrace-devel] [RFC PATCH 00/11] bpf, trace, dtrace: DTrace BPF program type implementation and sample use

Peter Zijlstra peterz at infradead.org
Fri May 24 00:27:26 PDT 2019


On Wed, May 22, 2019 at 02:22:15PM -0400, Kris Van Hees wrote:

> > Let me further NAK it for adding all sorts of garbage to the code --
> > we're not going to do gaps and stay_in_page nonsense.
> 
> Could you give some guidance in terms of an alternative?  The ring buffer code
> provides both non-contiguous page allocation support and a vmalloc-based
> allocation, and the vmalloc version certainly would avoid the entire gap and
> page boundary stuff.  But since the allocator is chosen at build time based on
> the arch capabilities, there is no way to select a specific memory allocator.
> I'd be happy to use an alternative approach that allows direct writing into
> the ring buffer.

So why can't you do what the regular perf does? Use an output iterator
that knows about the page breaks? See perf_output_put() for example.

Anyway, I agree with Alexei and DaveM, get it working without/minimal
kernel changes first, and then we can talk about possible optimizations.



More information about the DTrace-devel mailing list