<div dir="ltr"><div>Oyé Oyé, dear LTTng fellows!</div><div><br></div><div>I am proud to announce the availability of the first LTTng-Tools 2.7 -</div><div>"Herbe à Détourne" release candidate. As per usual, this release bears the</div><div>codename of a Québec-brewed beer.</div><div><br></div><div>Brewed with unrestrained amounts of Citra hop, the Herbe à Détourne is a</div><div>fantastic New World Tripel brewed by "Dieu du Ciel!". Aromas of mango,</div><div>cantaloupe melon and passion fruit, combined with a controlled bitter finish,</div><div>unite in making this smooth golden-orange beer stand apart.</div><div><br></div><div>We are still hard at work fixing a handful of last-minute issues (see our bug</div><div>tracker), integrating more tests for the latest features, and updating the</div><div>documentation before we make a final release available.</div><div><br></div><div>However, that doesn't mean you can't try out the latest features today!</div><div><br></div><div>--- Process (PID) Tracker ---</div><div>The new "track" and "untrack" commands allows the tracking of events associated</div><div>with specific PIDs, both in user space and kernel space.</div><div><br></div><div>For example, the following commands may be used to track all user space events</div><div>of PID "1234":</div><div>$ lttng create my_session</div><div>$ lttng track --userspace --pid 1234</div><div>$ lttng enable-event --userspace --all</div><div>$ lttng start</div><div><br></div><div>--- Python Logging Support ---</div><div>Following in the footsteps of the Java Util Logging and Log4J logging backend<br></div><div>support, which were introduced as part of LTTng 2.4 and LTTng 2.6 respectively,</div><div>this new version adds support for the Python logging backend. This means that</div><div>logging statements emitted by the Python logging module can now be collected as</div><div>part of user space traces by enabling events from the "python" domain.</div><div><br></div><div>$ lttng create my_session</div><div>$ lttng enable-event --python --all</div><div>$ lttng start</div><div><br></div><div>The lttngust Python module is provided as part of LTTng-UST 2.7.</div><div><a href="https://github.com/lttng/lttng-ust/tree/master/liblttng-ust-python-agent">https://github.com/lttng/lttng-ust/tree/master/liblttng-ust-python-agent</a></div><div><br></div><div>--- Kernel tracer filtering support ---</div><div>While LTTng-UST has provided support for event filtering for a long time,</div><div>it was not possible to perform kernel-side event filtering until now. As of this version,</div><div>Kernel space filters can be used in the same way as user space filters.</div><div><br></div><div>For instance, to trace only read() syscalls requesting more than 100 bytes:</div><div>$ lttng create my_session</div><div>$ lttng enable-event --kernel --syscall read --filter "count > 100"</div><div>$ lttng start</div><div><br></div><div>--- Kernel tracer wildcard support ---</div><div>Support for wildcards in event names is another feature that has been brought</div><div>from the user space tracer to the kernel tracer. This means that groups of</div><div>kernel space events can be enabled at once using the wildcard notation.</div><div><br></div><div>The tracing of all block device or scheduling events can be enabled using a</div><div>single command:</div><div><br></div><div>$ lttng enable-event --kernel block*</div><div>or</div><div>$ lttng enable-event --kernel sched*</div><div><br></div><div>--- File-backed user space buffers ---</div><div><span style="font-size:12.8000001907349px">This new LTTng-UST feature allows the mapping of ring buffers onto filesystems.</span></div><div><span style="font-size:12.8000001907349px">This proves useful</span><span style="font-size:12.8000001907349px"> in combination with pramfs or DAX+pmem (Linux kernels 4.1+</span></div><div><span style="font-size:12.8000001907349px">for DAX and </span><span style="font-size:12.8000001907349px">4.2+ for pmem) to store tracer ring buffers in persistent </span><span style="font-size:12.8000001907349px">memory upon</span></div><div><span style="font-size:12.8000001907349px">an unexpected system reboot.</span></div><div><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px">These buffers can be salvaged and converted to regular CTF traces using the</span></div><div><span style="font-size:12.8000001907349px">newly introduced lttng-crash utility to see the events that led to a crash.</span></div><div><br></div><div>--- Support for clock and getcpu plugins ---</div><div>In the interest of keeping LTTng as unintrusive as possible, LTTng 2.7</div><div>introduces support for platform-specific plug-ins providing custom</div><div>implementations of getcpu() (user space) and clock sources for both kernel and</div><div>user space tracers.</div><div><br></div><div>getcpu override plugins can prove useful in cases where direct hardware access</div><div>is available for architecture-specific registers storing the CPU number, and</div><div>where those should be used instead of the Linux kernel sched_getcpu()</div><div>vDSO/syscall.</div><div><br></div><div>clock override plugins, which may be implemented as shared objects (user space)</div><div>or kernel modules (kernel space) may prove userful in cases where direct</div><div>hardware access to architecture-specific clocks is available, and when it should</div><div>be used in place of the Linux kernel Monotonic clock.</div><div><br></div><div>--- tracelog() support ---</div><div>LTTng-UST 2.7 provides a number of facilities to smoothen the transition of</div><div>applications from logging to tracing in the form of tracelog() tracepoints.</div><div>LTTng-UST 2.7's announcement covers this feature in more detail:</div><div><br></div><div><a href="http://lists.lttng.org/pipermail/lttng-dev/2015-July/024757.html">http://lists.lttng.org/pipermail/lttng-dev/2015-July/024757.html</a></div><div><br></div><div>Of course, we will cover all of these new features in depth in an upcoming post</div><div>on the official LTTng blog at <a href="http://lttng.org/blog">lttng.org/blog</a> in time for the final release.</div><div><br></div><div>2015-07-15 lttng-tools 2.7.0-rc1 (Pet Fire Safety Day)</div><div><span class="" style="white-space:pre">   </span>* Update version to v2.7.0-rc1</div><div><span class="" style="white-space:pre">     </span>* Tests: lttng-ust-getcpu-override-test cache and error-check sysconf()</div><div><span class="" style="white-space:pre">    </span>* Tests: lttng-ust-getcpu-override coding-style adjustments</div><div><span class="" style="white-space:pre">        </span>* Add CPU_ID LTTng-UST context to enum lttng_ust_context_type</div><div><span class="" style="white-space:pre">      </span>* Bump LTTNG_UST_ABI_MAJOR_VERSION to 6</div><div><span class="" style="white-space:pre">    </span>* Tests: Ust getcpu override plugin</div><div><span class="" style="white-space:pre">        </span>* Fix: Follow struct dirent allocation guidelines of READDIR(3)</div><div><span class="" style="white-space:pre">    </span>* Update comments regarding the power of 2 constraint on sub-buffer sizes</div><div><span class="" style="white-space:pre">  </span>* Build: add Flex version check</div><div><span class="" style="white-space:pre">    </span>* Build: add Bison version check</div><div><span class="" style="white-space:pre">   </span>* Fix: handle sys_futex() FUTEX_WAIT interrupted by signal</div><div><span class="" style="white-space:pre"> </span>* Fix: metadata push -EPIPE should be recoverable</div><div><span class="" style="white-space:pre">  </span>* Fix: destroy session removes the default config file</div><div><span class="" style="white-space:pre">     </span>* Build: bump autoconf version requirement to 2.64</div><div><span class="" style="white-space:pre"> </span>* Fix: Memory leak in setup of relayd_path</div><div><span class="" style="white-space:pre"> </span>* Fix: update liburcu URL</div><div><span class="" style="white-space:pre">  </span>* Fix: test: use "$@" to pass and quote argument</div><div><span class="" style="white-space:pre"> </span>* Refactor: test: wrapper for lttng_snapshot_del_output</div><div><span class="" style="white-space:pre">    </span>* Refactor: test: wrapper for lttng_snapshot_add_output</div><div><span class="" style="white-space:pre">    </span>* Refactor: test: wrapper for destroy_lttng_session</div><div><span class="" style="white-space:pre">        </span>* Refactor: test: wrapper for stop_lttng_tracing</div><div><span class="" style="white-space:pre">   </span>* Refactor: test: wrapper for start_lttng_tracing</div><div><span class="" style="white-space:pre">  </span>* Refactor: test: wrapper for enable_ust_lttng_event</div><div><span class="" style="white-space:pre">       </span>* Refactor: test: wrapper for enable_ust_lttng_channel</div><div><span class="" style="white-space:pre">     </span>* Refactor: test: wrapper for create_lttng_session</div><div><span class="" style="white-space:pre"> </span>* Fix: Memory allocated by xmlNodeGetContent() must be freed by xmlFree()</div><div><span class="" style="white-space:pre">  </span>* Save/load: add support for shared memory path</div><div><span class="" style="white-space:pre">    </span>* Fix: get_cmdline_by_pid path length assumes a max pid of 65535</div><div><span class="" style="white-space:pre">   </span>* Clean-up: Remove ifdef-ed out lttng list options</div><div><span class="" style="white-space:pre"> </span>* Test: mi: test for greater or equal to a minimum of events on ust listing.</div><div><span class="" style="white-space:pre">       </span>* Fix: update regression tests involving UST</div><div><span class="" style="white-space:pre">       </span>* Clean-up: Remove ifdef-ed out function:entry feature</div><div><span class="" style="white-space:pre">     </span>* Fix: Mark MI and Config string declarations as extern</div><div><span class="" style="white-space:pre">    </span>* Clean-up append_list_to_probes()</div><div><span class="" style="white-space:pre"> </span>* Fix: modprobe.c: fix tmp_list memory leak</div><div><span class="" style="white-space:pre">        </span>* Fix: append_list_to_probes(): increment index</div><div><span class="" style="white-space:pre">    </span>* Docs: LTTNG(1) filtering is now supported by the kernel tracer</div><div><span class="" style="white-space:pre">   </span>* Fix: live_test regression on large number of cpus</div><div><span class="" style="white-space:pre">        </span>* Fix: set UST register timeout to -1 as test default</div><div><span class="" style="white-space:pre">      </span>* Man page: reference lttng-crash under --shm-path option</div><div><span class="" style="white-space:pre">  </span>* Tests: Don't rely on implicit scalar expression dereference</div><div><span class="" style="white-space:pre">  </span>* man pages: use standard NAME format</div><div><span class="" style="white-space:pre">      </span>* Fix python bindings' Makefile for out-of-tree builds</div><div><span class="" style="white-space:pre"> </span>* Fix: use LIBS instead of AM_LDFLAGS for dl and c linking</div><div><span class="" style="white-space:pre"> </span>* Fix: Add missing -ldl when checking for lttng-ust</div><div><span class="" style="white-space:pre">        </span>* clock plugin: increase offset measurement accuracy</div><div><span class="" style="white-space:pre">       </span>* Implement UST clock override plugin support</div><div><span class="" style="white-space:pre">      </span>* Fix: ownership of filter and filter_expression</div><div><span class="" style="white-space:pre">   </span>* Fix: zero memory passed to create channel kernel ioctl</div><div><span class="" style="white-space:pre">   </span>* Fix: Check that lttng create --live's time is not zero</div><div><span class="" style="white-space:pre">       </span>* Fix: Validate lttng_create_session_live's timer is > 0</div><div><span class="" style="white-space:pre">    </span>* UI: Only show live timer when the session is in live mode</div><div><span class="" style="white-space:pre">        </span>* UI: Only show tracker PID state when enabled</div><div><span class="" style="white-space:pre">     </span>* Implement kernel filter support</div><div><span class="" style="white-space:pre">  </span>* syscall tracing: update tests</div><div><span class="" style="white-space:pre">    </span>* Support lttng-modules syscall wildcards</div><div><span class="" style="white-space:pre">  </span>* Implement lttng-modules tracepoint wildcard support</div><div><span class="" style="white-space:pre">      </span>* Fix build when configuring with --disable-lttng-ust</div><div><span class="" style="white-space:pre">      </span>* Fix: add missing function prototype to trace-ust.h header</div><div><span class="" style="white-space:pre">        </span>* Implement PID tracker content listing</div><div><span class="" style="white-space:pre">    </span>* Implement UST PID tracker</div><div><span class="" style="white-space:pre">        </span>* Cleanup: Remove unimplemented UST domains</div><div><span class="" style="white-space:pre">        </span>* Implement PID tracking for kernel tracing</div><div><span class="" style="white-space:pre">        </span>* Fix: leak on error in lttng-crash</div><div><span class="" style="white-space:pre">        </span>* Man page fixes: missing --version option and typo</div><div><span class="" style="white-space:pre">        </span>* Docs: add lttng-crash(1) man page</div><div><span class="" style="white-space:pre">        </span>* Docs: lttng-crash refers to "lttng"</div><div><span class="" style="white-space:pre">    </span>* Fix: possible use of uninitialized data in loglevel conversion funcs</div><div><span class="" style="white-space:pre">     </span>* Fix: possible evaluation of garbage values in fini_validation_ctx()</div><div><span class="" style="white-space:pre">      </span>* Cleanup: Remove stale #ifdef-ed-out code from spawn_viewer()</div><div><span class="" style="white-space:pre">     </span>* Fix: Possible call to execvp with NULL argument on allocation failure</div><div><span class="" style="white-space:pre">    </span>* Fix: Possible call to strtoul() with NULL argument</div><div><span class="" style="white-space:pre">       </span>* Docs: clarify lttng.1 shm-path section</div><div><span class="" style="white-space:pre">   </span>* Fix: Missing return value check in extract_trace_recursive()</div><div><span class="" style="white-space:pre">     </span>* Fix: recursive_rmdir: empty all empty subdir</div><div><span class="" style="white-space:pre">     </span>* Move file creation/unlink from liblttng-ust-ctl to consumerd</div><div><span class="" style="white-space:pre">     </span>* lttng-crash: support recursive traces</div><div><span class="" style="white-space:pre">    </span>* shm-path: remove directory hierarchy on destroy</div><div><span class="" style="white-space:pre">  </span>* Implement --shm-path option for UST sessions (per-uid channels)</div><div><span class="" style="white-space:pre">  </span>* Cleanup: Reduce scope of connections in main relayd thread</div><div><span class="" style="white-space:pre">       </span>* Cleanup: Reduce scope of relayd connections in live thread</div><div><span class="" style="white-space:pre">       </span>* Docs: connection_find_by_sock() must be called with rcu_read_lock</div><div><span class="" style="white-space:pre">        </span>* Rename current release as 2.7.0-pre</div><div><span class="" style="white-space:pre">      </span>* Docs: grammar fix in Makefile</div><div><span class="" style="white-space:pre">    </span>* Change release name to master</div><div><span class="" style="white-space:pre">    </span>* configure: add type availability checking</div><div><span class="" style="white-space:pre">        </span>* configure: add check for compiler inline keyword support</div><div><span class="" style="white-space:pre"> </span>* configure: missing check for needed header</div><div><span class="" style="white-space:pre">       </span>* configure: missing check of functions</div><div><span class="" style="white-space:pre">    </span>* Fix: test: log4j: missing static test files for dist and out of tree build</div><div><span class="" style="white-space:pre">       </span>* Fix: test: java-jul:missing static test files for dist and out of tree build</div><div><span class="" style="white-space:pre">     </span>* Fix: out-of-tree build: missing xsd file for mi test execution</div><div><span class="" style="white-space:pre">   </span>* Fix: out-of-tree build: missing xsd file for save-load test execution</div><div><span class="" style="white-space:pre">    </span>* Cleanup: remove unused end_no_session label in ust_app_flush_session()</div><div><span class="" style="white-space:pre">   </span>* Cleanup: Remove unused "end" label in push_metadata()</div><div><span class="" style="white-space:pre">  </span>* Tests: Run health check test_thread_ok as part of root_regression</div><div><span class="" style="white-space:pre">        </span>* Fix: deadlock between UST registry lock and consumer lock</div><div><span class="" style="white-space:pre">        </span>* Fix: uninitialized return value</div><div><span class="" style="white-space:pre">  </span>* Fix: build failure using disable-lttng-ust configure option</div><div><span class="" style="white-space:pre">      </span>* Cleanup: Remove unused variable</div><div><span class="" style="white-space:pre">  </span>* Fix: setuid/setgid daemons should not get sensitive env. var./args</div><div><span class="" style="white-space:pre">       </span>* Fix: grab more than one packet for snapshots</div><div><span class="" style="white-space:pre">     </span>* Fix: per-uid flush and ust registry locking</div><div><span class="" style="white-space:pre">      </span>* Docs: Missing optional dependency on lttng-ust in README.md</div><div><span class="" style="white-space:pre">      </span>* Docs: Grammar fixes in the lttng manpage</div><div><span class="" style="white-space:pre"> </span>* Fix: add missing UST perf counter support check</div><div><span class="" style="white-space:pre">  </span>* Fix: tests: integer too large for long type</div><div><span class="" style="white-space:pre">      </span>* Fix: undefined operation on last_relay_viewer_session_id</div><div><span class="" style="white-space:pre"> </span>* Fix: print format type mismatch</div><div><span class="" style="white-space:pre">  </span>* Fix: print format type mismatch</div><div><span class="" style="white-space:pre">  </span>* Fix: Remove structurally dead code from relayd</div><div><span class="" style="white-space:pre">   </span>* Cleanup: Remove logically dead code</div><div><span class="" style="white-space:pre">      </span>* Cleanup: Remove unused label</div><div><span class="" style="white-space:pre">     </span>* Fix: Remove unused argument in debug statement</div><div><span class="" style="white-space:pre">   </span>* Fix: exit threads not only on goto restart</div><div><span class="" style="white-space:pre">       </span>* Fix: poll: show the correct number of fds</div><div><span class="" style="white-space:pre">        </span>* Fix: call lttng_poll_set_max_size before start threads</div><div><span class="" style="white-space:pre">   </span>* Fix: compat poll: add missing empty revents checks</div><div><span class="" style="white-space:pre">       </span>* Fix: various compat poll/epoll issues</div><div><span class="" style="white-space:pre">    </span>* Add debugging output to ht-cleanup thread</div><div><span class="" style="white-space:pre">        </span>* Fix: mi: snapshot: missing error handling for session name</div><div><span class="" style="white-space:pre">       </span>* Fix: ust-app: per-PID app unregister vs tracing stop races</div><div><span class="" style="white-space:pre">       </span>* Fix: data pending: allow empty streams</div><div><span class="" style="white-space:pre">   </span>* Fix: ust snapshot: cleanup after error</div><div><span class="" style="white-space:pre">   </span>* Fix: Mismatching return type in ust_app_ht_alloc() stub</div><div><span class="" style="white-space:pre">  </span>* Cleanup: lock file already taken is error, not warning</div><div><span class="" style="white-space:pre">   </span>* Fix: ust-app null pointer check needed for main refactoring</div><div><span class="" style="white-space:pre">      </span>* Cleanup: relayd: centralize thread stopping function</div><div><span class="" style="white-space:pre">     </span>* Cleanup: Replace all perror() uses by the PERROR macro</div><div><span class="" style="white-space:pre">   </span>* Refactor relayd main/set_options/cleanup</div><div><span class="" style="white-space:pre"> </span>* Refactor consumerd main/cleanup</div><div><span class="" style="white-space:pre">  </span>* Refactor sessiond main/cleanup/ht-cleanup</div><div><span class="" style="white-space:pre">        </span>* Missing error handling: consumer_signal_init should return its error status</div><div><span class="" style="white-space:pre">      </span>* Cleanup: consumerd: lines over 80 columns</div><div><span class="" style="white-space:pre">        </span>* Cleanup: consumerd: use PERROR rather than perror</div><div><span class="" style="white-space:pre">        </span>* Cleanup: lttng-consumerd: remove stale TODO comment</div><div><span class="" style="white-space:pre">      </span>* Misleading error handling: utils_create_pid_file() should return 0 on success</div><div><span class="" style="white-space:pre">    </span>* Missing error handling: consumerd parse_args should return errors to caller</div><div><span class="" style="white-space:pre">      </span>* Missing error handling: ust_app_ht_alloc should return error status</div><div><span class="" style="white-space:pre">      </span>* Fix: ust app leak on UST buffer creation error</div><div><span class="" style="white-space:pre">   </span>* Fix: leak on UST buffer registry creation error</div><div><span class="" style="white-space:pre">  </span>* Fix: agents ht leaks on destroy session</div><div><span class="" style="white-space:pre">  </span>* Fix: add missing RCU read unlock</div><div><span class="" style="white-space:pre"> </span>* Fix: help message for Python agent mentions Java</div><div><span class="" style="white-space:pre"> </span>* Fix: don't destroy the sockets if the snapshot was successful</div><div><span class="" style="white-space:pre">        </span>* Fix: Missing RCU read locks in syscall_list_channel()</div><div><span class="" style="white-space:pre">    </span>* Fix: Missing RCU read lock in kernel_destroy_session()</div><div><span class="" style="white-space:pre">   </span>* Fix: channel names are not validated</div><div><span class="" style="white-space:pre">     </span>* Cleanup: Missing whitespace</div><div><span class="" style="white-space:pre">      </span>* Fix: Apply consumer URI changes to all domains</div><div><span class="" style="white-space:pre">   </span>* Cleanup: Fix a typo in the MI tests</div><div><span class="" style="white-space:pre">      </span>* Test fix: Don't invoke the system's lttng client</div><div><span class="" style="white-space:pre"> </span>* Tests: Add a test to check disabled events are loaded in the correct state</div><div><span class="" style="white-space:pre">       </span>* Fix: Don't leave events enabled if they were saved in a disabled state</div><div><span class="" style="white-space:pre">       </span>* Fix: "Any" loglevel's value is -1 and not 0</div><div><span class="" style="white-space:pre">        </span>* Test fix: LTTNG_SESSION_CONFIG_XSD_PATH expects an absolute path</div><div><span class="" style="white-space:pre"> </span>* Fix: Memory leak on error in alloc_argv_from_user_opts()</div><div><span class="" style="white-space:pre"> </span>* Cleanup: Unchecked close() return value in utils_create_lock_file()</div><div><span class="" style="white-space:pre">      </span>* Cleanup: No check of the return value of lttng_ht_del()</div><div><span class="" style="white-space:pre">  </span>* Cleanup: Mixed enums used for return code in send_sessiond_channel()</div><div><span class="" style="white-space:pre">     </span>* Cleanup: Cast poll() return value to void</div><div><span class="" style="white-space:pre">        </span>* Fix: Unreachable error logging in set_option()</div><div><span class="" style="white-space:pre">   </span>* Fix: OOM leaks in sessiond modprobe.c</div><div><span class="" style="white-space:pre">    </span>* Cleanup: sessiond modprobe.c: coding style</div><div><span class="" style="white-space:pre">       </span>* Cleanup: test_utils_expand_path.c prototypes</div><div><span class="" style="white-space:pre">     </span>* Fix: test_utils_expand_path.c: out of memory error handling</div><div><span class="" style="white-space:pre">      </span>* Fix: test test_ust_data.c: check OOM</div><div><span class="" style="white-space:pre">     </span>* Fix: test libc-wrapper: check malloc OOM</div><div><span class="" style="white-space:pre"> </span>* Cleanup: test libc-wrapper: main parameters</div><div><span class="" style="white-space:pre">      </span>* Fix: lttng-ctl: use zmalloc(), missing OOM check</div><div><span class="" style="white-space:pre"> </span>* Fix: filter-parser.y: use zmalloc(), missing OOM check</div><div><span class="" style="white-space:pre">   </span>* Fix: utils.c: check str*dup OOM</div><div><span class="" style="white-space:pre">  </span>* Cleanup: implement zmalloc as static inline</div><div><span class="" style="white-space:pre">      </span>* Fix: rculfhash: use zmalloc()</div><div><span class="" style="white-space:pre">    </span>* Fix: ini.c: use zmalloc()</div><div><span class="" style="white-space:pre">        </span>* Fix: lttng lttng.c: check strdup OOM</div><div><span class="" style="white-space:pre">     </span>* Fix: lttng conf.c: use zmalloc()</div><div><span class="" style="white-space:pre"> </span>* Fix: lttng view.c missing strdup OOM check</div><div><span class="" style="white-space:pre">       </span>* Fix: use zmalloc() in lttng view.c</div><div><span class="" style="white-space:pre">       </span>* Fix: use zmalloc() in lttng list.c</div><div><span class="" style="white-space:pre">       </span>* Fix: oom error check, realloc oom leak</div><div><span class="" style="white-space:pre">   </span>* Fix: use zmalloc in lttng enable_events.c</div><div><span class="" style="white-space:pre">        </span>* Fix: missing strdup oom check in lttng create.c</div><div><span class="" style="white-space:pre">  </span>* Fix: lttng add_context.c: use zmalloc</div><div><span class="" style="white-space:pre">    </span>* Cleanup: add missing static to function modprobe_remove_lttng()</div><div><span class="" style="white-space:pre">  </span>* Fix: add missing str*dup oom check in sessiond main.c</div><div><span class="" style="white-space:pre">    </span>* Fix: add missing sessiond kernel-consumer missing str*dup oom checks</div><div><span class="" style="white-space:pre">     </span>* Fix: add missing strdup OOM check</div><div><span class="" style="white-space:pre">        </span>* Fix: add missing synchronization point for before app test case</div><div><span class="" style="white-space:pre">  </span>* Fix: tests: wait output hide Terminate errors</div><div><span class="" style="white-space:pre">    </span>* Fix: tests: remove killall, add missing SIGTERM handlers</div><div><span class="" style="white-space:pre"> </span>* Fix: high throughput test: reset bw limit on sigterm</div><div><span class="" style="white-space:pre">     </span>* Fix: tests: add missing wait, document missing synchro</div><div><span class="" style="white-space:pre">   </span>* Document test anti-patterns</div><div><span class="" style="white-space:pre">      </span>* Fix: test flaky sleep and wait patterns</div><div><span class="" style="white-space:pre">  </span>* Fix: tests: don't use pidof to wait for test apps</div><div><span class="" style="white-space:pre">    </span>* Fix: Live tracing does not honor live timer after first tracefile with tracefile rotation</div><div><span class="" style="white-space:pre">        </span>* Fix: Handle empty daemon configuration file lines</div><div><span class="" style="white-space:pre">        </span>* Docs: Add -f/--config option to lttng-sessiond man page</div><div><span class="" style="white-space:pre">  </span>* Cleanup: spaghetti function return path</div><div><span class="" style="white-space:pre">  </span>* Fix: relayd: unbalanced RCU read-side lock/unlock</div><div><span class="" style="white-space:pre">        </span>* Fix: relayd: unbalanced RCU read lock/unlock</div><div><span class="" style="white-space:pre">     </span>* Fix: lttng-relayd: unhandled out of memory error</div><div><span class="" style="white-space:pre"> </span>* Fix: relayd viewer stream: unhandled out of memory error</div><div><span class="" style="white-space:pre"> </span>* Build fix: Apps defining _LGPL_SOURCE must link to urcu-bp</div><div><span class="" style="white-space:pre">       </span>* Define _LGPL_SOURCE in test apps' tracepoint provider files</div><div><span class="" style="white-space:pre">  </span>* Define _LGPL_SOURCE in test applications</div><div><span class="" style="white-space:pre"> </span>* Fix: Missing rcu_read_lock in cmd_list_events()</div><div><span class="" style="white-space:pre">  </span>* Fix: Missing rcu_read_lock in list_lttng_agent_events()</div><div><span class="" style="white-space:pre">  </span>* Fix: Missing rcu_read_lock in cmd_list_channels()</div><div><span class="" style="white-space:pre">        </span>* Fix: Missing rcu_read_locks in cmd_list_domains()</div><div><span class="" style="white-space:pre">        </span>* Fix: Missing rcu_read_lock in cmd_snapshot_list_outputs()</div><div><span class="" style="white-space:pre">        </span>* Fix: Missing rcu_read_lock in save_domains()</div><div><span class="" style="white-space:pre">     </span>* Fix: Missing rcu_read_lock in ust_app_get_nb_stream()</div><div><span class="" style="white-space:pre">    </span>* Fix: UST subbuffers silently dropped on moderate trace traffic</div><div><span class="" style="white-space:pre">   </span>* Fix: Missing rcu_read_lock in get_session_max_subbuf_size()</div><div><span class="" style="white-space:pre">      </span>* Fix: create/destroy a splice_pipe per stream</div><div><span class="" style="white-space:pre">     </span>* Note find_ust_app_context must be called with RCU read lock</div><div><span class="" style="white-space:pre">      </span>* Fix: empty indexes_ht before destroying it.</div><div><span class="" style="white-space:pre">      </span>* Fix: removed useless key from relay_index</div><div><span class="" style="white-space:pre">        </span>* Fix: Ambiguous agent event filter bytecode ownership</div><div><span class="" style="white-space:pre">     </span>* Fix: filter bytecode and string memory leak on error</div><div><span class="" style="white-space:pre">     </span>* Fix: define _LGPL_SOURCE in C files</div><div><span class="" style="white-space:pre">      </span>* Fix: HT must not be destroyed with a rcu_read_lock held</div><div><span class="" style="white-space:pre">  </span>* Fix: agent events HT should be destroyed from the cleanup thread</div><div><span class="" style="white-space:pre"> </span>* Fix: missing rcu_read_lock in trace_ust_destroy_session()</div><div><span class="" style="white-space:pre">        </span>* Fix: missing rcu_read_lock when calling trace_ust_find_agent()</div><div><span class="" style="white-space:pre">   </span>* Fix: missing rcu_read_lock in cmd_start_trace()</div><div><span class="" style="white-space:pre">  </span>* Cleanup: remove "disabled" flag for new release cycle</div><div><span class="" style="white-space:pre">  </span>* Fix: filter attach vs event enable race</div><div><span class="" style="white-space:pre">  </span>* Fix: Mark libxml2 as a mandatory dependency</div><div><span class="" style="white-space:pre">      </span>* Fix: Warn the user when enabling an event in a new domain</div><div><span class="" style="white-space:pre">        </span>* Fix: Don't report an error when listing a session with no channels</div><div><span class="" style="white-space:pre">   </span>* Bypass 0 byte allocation when no domains are enabled</div><div><span class="" style="white-space:pre">     </span>* Fix: Add missing URCU_TLS access to error_log_time</div><div><span class="" style="white-space:pre">       </span>* Fix: check userspace perf counter name when looking up contexts</div><div><span class="" style="white-space:pre">  </span>* Update maintainer section of the man pages</div><div><span class="" style="white-space:pre">       </span>* Update maintainer section of README.md</div><div><span class="" style="white-space:pre">   </span>* Fix: add README.md to documentation files</div><div><span class="" style="white-space:pre">        </span>* Fix: UST consumer sync all available metadata</div><div><span class="" style="white-space:pre">    </span>* Test: remove bogus argument from prove invocation</div><div><span class="" style="white-space:pre">        </span>* Fix: typo in pythong test Makefile</div><div><span class="" style="white-space:pre">       </span>* Fix: memory leak in libconfig</div><div><span class="" style="white-space:pre">    </span>* Add Python agent support</div><div><span class="" style="white-space:pre"> </span>* Fix: return EINVAL if agent registration fails</div><div><span class="" style="white-space:pre">   </span>* Use lttng-modules ABI version ioctl</div><div><span class="" style="white-space:pre">      </span>* Fix: syscall list ioctl number conflict</div><div><span class="" style="white-space:pre">  </span>* Update master ChangeLog with 2.5.1 release</div><div><br></div><div>As always, please report any issue you may encounter to <a href="http://bugs.lttng.org">bugs.lttng.org</a></div><div>or on this mailing list.</div><div><br></div><div>Project website: <a href="https://lttng.org">https://lttng.org</a></div><div><br></div><div>Download links:</div><div><a href="https://lttng.org/files/lttng-tools/lttng-tools-2.7.0-rc1.tar.bz2">https://lttng.org/files/lttng-tools/lttng-tools-2.7.0-rc1.tar.bz2</a></div><div>GPG sig: <a href="https://lttng.org/files/lttng-tools/lttng-tools-2.7.0-rc1.tar.bz2.asc">https://lttng.org/files/lttng-tools/lttng-tools-2.7.0-rc1.tar.bz2.asc</a></div><div><br></div><div>Looking forward to your feedback!</div><div><br></div><div>Jérémie</div><div><br></div>-- <br><div class="gmail_signature">Jérémie Galarneau<br>EfficiOS Inc.<br><a href="http://www.efficios.com" target="_blank">http://www.efficios.com</a></div>
</div>