From mboxrd@z Thu Jan 1 00:00:00 1970 From: mathieu.desnoyers@efficios.com (Mathieu Desnoyers) Date: Fri, 7 Oct 2016 20:05:13 +0000 (UTC) Subject: [lttng-dev] =?utf-8?q?=5BRELEASE=5D_LTTng-UST_2=2E9=2E0-rc1_=22Jo?= =?utf-8?q?ann=C3=A8s=22_=28Linux_user-space_tracer=29?= Message-ID: <1981563176.50502.1475870713135.JavaMail.zimbra@efficios.com> We are proud to announce release candidate 1 of LTTng-UST 2.9.0. Please test it within the coming month, and let us know if anything goes unexpectedly before we proceed to the final release. LTTng-UST, the Linux Trace Toolkit Next Generation Userspace Tracer, is a low-overhead application tracer. The library "liblttng-ust" enables tracing of applications and libraries. New and Noteworthy for 2.9.0-rc1: * Various performance improvements. Tested on x86-64 and ARM32. * New liblttng-ust-fd helper library to deal with daemon applications closing file descriptors that don't belong to them, e.g. loop closing file descriptors after fork, or BSD closeall(). * Introduce library load/unlock tracking events, which is more precise than the dlopen/dlmopen/dlclose instrumentation we had in lttng-ust 2.8 in cases where a dlopen'd library loads its own dependencies. * Tracepoints: new payload types supported: array and sequences of integers in network byte order, * Documentation (man pages) overhaul, * Added support for ARM64 "aarch64_be" for some toolchains, * Added "-ust" suffix to lttng-ust thread names, * Introduce lttng_ust_loaded weak symbol, meant to allow applications to detect whether lttng-ust is dynamically loaded, Project website: http://lttng.org Documentation: http://lttng.org/docs Download link: http://lttng.org/download The 2.9 release "Joannès" is named after a Berliner Weisse style beer from the Trèfle Noir microbrewery in Rouyn-Noranda. Changelog: 2016-10-07 (National Frappé Day) lttng-ust 2.9.0-rc1 * Fix: cmake example with configure based oot build * Fix: perform statedump before replying to sessiond * build: check for CXX_WORKS for cmake example * Implement liblttng-ust-fd * Introduce file descriptor tracker * Fix: honor send timeout on unix socket connect * Fix: perform TLS fixup in all UST entry points from each thread * Fix: build: pass configure flags to cmake example * Performance: implement lttng_inline_memcpy * Performance: mark ring buffer do_copy callers always inline * Performance: cache the backend pages pointer in context * Add ctx_len field to ring buffer context * ring buffer: handle shmp errors * Cleanup: libringbuffer: remove duplicate shmp() invocations in slow paths * Performance: Only dereference shmp once * Performance: Mark channel and buffer event disabled check unlikely * Performance: Relax atomicity constraints for crash handling * Fix: compat: -ust suffix sprintf error handling * Performance: disable event counting by default * Fix: remove unlock in getcpu * Performance: remove rcu read lock from ring buffer get/put cpu * Performance: define _LGPL_SOURCE in LGPL c files * Performance: split check deliver fast/slow paths * Fix: perf counters build against kernel headers < 3.12 * Fix: perf counter context deadlock * Fix: many-events registration/unregistration speed * Fix: pre-fault TLS in ust-malloc instrumentation * Fix: ust-ctl: use LTTNG_UST_HAVE_PERF_EVENT to report perf counter availability * Fix: reset vtid cache before releasing urcu locks * Fix: cleanup local_apps.allowed flag on lib cleanup * Fix: Correctly handle invalid agent port file * Fix: memory corruption in compat.h * Introduce lttng_ust_loaded weak symbol * Revert "Introduce LTTNG_UST_LOADED environment variable" * Introduce LTTNG_UST_LOADED environment variable * Fix: remove invalid free * Use AC_PROG_MKDIR_P (generic mkdir -p) * Split CMake example build steps on different lines * Fix: CMake example: specify source/built includes/libs * configure: allow building perf support across all architectures * Fix: use-after-free in statedump lib iter_end * Add generic fallback for perf counter read * Fix: perf counters: sign-extend pmc register * doc: Add flags for JUL and python agent compiling * tests/hello.cxx: add ctf_enum_auto() entries * Add ctf_enum_auto() for autoincrementing enumeration values * Add missing ust_lib.c and ust_lib.h * dl instrumentation: add dlmopen event, trace dlopen flags * Add library load/unload tracking events * Communication protocol: use fixed-size integer rather than enum * Add ustctl command to regenerate the statedump * Implement statedump command in UST * tests/hello.cxx: add enumeration field * Fix: ctf_enum_value() does not work with g++ * Fix: lttng context perf: missing stdbool.h header include * Add perf context support for ARMv7 * Keep perf context FD open for other architectures * Doc: cmake example: fix coding style * Doc: ship cmake example with 'make distcheck' * Doc: add CMake example * configure.ac: check cmake availability * Only build python lib when agent is enabled * doc: information has no plural * Fix: allow non-LGPL modules to use tracepoints * Add -ust to the name of UST threads of the application * Comment the locking mechanisms in ContextInfoManager * Fix: Null-check return value of log4j.Category.getAllAppenders() * Add liblttng-ust-agent.jar to the .gitignore * Fix: Specify encoding when reading agent port file * Fix: Include child loggers in the output of "lttng list" * Fix: Handle both agent config files pointing to same port * Suppress static method warning * Add more logging to the LttngTcpSessiondClient * Use config.h to detect sched_getcpu support * Fix: use limits.h in ust-elf test * Fix: strerror_r behavior is glibc specific * Add support for musl libc to ust-dlfcn.h * Fix: don't generate 0-len array in tracepoint probes * Fix: log4j example: set logger level to prevent unexpected level inheritance * Fix: no LGPL define for malloc and pthread wrappers * Fix: all lttng-ust source files should be tagged _LGPL_SOURCE * Fix: initialize RCU callbacks with mixed LGPL/non-LGPL objects * Fix: incorrect structure layout with mixed LGPL/non-LGPL objects * Fix: don't call __builtin_return_address(0) on 32-bit powerpc * Update version name TBD * Update version to 2.9.0-pre * Fix: tracepoint header: declare tracepoint_dlopen_ptr * Fix: update debug message about weak-hidden symbols * Fix: tracepoint-rcu header: use tracepoint_dlopen_ptr * Fix: test: relax requirement on weak-hidden symbol address * Fix: work-around gcc optimisation oddness on 32-bit powerpc * Fix: test weak-hidden symbols * Print DBG() message about compiler weak hidden symbol behavior * test: add test for gcc issue with weak hidden symbol on powerpc * Restrict Java context retriever names to a set of valid characters * Fix: Correctly compute Java agent list loggers response size * Add support for aarch64_be * Fix: Fix synchronization of LTTngAgent#dispose * Fix: Verify number of bytes contained in sessiond agent commands * Fix: Avoid potential null dereference with log4j loggers * Specify UTF-8 encoding for all Java agent commands * Fix: merge tap tests stdout and stderr * Documentation: ring buffer: SWITCH_FLUSH can be used when active * Fix: unchecked return value in trace_clock_read64_monotonic * Fix: portability: no arith on void pointer * Fix: initialize build id and debug link flags to 0 * Tests: Add tap-driver.sh for automake < 1.12 * Fix: add "has_build_id" and "has_debug_link" fields to debuginfo events * Tests: Replace prove by autotools tap runner * bootstrap: Standardize on autoreconf -vi * Harmonize bootstrap script across projects * lttng-ust(3): order environment variables * lttng-ust(3): fix syntax of env. variables section * lttng-ust(3): document $LTTNG_HOME * Fix: Java agent should use LTTNG_HOME * Fix: examples make distcheck failure * Cleanup: add static for internal symbols * Cleanup: Remove unused max() macros from ring_buffer_frontend.c * Use min_t/max_t macros in lttng-ust-elf.c * Tests: update ust-elf tests to reflect correct memsz computation * Fix: erroneous computation of ELF in-memory size * Make code and man pages share the same default values * Fix: remove NULL check of nonnull parameter in dlclose * Tracepoint array/sequence: add nowrite hex macros * Tracepoint: add ctf array for network byte order integers * Tracepoint: add ctf sequence for network byte order integers * Fix: endianness of integers received by filter * Doc: Update README.md * Fix: jul and log4j agents makefile missing line and indentation * Fix: re-introduce exported symbols * Doc: update manpages for soinfo/sopath name change * Rename statedump and dl events and fields * Tests: list ust-elf test data explicitly in EXTRA_DIST * Tests: add tests for lttng_ust_elf_is_pic * Add is_pic field to statedump soinfo event * Fix: add common jar to lttng-ust-agent-all dependencies * Fix: add version to lttng-ust-agent-all jar file * Fix: rename liblttng-ust-agent to lttng-ust-agent-all * Fix: re-add liblttng-ust-agent.jar * Fix: lttng java agent: dispose is non-static * doc/man: do not use macros in the NAME section * doc/man: remove duplicate copyrights section * doc/man: lttng-ust(3): add tracing control to example * doc/man: lttng-ust(3): split example files in subsections * doc/man/common-copyrights: add missing THANKS section * doc/man: lttng-ust(3): add missing ENVIRONMENT VARIABLES section * README.md: bolden dependencies and update links * README.md: split required and optional dependencies * Convert man pages to AsciiDoc * Fix: remove dead code from filter interpreter * Fix: convey enum value signedness into metadata -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com