2 Mathieu Desnoyers -- September 2005
4 The 'genevent' program parses event descriptions and generates
5 the inline functions to record events in the kernel.
7 Right now, the program can only parse simple structure, if a
8 structure has a nested structure, it will not work.
10 Genevent will soon go through a rewrite, but for now, the strings should be put
11 *** AT THE END *** of a structure : they will be put there anyways.
13 There are several files in the directory:
14 genevent.c, genevent.h, crc32.tab, parser.c and parser.h
16 In fact, crc32.tab, parser.c and parser.h are the same files as
19 'core.xml' is an example event description file.
21 Here is a brief description of how to use genevent.
27 * Add new events to the kernel with genevent
30 cd /usr/local/share/LinuxTraceToolkitViewer/facilities
31 cp process.xml yourfacility.xml
32 * edit yourfacility.xml to fit your needs.
34 /usr/local/bin/genevent /usr/local/share/LinuxTraceToolkitViewer/yourfacility.xml
35 cp ltt-facility-yourfacility.h ltt-facility-id-yourfacility.h \
36 /usr/src/linux-2.6.12-rc4-mm2-lttng-0.2/include/linux/ltt
37 cp ltt-facility-loader-yourfacility.c ltt-facility-loader-yourfacility.h \
38 /usr/src/linux-2.6.12-rc4-mm2-lttng-0.2/ltt
39 * edit the kernel file you want to instrument
40 - Add #include <linux/ltt/ltt-facility-yourfacility.h> at the beginning
42 - Add a call to the tracing functions. See their names and parameters in
43 /usr/src/linux-2.6.12-rc4-mm2-lttng-0.2/include/linux/ltt/ltt-facility-yourfacility.h