[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20081011172502.GA12718@Krystal>
Date: Sat, 11 Oct 2008 13:25:02 -0400
From: Mathieu Desnoyers <compudj@...stal.dyndns.org>
To: ltt-dev@...ts.casi.polymtl.ca
Cc: Michael Rubin <mrubin@...gle.com>,
Peter Zijlstra <peterz@...radead.org>,
linux-kernel@...r.kernel.org, Steven Rostedt <rostedt@...dmis.org>,
Michael Davidson <md@...gle.com>,
Martin Bligh <mbligh@...gle.com>, Ingo Molnar <mingo@...e.hu>,
Jan Blunck <jblunck@...e.de>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [ltt-dev] LTTng new trace format, cleanup, kernel 2.6.27
support
I just released LTTng 0.39 and lttv 0.11.1, trace format 2.1, which
fixes the subbuffer header 32-64 bits portability.
I do not use packed structures anymore since trace format 2.0 because
gcc generates inefficient code (at least on mips and powerpc). However,
I make sure the fields fall on their natural alignment within the
structure so the compiler does not have to add ABI-specific padding. I
also added a header_end[0] field at the end of the header to be able to
easily compute the header size without including any supplementary
padding the compiler would add at the end of the structure.
Mathieu
* Mathieu Desnoyers (compudj@...stal.dyndns.org) wrote:
> Hi everyone,
>
> I just cleaned up the LTTng trace format heavily, got rid of the
> heartbeat timer (by checking for overflow at the tracing site), got rid
> of the "special" compact channel; it removed about 5 FIXMEs in LTTng
> (cpu hotplug and compact channel related). Everything is compact now :
>
> Event header is :
>
> (32-bits alignment)
> 27-bits TSC
> 5-bits event ID
> ID #31 reserved to specify extended event ID
> ID #30 reserved to specify both ext. event ID and event size
> ID #29 reserved to specify ext. event ID, event size and ext. TSC
> <ext.>
> 16-bits event ID (opt)
> 16-bits event size (opt) size = 65535 to specify large event size
> 32-bits large event size (opt)
> 64-bits TSC (opt) (aligned on sizeof (void *))
> (event payload aligned on the maximum alignment required within the
> payload)
>
> This is much more compact than the previous format, and permits a
> "tracer debug mode" in menuconfig which enables the "event size" field,
> which helps cross-checking the size expected by the userspace tool and
> the size written by the kernel.
>
> Note that this "event size" field can eventually be enabled on a
> per-event or per-channel basis. This will probably be useful to encode
> "binary blobs"...
>
> I also cleanup up the subbuffer header to make is much smaller than the
> previous one by removing unneeded information.
>
> I renamed the "facilities" channel to a better name : "metadata". It
> contains marker descriptions.
>
> The trace major number is bumped to "2" and is completely incompatible
> with old LTTV. New version are LTTng 0.38 (for Linux 2.6.27) and LTTV
> 0.11.0.
>
> Testing especially taking traces and reading them across different
> architectures is welcome (e.g. trace taken on powerpc 32, lttv running
> on x86_64).
>
> Mathieu
>
>
> --
> Mathieu Desnoyers
> OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
>
> _______________________________________________
> ltt-dev mailing list
> ltt-dev@...ts.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
>
--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists