Re: [PATCH 3/5] trace: Add LTTng Userspace Tracer backend

Jan Kiszka
2010-05-23T15:50:32Z

[-- Attachment #1: Type: text/plain, Size: 2002 bytes --]

Stefan Hajnoczi wrote:
> This patch adds LTTng Userspace Tracer (UST) backend support. The UST
> system requires no kernel support but libust and liburcu must be
> installed.
>
> $ ./configure --trace-backend ust
> $ make
>
> Start the UST daemon:
> $ ustd &
>
> List available tracepoints and enable some:
> $ ustctl --list-markers $(pgrep qemu)
> [...]
> {PID: 5458, channel/marker: ust/paio_submit, state: 0, fmt: "acb %p
> opaque %p sector_num %lu nb_sectors %lu type %lu" 0x4b32ba}
> $ ustctl --enable-marker "ust/paio_submit" $(pgrep qemu)
>
> Run the trace:
> $ ustctl --create-trace $(pgrep qemu)
> $ ustctl --start-trace $(pgrep qemu)
> [...]
> $ ustctl --stop-trace $(pgrep qemu)
> $ ustctl --destroy-trace $(pgrep qemu)
>
> Trace results can be viewed using lttv-gui.
>
> More information about UST:
> http://lttng.org/ust
>
> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
> ---
> I wrote this as part of trying out UST. Although UST is promising, the
> usability is poor at the moment.

I was hoping it would be better, but I'm not really surprised.

>
> The dependencies include the lttv trace viewer which I had to build from source
> (and it required a makefile tweak to build). Luckily libust, liburcu, and
> ust-bin are packaged on my distro.
>
> Error messages are periodically printed by the UST code when running QEMU. I
> haven't investigated but this is may be due to signals interrupting UST's
> thread in poll().
>
> Finally, the UST header files include some userspace ported kernel
> infrastructure and pollute the namespace. I had to add some #undefs to get
> QEMU to build after including UST headers.
>
> I don't see LTTng UST as a default option at the moment. Hopefully this will
> change in the future.

Unless you already did, please report this to LTTng. I bet they will be
interested in your feedback and maybe also in the fact that they gained
another use/test case.

Jan

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 257 bytes --]