Re: [PATCH v2] perf doc: Document ring buffer mechanism
From: Arnaldo Carvalho de Melo
Date: Thu Aug 03 2023 - 16:53:57 EST
Em Fri, Aug 04, 2023 at 12:56:36AM +0800, Leo Yan escreveu:
> Hi Jon,
>
> On Thu, Aug 03, 2023 at 08:34:50AM -0600, Jonathan Corbet wrote:
> > Leo Yan <leo.yan@xxxxxxxxxx> writes:
> >
> > > In the Linux perf tool, the ring buffer serves not only as a medium for
> > > transferring PMU event data but also as a vital mechanism for hardware
> > > tracing using technologies like Intel PT and Arm CoreSight, etc.
> > >
> > > Consequently, the ring buffer mechanism plays a crucial role by ensuring
> > > high throughput for data transfer between the kernel and user space
> > > while avoiding excessive overhead caused by the ring buffer itself.
> > >
> > > This commit documents the ring buffer mechanism in detail. It provides
> > > an in-depth explanation of the implementation of both the generic ring
> > > buffer and the AUX ring buffer. Additionally, it covers how these ring
> > > buffers support various tracing modes and explains the synchronization
> > > with memory barriers.
> > >
> > > Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
> > > ---
> >
> > So this seems like good material from a very brief scan. I do have to
> > ask, though: why is it not in RST, and why not put it into the
> > user-space API book?
>
> This documentation is Perf related topic, so my instinct is to place
> it into the folder tools/perf/Documentation/.
>
> Strictly to say, the doc doesn't give formal introduction for the
> user-space APIs. Given perf ring buffer is a mechanism for exchanging
> data between the kernel and user space, I am open for placing it in the
> folder Documentation/userspace-api/.
>
> I would like get opinions from the perf maintainers if possible, if we
> have agreenment I am glad to convert it to RST format.
Yeah, I agree with Jon.
- Arnaldo