Messages in this thread | | | Date | Tue, 23 Sep 2008 14:13:13 -0400 | From | Mathieu Desnoyers <> | Subject | Re: Unified tracing buffer |
| |
* Peter Zijlstra (a.p.zijlstra@chello.nl) wrote: > On Tue, 2008-09-23 at 00:25 -0500, Tom Zanussi wrote: > > > - get rid of anything having to do with padding, nobody needs it and its > > only affect has been to horribly distort and complicate a lot of the > > code > > - get rid of sub-buffers, they just cause confusion > > - get rid of mmap, nobody uses it > > - no sub-buffers and no mmap support means we can get rid of most of the > > callbacks, and a lot of API confusion along with them > > - add relay flags - they probably should have been used from the > > beginning and options made explicit instead of being shoehorned into the > > callback functions. > > - get rid of the vmap buffers as they cause tlb pressure and eat up > precious vspace on 32 bit platforms. >
Although I agree on the basic idea, namely to use a sane amount of TLB entries for tracing, I disagree on the way proposed to reach this goal. Such memory management concerns belong to the mm field and should not be done "oh so cleverly" by a buffer management infrastructure in the back of the kernel memory management infrastructure.
I think we should instead try to figure out what is currently missing in the kernel vmap mechanism (probably the ability to vmap from large 4MB pages after boot), and fix _that_ instead (if possible), which would not only benefit to tracing, but also to module support.
Also, I would like to keep a contiguous address mapping within buffers so we could keep the buffer read/write code as simple as possible, leveraging the existing CPU MM unit.
I added Christoph Lameter to the CC list, he always comes with clever ideas. :)
Mathieu
-- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
| |