Actions
Bug #942
closedListing a session's kernel events after enabling a syscall does not produce the same output before/after tracing is started.
Start date:
09/29/2015
Due date:
% Done:
0%
Estimated time:
Description
Listing a session's kernel events after enabling a syscall does not produce the same output before/after tracing is started.
Before start
$ lttng create test Session test created. Traces will be written in /home/jgalar/lttng-traces/test-20150929-124236 $ lttng enable-event --kernel --syscall --all All Kernel system calls are enabled in channel channel0 $ lttng list test Tracing session test: [inactive] Trace path: /home/jgalar/lttng-traces/test-20150929-124236 === Domain: Kernel === Channels: ------------- - channel0: [enabled] Attributes: overwrite mode: 0 subbufers size: 262144 number of subbufers: 4 switch timer interval: 0 read timer interval: 200000 trace file count: 0 trace file size (bytes): 0 output: splice() Events: * (type:syscall) [enabled]
After start
$ lttng start Tracing started for session test $ lttng list test Tracing session test: [active] Trace path: /home/jgalar/lttng-traces/test-20150929-124236 === Domain: Kernel === Channels: ------------- - channel0: [enabled] Attributes: overwrite mode: 0 subbufers size: 262144 number of subbufers: 4 switch timer interval: 0 read timer interval: 200000 trace file count: 0 trace file size (bytes): 0 output: splice() Events: * (type:syscall) [enabled] read (type:syscall) [enabled] [32/64-bit] write (type:syscall) [enabled] [32/64-bit] open (type:syscall) [enabled] [32/64-bit] close (type:syscall) [enabled] [32/64-bit] newstat (type:syscall) [enabled] [32/64-bit] newfstat (type:syscall) [enabled] [32/64-bit] newlstat (type:syscall) [enabled] [32/64-bit] poll (type:syscall) [enabled] [32/64-bit] lseek (type:syscall) [enabled] [32/64-bit] mmap (type:syscall) [enabled] [64-bit] mprotect (type:syscall) [enabled] [32/64-bit] munmap (type:syscall) [enabled] [32/64-bit] brk (type:syscall) [enabled] [32/64-bit] rt_sigaction (type:syscall) [enabled] [32/64-bit] rt_sigprocmask (type:syscall) [enabled] [32/64-bit] ioctl (type:syscall) [enabled] [32/64-bit] pread64 (type:syscall) [enabled] [64-bit] pwrite64 (type:syscall) [enabled] [64-bit] readv (type:syscall) [enabled] [32/64-bit] writev (type:syscall) [enabled] [32/64-bit] access (type:syscall) [enabled] [32/64-bit] pipe (type:syscall) [enabled] [32/64-bit] select (type:syscall) [enabled] [32/64-bit] sched_yield (type:syscall) [enabled] [32/64-bit] mremap (type:syscall) [enabled] [32/64-bit] msync (type:syscall) [enabled] [32/64-bit] mincore (type:syscall) [enabled] [32/64-bit] madvise (type:syscall) [enabled] [32/64-bit] shmget (type:syscall) [enabled] [64-bit] shmat (type:syscall) [enabled] [64-bit] shmctl (type:syscall) [enabled] [64-bit] dup (type:syscall) [enabled] [32/64-bit] dup2 (type:syscall) [enabled] [32/64-bit] pause (type:syscall) [enabled] [32/64-bit] nanosleep (type:syscall) [enabled] [32/64-bit] getitimer (type:syscall) [enabled] [32/64-bit] alarm (type:syscall) [enabled] [32/64-bit] setitimer (type:syscall) [enabled] [32/64-bit] getpid (type:syscall) [enabled] [32/64-bit] sendfile64 (type:syscall) [enabled] [32/64-bit] socket (type:syscall) [enabled] [64-bit] connect (type:syscall) [enabled] [64-bit] accept (type:syscall) [enabled] [64-bit] sendto (type:syscall) [enabled] [64-bit] recvfrom (type:syscall) [enabled] [64-bit] sendmsg (type:syscall) [enabled] [64-bit] recvmsg (type:syscall) [enabled] [64-bit] shutdown (type:syscall) [enabled] [64-bit] bind (type:syscall) [enabled] [64-bit] listen (type:syscall) [enabled] [64-bit] getsockname (type:syscall) [enabled] [64-bit] getpeername (type:syscall) [enabled] [64-bit] socketpair (type:syscall) [enabled] [64-bit] setsockopt (type:syscall) [enabled] [64-bit] getsockopt (type:syscall) [enabled] [64-bit] clone (type:syscall) [enabled] [32/64-bit] execve (type:syscall) [enabled] [32/64-bit] exit (type:syscall) [enabled] [32/64-bit] wait4 (type:syscall) [enabled] [32/64-bit] kill (type:syscall) [enabled] [32/64-bit] newuname (type:syscall) [enabled] [32/64-bit] semget (type:syscall) [enabled] [64-bit] semop (type:syscall) [enabled] [64-bit] semctl (type:syscall) [enabled] [64-bit] shmdt (type:syscall) [enabled] [64-bit] msgget (type:syscall) [enabled] [64-bit] msgsnd (type:syscall) [enabled] [64-bit] msgrcv (type:syscall) [enabled] [64-bit] msgctl (type:syscall) [enabled] [64-bit] fcntl (type:syscall) [enabled] [32/64-bit] flock (type:syscall) [enabled] [32/64-bit] fsync (type:syscall) [enabled] [32/64-bit] fdatasync (type:syscall) [enabled] [32/64-bit] truncate (type:syscall) [enabled] [32/64-bit] ftruncate (type:syscall) [enabled] [32/64-bit] getdents (type:syscall) [enabled] [32/64-bit] getcwd (type:syscall) [enabled] [32/64-bit] chdir (type:syscall) [enabled] [32/64-bit] fchdir (type:syscall) [enabled] [32/64-bit] rename (type:syscall) [enabled] [32/64-bit] mkdir (type:syscall) [enabled] [32/64-bit] rmdir (type:syscall) [enabled] [32/64-bit] creat (type:syscall) [enabled] [32/64-bit] link (type:syscall) [enabled] [32/64-bit] unlink (type:syscall) [enabled] [32/64-bit] symlink (type:syscall) [enabled] [32/64-bit] readlink (type:syscall) [enabled] [32/64-bit] chmod (type:syscall) [enabled] [32/64-bit] fchmod (type:syscall) [enabled] [32/64-bit] chown (type:syscall) [enabled] [32/64-bit] fchown (type:syscall) [enabled] [32/64-bit] lchown (type:syscall) [enabled] [32/64-bit] umask (type:syscall) [enabled] [32/64-bit] gettimeofday (type:syscall) [enabled] [32/64-bit] getrlimit (type:syscall) [enabled] [32/64-bit] getrusage (type:syscall) [enabled] [32/64-bit] sysinfo (type:syscall) [enabled] [32/64-bit] times (type:syscall) [enabled] [32/64-bit] ptrace (type:syscall) [enabled] [32/64-bit] getuid (type:syscall) [enabled] [32/64-bit] syslog (type:syscall) [enabled] [32/64-bit] getgid (type:syscall) [enabled] [32/64-bit] setuid (type:syscall) [enabled] [32/64-bit] setgid (type:syscall) [enabled] [32/64-bit] geteuid (type:syscall) [enabled] [32/64-bit] getegid (type:syscall) [enabled] [32/64-bit] setpgid (type:syscall) [enabled] [32/64-bit] getppid (type:syscall) [enabled] [32/64-bit] getpgrp (type:syscall) [enabled] [32/64-bit] setsid (type:syscall) [enabled] [32/64-bit] setreuid (type:syscall) [enabled] [32/64-bit] setregid (type:syscall) [enabled] [32/64-bit] getgroups (type:syscall) [enabled] [32/64-bit] setgroups (type:syscall) [enabled] [32/64-bit] setresuid (type:syscall) [enabled] [32/64-bit] getresuid (type:syscall) [enabled] [32/64-bit] setresgid (type:syscall) [enabled] [32/64-bit] getresgid (type:syscall) [enabled] [32/64-bit] getpgid (type:syscall) [enabled] [32/64-bit] setfsuid (type:syscall) [enabled] [32/64-bit] setfsgid (type:syscall) [enabled] [32/64-bit] getsid (type:syscall) [enabled] [32/64-bit] rt_sigpending (type:syscall) [enabled] [32/64-bit] rt_sigtimedwait (type:syscall) [enabled] [32/64-bit] rt_sigqueueinfo (type:syscall) [enabled] [32/64-bit] rt_sigsuspend (type:syscall) [enabled] [32/64-bit] sigaltstack (type:syscall) [enabled] [64-bit] utime (type:syscall) [enabled] [32/64-bit] mknod (type:syscall) [enabled] [32/64-bit] personality (type:syscall) [enabled] [32/64-bit] ustat (type:syscall) [enabled] [32/64-bit] statfs (type:syscall) [enabled] [32/64-bit] fstatfs (type:syscall) [enabled] [32/64-bit] sysfs (type:syscall) [enabled] [32/64-bit] getpriority (type:syscall) [enabled] [32/64-bit] setpriority (type:syscall) [enabled] [32/64-bit] sched_setparam (type:syscall) [enabled] [32/64-bit] sched_getparam (type:syscall) [enabled] [32/64-bit] sched_setscheduler (type:syscall) [enabled] [32/64-bit] sched_getscheduler (type:syscall) [enabled] [32/64-bit] sched_get_priority_max (type:syscall) [enabled] [32/64-bit] sched_get_priority_min (type:syscall) [enabled] [32/64-bit] sched_rr_get_interval (type:syscall) [enabled] [32/64-bit] mlock (type:syscall) [enabled] [32/64-bit] munlock (type:syscall) [enabled] [32/64-bit] mlockall (type:syscall) [enabled] [32/64-bit] munlockall (type:syscall) [enabled] [32/64-bit] vhangup (type:syscall) [enabled] [32/64-bit] pivot_root (type:syscall) [enabled] [32/64-bit] sysctl (type:syscall) [enabled] [32/64-bit] prctl (type:syscall) [enabled] [32/64-bit] adjtimex (type:syscall) [enabled] [32/64-bit] setrlimit (type:syscall) [enabled] [32/64-bit] chroot (type:syscall) [enabled] [32/64-bit] sync (type:syscall) [enabled] [32/64-bit] acct (type:syscall) [enabled] [32/64-bit] settimeofday (type:syscall) [enabled] [32/64-bit] mount (type:syscall) [enabled] [32/64-bit] umount (type:syscall) [enabled] [32/64-bit] swapon (type:syscall) [enabled] [32/64-bit] swapoff (type:syscall) [enabled] [32/64-bit] reboot (type:syscall) [enabled] [32/64-bit] sethostname (type:syscall) [enabled] [32/64-bit] setdomainname (type:syscall) [enabled] [32/64-bit] init_module (type:syscall) [enabled] [32/64-bit] delete_module (type:syscall) [enabled] [32/64-bit] quotactl (type:syscall) [enabled] [32/64-bit] gettid (type:syscall) [enabled] [32/64-bit] readahead (type:syscall) [enabled] [64-bit] setxattr (type:syscall) [enabled] [32/64-bit] lsetxattr (type:syscall) [enabled] [32/64-bit] fsetxattr (type:syscall) [enabled] [32/64-bit] getxattr (type:syscall) [enabled] [32/64-bit] lgetxattr (type:syscall) [enabled] [32/64-bit] fgetxattr (type:syscall) [enabled] [32/64-bit] listxattr (type:syscall) [enabled] [32/64-bit] llistxattr (type:syscall) [enabled] [32/64-bit] flistxattr (type:syscall) [enabled] [32/64-bit] removexattr (type:syscall) [enabled] [32/64-bit] lremovexattr (type:syscall) [enabled] [32/64-bit] fremovexattr (type:syscall) [enabled] [32/64-bit] tkill (type:syscall) [enabled] [32/64-bit] time (type:syscall) [enabled] [32/64-bit] futex (type:syscall) [enabled] [32/64-bit] sched_setaffinity (type:syscall) [enabled] [32/64-bit] sched_getaffinity (type:syscall) [enabled] [32/64-bit] io_setup (type:syscall) [enabled] [32/64-bit] io_destroy (type:syscall) [enabled] [32/64-bit] io_getevents (type:syscall) [enabled] [32/64-bit] io_submit (type:syscall) [enabled] [32/64-bit] io_cancel (type:syscall) [enabled] [32/64-bit] lookup_dcookie (type:syscall) [enabled] [64-bit] epoll_create (type:syscall) [enabled] [32/64-bit] remap_file_pages (type:syscall) [enabled] [32/64-bit] getdents64 (type:syscall) [enabled] [32/64-bit] set_tid_address (type:syscall) [enabled] [32/64-bit] restart_syscall (type:syscall) [enabled] [32/64-bit] semtimedop (type:syscall) [enabled] [64-bit] fadvise64 (type:syscall) [enabled] [64-bit] timer_create (type:syscall) [enabled] [32/64-bit] timer_settime (type:syscall) [enabled] [32/64-bit] timer_gettime (type:syscall) [enabled] [32/64-bit] timer_getoverrun (type:syscall) [enabled] [32/64-bit] timer_delete (type:syscall) [enabled] [32/64-bit] clock_settime (type:syscall) [enabled] [32/64-bit] clock_gettime (type:syscall) [enabled] [32/64-bit] clock_getres (type:syscall) [enabled] [32/64-bit] clock_nanosleep (type:syscall) [enabled] [32/64-bit] exit_group (type:syscall) [enabled] [32/64-bit] epoll_wait (type:syscall) [enabled] [32/64-bit] epoll_ctl (type:syscall) [enabled] [32/64-bit] tgkill (type:syscall) [enabled] [32/64-bit] utimes (type:syscall) [enabled] [32/64-bit] mbind (type:syscall) [enabled] [64-bit] set_mempolicy (type:syscall) [enabled] [64-bit] get_mempolicy (type:syscall) [enabled] [64-bit] mq_open (type:syscall) [enabled] [32/64-bit] mq_unlink (type:syscall) [enabled] [32/64-bit] mq_timedsend (type:syscall) [enabled] [32/64-bit] mq_timedreceive (type:syscall) [enabled] [32/64-bit] mq_notify (type:syscall) [enabled] [32/64-bit] mq_getsetattr (type:syscall) [enabled] [32/64-bit] kexec_load (type:syscall) [enabled] [32/64-bit] waitid (type:syscall) [enabled] [32/64-bit] add_key (type:syscall) [enabled] [32/64-bit] request_key (type:syscall) [enabled] [32/64-bit] keyctl (type:syscall) [enabled] [32/64-bit] ioprio_set (type:syscall) [enabled] [32/64-bit] ioprio_get (type:syscall) [enabled] [32/64-bit] inotify_init (type:syscall) [enabled] [32/64-bit] inotify_add_watch (type:syscall) [enabled] [32/64-bit] inotify_rm_watch (type:syscall) [enabled] [32/64-bit] migrate_pages (type:syscall) [enabled] [64-bit] openat (type:syscall) [enabled] [32/64-bit] mkdirat (type:syscall) [enabled] [32/64-bit] mknodat (type:syscall) [enabled] [32/64-bit] fchownat (type:syscall) [enabled] [32/64-bit] futimesat (type:syscall) [enabled] [32/64-bit] newfstatat (type:syscall) [enabled] [64-bit] unlinkat (type:syscall) [enabled] [32/64-bit] renameat (type:syscall) [enabled] [32/64-bit] linkat (type:syscall) [enabled] [32/64-bit] symlinkat (type:syscall) [enabled] [32/64-bit] readlinkat (type:syscall) [enabled] [32/64-bit] fchmodat (type:syscall) [enabled] [32/64-bit] faccessat (type:syscall) [enabled] [32/64-bit] pselect6 (type:syscall) [enabled] [32/64-bit] ppoll (type:syscall) [enabled] [32/64-bit] unshare (type:syscall) [enabled] [32/64-bit] set_robust_list (type:syscall) [enabled] [32/64-bit] get_robust_list (type:syscall) [enabled] [32/64-bit] splice (type:syscall) [enabled] [32/64-bit] tee (type:syscall) [enabled] [32/64-bit] sync_file_range (type:syscall) [enabled] [64-bit] vmsplice (type:syscall) [enabled] [32/64-bit] move_pages (type:syscall) [enabled] [64-bit] utimensat (type:syscall) [enabled] [32/64-bit] epoll_pwait (type:syscall) [enabled] [32/64-bit] signalfd (type:syscall) [enabled] [32/64-bit] timerfd_create (type:syscall) [enabled] [32/64-bit] eventfd (type:syscall) [enabled] [32/64-bit] fallocate (type:syscall) [enabled] [64-bit] timerfd_settime (type:syscall) [enabled] [32/64-bit] timerfd_gettime (type:syscall) [enabled] [32/64-bit] accept4 (type:syscall) [enabled] [64-bit] signalfd4 (type:syscall) [enabled] [32/64-bit] eventfd2 (type:syscall) [enabled] [32/64-bit] epoll_create1 (type:syscall) [enabled] [32/64-bit] dup3 (type:syscall) [enabled] [32/64-bit] pipe2 (type:syscall) [enabled] [32/64-bit] inotify_init1 (type:syscall) [enabled] [32/64-bit] preadv (type:syscall) [enabled] [32/64-bit] pwritev (type:syscall) [enabled] [32/64-bit] rt_tgsigqueueinfo (type:syscall) [enabled] [32/64-bit] perf_event_open (type:syscall) [enabled] [32/64-bit] recvmmsg (type:syscall) [enabled] [32/64-bit] fanotify_init (type:syscall) [enabled] [32/64-bit] fanotify_mark (type:syscall) [enabled] [64-bit] prlimit64 (type:syscall) [enabled] [32/64-bit] name_to_handle_at (type:syscall) [enabled] [64-bit] open_by_handle_at (type:syscall) [enabled] [64-bit] clock_adjtime (type:syscall) [enabled] [32/64-bit] syncfs (type:syscall) [enabled] [32/64-bit] sendmmsg (type:syscall) [enabled] [32/64-bit] setns (type:syscall) [enabled] [32/64-bit] getcpu (type:syscall) [enabled] [32/64-bit] process_vm_readv (type:syscall) [enabled] [64-bit] process_vm_writev (type:syscall) [enabled] [64-bit] finit_module (type:syscall) [enabled] [64-bit] waitpid (type:syscall) [enabled] [32-bit] lchown16 (type:syscall) [enabled] [32-bit] stat (type:syscall) [enabled] [32-bit] oldumount (type:syscall) [enabled] [32-bit] setuid16 (type:syscall) [enabled] [32-bit] getuid16 (type:syscall) [enabled] [32-bit] stime (type:syscall) [enabled] [32-bit] fstat (type:syscall) [enabled] [32-bit] nice (type:syscall) [enabled] [32-bit] setgid16 (type:syscall) [enabled] [32-bit] getgid16 (type:syscall) [enabled] [32-bit] signal (type:syscall) [enabled] [32-bit] geteuid16 (type:syscall) [enabled] [32-bit] getegid16 (type:syscall) [enabled] [32-bit] olduname (type:syscall) [enabled] [32-bit] sgetmask (type:syscall) [enabled] [32-bit] ssetmask (type:syscall) [enabled] [32-bit] setreuid16 (type:syscall) [enabled] [32-bit] setregid16 (type:syscall) [enabled] [32-bit] sigpending (type:syscall) [enabled] [32-bit] old_getrlimit (type:syscall) [enabled] [32-bit] getgroups16 (type:syscall) [enabled] [32-bit] setgroups16 (type:syscall) [enabled] [32-bit] old_select (type:syscall) [enabled] [32-bit] lstat (type:syscall) [enabled] [32-bit] uselib (type:syscall) [enabled] [32-bit] old_readdir (type:syscall) [enabled] [32-bit] old_mmap (type:syscall) [enabled] [32-bit] fchown16 (type:syscall) [enabled] [32-bit] socketcall (type:syscall) [enabled] [32-bit] uname (type:syscall) [enabled] [32-bit] ipc (type:syscall) [enabled] [32-bit] sigprocmask (type:syscall) [enabled] [32-bit] bdflush (type:syscall) [enabled] [32-bit] setfsuid16 (type:syscall) [enabled] [32-bit] setfsgid16 (type:syscall) [enabled] [32-bit] llseek (type:syscall) [enabled] [32-bit] setresuid16 (type:syscall) [enabled] [32-bit] getresuid16 (type:syscall) [enabled] [32-bit] setresgid16 (type:syscall) [enabled] [32-bit] getresgid16 (type:syscall) [enabled] [32-bit] chown16 (type:syscall) [enabled] [32-bit] sendfile (type:syscall) [enabled] [32-bit] mmap_pgoff (type:syscall) [enabled] [32-bit] stat64 (type:syscall) [enabled] [32-bit] lstat64 (type:syscall) [enabled] [32-bit] fstat64 (type:syscall) [enabled] [32-bit] fcntl64 (type:syscall) [enabled] [32-bit] statfs64 (type:syscall) [enabled] [32-bit] fstatfs64 (type:syscall) [enabled] [32-bit] fstatat64 (type:syscall) [enabled] [32-bit]
Updated by Jérémie Galarneau about 9 years ago
$ uname -a Linux XThink 4.1.6-1-ARCH #1 SMP PREEMPT Mon Aug 17 08:52:28 CEST 2015 x86_64 GNU/Linux lttng-modules master @ 0112cb7
Updated by Mathieu Desnoyers over 8 years ago
- Project changed from LTTng-modules to LTTng-tools
- Target version set to 2.7
This appears to be an issue in the LTTng Tools command line interface (list.c).
Updated by Jérémie Galarneau over 8 years ago
- Status changed from New to Feedback
- Assignee set to Mathieu Desnoyers
Appears to be fixed in master, but it is not clear when the fix was introduced.
I seem to remember that lttng-modules was listing tracepoints rather than enablers. Mathieu, does it ring a bell?
(assigning to get feedback)
Updated by Mathieu Desnoyers over 8 years ago
I don't think it was caused by lttng-modules. I would think the following tools commits are responsible for fixing this (they appear in stable-2.7 too):
commit 9897fbc95aea23f996b7543d86363a3dd72a0c53 Author: Jérémie Galarneau <jeremie.galarneau@efficios.com> Date: Tue Mar 8 12:08:12 2016 -0500 Fix: Only save kernel enablers in session configuration The session configuration serialization currently saves the kernel enablers along with all enabled syscalls. In the case where a syscall would be enabled with a given filter, this would result in two events being enabled: 1) the syscall with its filter expression (the enabler) 2) the syscall on its own (an enabled syscall) The observable effect of this is that the syscall ends up being traced regardless of the filter's evaluation. Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com> commit db906c125f293467e08c043f27d2797fb748b23e Author: Jérémie Galarneau <jeremie.galarneau@efficios.com> Date: Tue Mar 8 12:06:14 2016 -0500 Fix: Only list kernel enablers when listing events lttng list would list kernel enablers and individual enabled syscalls which would result in a confusing output. For instance, enabling the "open" syscall with a filter would result in a list output displaying both the enabler, the syscall's name + its filter, and the syscall on its own, without any mention of an enabled filter. Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com> commit da60cf073ac81b8f903af876c31bd0a94c053c4b Author: Jérémie Galarneau <jeremie.galarneau@efficios.com> Date: Tue Mar 8 11:11:33 2016 -0500 Fix: syscalls hash table leaks when listing kernel events Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Updated by Mathieu Desnoyers over 8 years ago
- Status changed from Feedback to Resolved
Actions