[lttng-dev] [RELEASE] LTTng-UST 2.9.0-rc1 "Joannès" (Linux user-space tracer)
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Fri Oct 7 20:05:13 UTC 2016
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
More information about the lttng-dev
mailing list