Re: using SDT events

From: Masami Hiramatsu
Date: Tue Sep 27 2016 - 14:41:56 EST


On Tue, 27 Sep 2016 10:55:38 -0300
Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:

> Masami,
>
> Testing something else (event aliases/JSON) I saw the many sdt
> events available via 'perf list', decided to use the usual workflow,
> failed, what am I doing wrong?

No, that is not supported yet. So I dropped perf-list support from
the latest series...

https://lkml.org/lkml/2016/7/1/133

The unresolved problems are
- how we treat sdt events after recorded? remove or leave it as tracepoint?
- what should be done if we found the tracepoint which has same name of the
SDT. (we can not reserve tracepoint name beforehand)
- Sometimes SDT name can be conflict, even on same binary.


>
>
> [root@jouet ~]# perf list sdt_qemu:pci*
>
> List of pre-defined events (to be used in -e):
>
> sdt_qemu:pci_cfg_read [SDT event]
> sdt_qemu:pci_cfg_write [SDT event]
> sdt_qemu:pci_update_mappings_add [SDT event]
> sdt_qemu:pci_update_mappings_del [SDT event]
> [root@jouet ~]# perf record -e sdt_qemu:pci* -a
> event syntax error: 'sdt_qemu:pci*'
> \___ unknown tracepoint
>
> Error: File /sys/kernel/debug/tracing/events/sdt_qemu/pci* not found.
> Hint: Perhaps this kernel misses some CONFIG_ setting to enable this
> feature?.
>
> Run 'perf list' for a list of valid events
>
> Usage: perf record [<options>] [<command>]
> or: perf record [<options>] -- <command> [<options>]
>
> -e, --event <event> event selector. use 'perf list' to list
> available events
> [root@jouet ~]#


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>