[lttng-dev] Odd behaviour of lttng 2.0 kernel event listing

David Goulet david.goulet at polymtl.ca
Wed Jan 18 12:35:42 EST 2012


Hi Daniel,

I just pushed a fix with the auto spawned session daemon but not related 
to your problem.

Is it possible for you to test with the latest git head of lttng-tools 
because since the commit 9beed4c there is a large number of fixes!

The session daemon sends a signal to the parent (here lttng client) when 
it is ready to process commands. So, the module are loaded for sure at 
this time.

I'm unable to reproduce your problem... so what I can recommend is to 
report *any* compilation error with the latest git head you have and 
I'll see if it's related to your problem. You might want to check also 
if all lttng-modules are unloaded when NO session daemon is running (# 
lsmod | grep ltt).

Also, with lttng-tools commit bcfa8a05018b339b9b5609fe975a3a7b29cc0c6e, 
using --help/-h with any lttng commands does NOT spawned the session 
daemon anymore.

Please let me know if you are still having the problem with those 
recommendations.

Cheers!
David

On 12-01-18 11:28 AM, Thibault, Daniel wrote:
>     When the lttng-sessiond daemon is first spawned to process a 'list -k' command, some of the kernel events are given as anonymous.  Repeating the request a second time obtains the kernel event names correctly.  This is repeatable, in the sense that it always occurs and the anonymised kernel events are always the same ones.  Clearly, something is amiss.
>
>     If the lttng-sessiond daemon is spawned to process some other command first (e.g. 'sudo lttng list -h'), a later 'list -k' command also lists the kernel event names correctly.  Could the daemon be answering the request before it has finished initialising its modules?  Or maybe the problem is with the initialisation of individual modules?
>
>     Here is a sample session:
>
> $ sudo lttng list -k
> Spawning a session daemon
> Kernel events:
> -------------
>        sched_kthread_stop (type: tracepoint)
>        sched_kthread_stop_ret (type: tracepoint)
>        sched_wakeup (type: tracepoint)
>        sched_wakeup_new (type: tracepoint)
>        sched_switch (type: tracepoint)
>        sched_migrate_task (type: tracepoint)
>        sched_process_free (type: tracepoint)
>        sched_process_exit (type: tracepoint)
>        sched_wait_task (type: tracepoint)
>        sched_process_wait (type: tracepoint)
>        sched_process_fork (type: tracepoint)
>        sched_stat_wait (type: tracepoint)
>        sched_stat_sleep (type: tracepoint)
>        sched_stat_iowait (type: tracepoint)
>        sched_stat_runtime (type: tracepoint)
>        sched_pi_setprio (type: tracepoint)
>        kvm_userspace_exit (type: tracepoint)
>        kvm_set_irq (type: tracepoint)
>        kvm_ioapic_set_irq (type: tracepoint)
>        kvm_msi_set_irq (type: tracepoint)
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>         (type: tracepoint) [disabled]
>
> $ sudo lttng list -k
> Kernel events:
> -------------
>        sched_kthread_stop (type: tracepoint)
>        sched_kthread_stop_ret (type: tracepoint)
>        sched_wakeup (type: tracepoint)
>        sched_wakeup_new (type: tracepoint)
>        sched_switch (type: tracepoint)
>        sched_migrate_task (type: tracepoint)
>        sched_process_free (type: tracepoint)
>        sched_process_exit (type: tracepoint)
>        sched_wait_task (type: tracepoint)
>        sched_process_wait (type: tracepoint)
>        sched_process_fork (type: tracepoint)
>        sched_stat_wait (type: tracepoint)
>        sched_stat_sleep (type: tracepoint)
>        sched_stat_iowait (type: tracepoint)
>        sched_stat_runtime (type: tracepoint)
>        sched_pi_setprio (type: tracepoint)
>        kvm_userspace_exit (type: tracepoint)
>        kvm_set_irq (type: tracepoint)
>        kvm_ioapic_set_irq (type: tracepoint)
>        kvm_msi_set_irq (type: tracepoint)
>        kvm_ack_irq (type: tracepoint)
>        kvm_mmio (type: tracepoint)
>        kvm_fpu (type: tracepoint)
>        kvm_age_page (type: tracepoint)
>        kvm_try_async_get_page (type: tracepoint)
>        kvm_async_pf_doublefault (type: tracepoint)
>        kvm_async_pf_not_present (type: tracepoint)
>        kvm_async_pf_ready (type: tracepoint)
>        kvm_async_pf_completed (type: tracepoint)
>        irq_handler_entry (type: tracepoint)
>        irq_handler_exit (type: tracepoint)
>        softirq_entry (type: tracepoint)
>        softirq_exit (type: tracepoint)
>        softirq_raise (type: tracepoint)
>        block_rq_abort (type: tracepoint)
>        block_rq_requeue (type: tracepoint)
>        block_rq_complete (type: tracepoint)
>        block_rq_insert (type: tracepoint)
>        block_rq_issue (type: tracepoint)
>        block_bio_bounce (type: tracepoint)
>        block_bio_complete (type: tracepoint)
>        block_bio_backmerge (type: tracepoint)
>        block_bio_frontmerge (type: tracepoint)
>        block_bio_queue (type: tracepoint)
>        block_getrq (type: tracepoint)
>        block_sleeprq (type: tracepoint)
>        block_plug (type: tracepoint)
>        block_unplug (type: tracepoint)
>        block_split (type: tracepoint)
>        block_bio_remap (type: tracepoint)
>        block_rq_remap (type: tracepoint)
>
>     I am using Ubuntu 10.10 with 2.6.38 kernel and the following lttng 2.0 packages:
> (git.lttng.org)
> liburcu	userspace-rcu-0.6.7+-fe0707a
> lttng-ust	lttng-ust-1.9.4+-eeee05f
> lttng-tools	lttng-tools-2.0-pre16+-9beed4c
> lttng-modules	lttng-modules-2.0-pre11-4d3e89e
> (git.efficios.com)
> babeltrace	babeltrace-0.7+-6f3077a
>
>     Note that lttng-tools-2.0-pre16+-9beed4c is not the latest (2012-01-13 21:18); I had to use it because earlier and later versions both fail to compile:
>
> lttng-tools-2.0-pre16-032b4c3 (2011-12-23 16:19):
>     ust-app.c: In function 'create_ust_channel'
>     ust-app.c:618: error: 'struct lttng_ust_channel' has no member named 'shm_fd'
>     ust-app.c:619: error: 'struct lttng_ust_channel' has no member named 'wait_fd'
>     ust-app.c:620: error: 'struct lttng_ust_channel' has no member named 'memory_map_size'
>
> lttng-tools-2.0-pre16+-8dd3235 (2012-01-16 18:12):
>     No rule to make target `test_ust_data_trace.o'...
>
> Daniel U. Thibault
> R&  D pour la défense Canada - Valcartier (RDDC Valcartier) / Defence R&D Canada - Valcartier (DRDC Valcartier)
> Système de systèmes (SdS) / System of Systems (SoS)
> Solutions informatiques et expérimentations (SIE) / Computing Solutions and Experimentations (CSE)
> 2459 Boul. Pie XI Nord
> Québec, QC  G3J 1X5
> CANADA
> Vox : (418) 844-4000 x4245
> Fax : (418) 844-4538
> NAC: 918V QSDJ
> Gouvernement du Canada / Government of Canada
> <http://www.valcartier.drdc-rddc.gc.ca/>
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
>

-- 
David Goulet
LTTng project, École Polytechnique de Montréal



More information about the lttng-dev mailing list