[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190524072726.GD2589@hirez.programming.kicks-ass.net>
Date: Fri, 24 May 2019 09:27:26 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Kris Van Hees <kris.van.hees@...cle.com>
Cc: Alexei Starovoitov <alexei.starovoitov@...il.com>,
netdev@...r.kernel.org, bpf@...r.kernel.org,
dtrace-devel@....oracle.com, linux-kernel@...r.kernel.org,
rostedt@...dmis.org, mhiramat@...nel.org, acme@...nel.org,
ast@...nel.org, daniel@...earbox.net
Subject: Re: [RFC PATCH 00/11] bpf, trace, dtrace: DTrace BPF program type
implementation and sample use
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.
Powered by blists - more mailing lists