[lttng-dev] make a trace_event in a module (driver)

Thibault, Daniel Daniel.Thibault at drdc-rddc.gc.ca
Mon Nov 25 14:22:44 EST 2013


> Date: Mon, 25 Nov 2013 12:00:14 -0500
> From: J?r?mie Galarneau <jeremie.galarneau at efficios.com>

>>    Aha!  There is one crucial mistake in the ibm.com document: he installs the packages in the wrong order.  lttng-tools must be installed AFTER lttng-modules and lttng-ust.  lttng-modules can be installed before, during or after lttng-ust, but userspace-rcu must be installed before lttng-ust.
>>    The problem is that the configure of lttng-tools detects the presence or absence of lttng-modules and also detects the presence or absence of lttng-ust, and adjusts to both.  By installing lttng-tools before lttng-modules, you've built an lttng-tools set that CANNOT be used to trace the kernel.
>>
>>    So, try again from scratch, making sure to install lttng-tools last.
>
> lttng-tools checks for kernel modules at run time, not at configure time. You can safely install lttng-modules after lttng-tools and still use kernel tracing.
>
> Regards,
> Jérémie

   Dang, you're right.  The build of lttng-tools reacts to the presence or absence of lttng-ust, but is indifferent to the presence or absence of lttng-modules.  (Only liblttng-ctl.a is different, probably some internal timestamps or some such)

> klaus at ubuntu:~$ sudo lttng -vvv start
> DEBUG2 [2854/2854]: Config file path found: /home/klaus (in get_session_name() at utils.c:57)
> DEBUG1 [2854/2854]: Session name found: auto-20131124-091639 (in get_session_name() at utils.c:58)
> DEBUG1 [2854/2854]: Starting tracing for session auto-20131124-091639 (in start_tracing() at commands/start.c:81)
> DEBUG1 [2854/2854]: LSM cmd type : 16 (in send_session_msg() at lttng-ctl.c:131)
> 'ctrl c'
> klaus at ubuntu:~$

   Let's try to identify the module responsible.  First, make sure lttng-sessiond is NOT running.  Then, do this in one shell:

$ sudo -H lttng-sessiond -vvv

   It should fail after loading one of the modules.

   You can also try:

$ sudo -H lttng-sessiond -vvv --no-kernel

   In which case you should be able to do any lttng command except those involving the kernel.  For example, 'lttng list -u'.

Daniel U. Thibault
Protection des systèmes et contremesures (PSC) | Systems Protection & Countermeasures (SPC)
Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS)
R & D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence R&D Canada - Valcartier (DRDC Valcartier)
2459 route de la Bravoure
Québec QC  G3J 1X5
CANADA
Vox : (418) 844-4000 x4245
Fax : (418) 844-4538
NAC : 918V QSDJ <http://www.travelgis.com/map.asp?addr=918V%20QSDJ>
Gouvernement du Canada | Government of Canada
<http://www.valcartier.drdc-rddc.gc.ca/>



More information about the lttng-dev mailing list