Merged with a number of fixes to the test patch. Thanks! The CFLAGS have to be propagated to the probes target, and I added a target to ensure the EXTRA_DIST files are copied to the build directory.
Also, the "comparison" test did not work on 32-bit x86 since "long" and "int" have the same size on that architecture. The test expected the events to be different, but they will be merged (as both are 32-bit integers). Jérémie On 9 February 2018 at 16:56, Francis Deslauriers < francis.deslauri...@efficios.com> wrote: > This patch set allows for multiple probes with the same name to be > hooked on the same callsite. Right now, the Session Daemon only > considers the name and signature of the events to determine if two > events are identical. This could lead to trace corruptions when two > probes would have the same name and signature but really different > binary trace layouts. > > We now compare probes by doing a deep compare of every field. If two > events are _exactly_ the same and have the same metadata then the same > event ID will be used, if they are different a new event ID is created. > > When used with its corresponding UST patch set[1], it allows for dynamic > library upgrade scenarios during tracing. The user can now dlopen a new > version of a provider library and dlclose an old version without > restarting the process. > > This patch set also includes regression tests for both the deep > comparaison and the newly added dlclose capability. > > [1]: https://github.com/frdeso/lttng-ust/tree/dlclose-support > > Francis Deslauriers (5): > Fix: probes should be compared strictly by events metadata > Fix: calling ht_{hash, match}_enum with wrong argument > Tests: allow the use of regular expressions to match events > Tests: add function to validate the number of an event name in > metadata > Tests: add duplicated providers tests > > configure.ac | 1 + > src/bin/lttng-sessiond/Makefile.am | 3 +- > src/bin/lttng-sessiond/ust-field-utils.c | 289 > ++++++++++++++++++++++++ > src/bin/lttng-sessiond/ust-field-utils.h | 29 +++ > src/bin/lttng-sessiond/ust-registry.c | 46 +++- > tests/fast_regression | 1 + > tests/regression/ust/multi-lib/Makefile.am | 114 ++++++++++ > tests/regression/ust/multi-lib/README | 21 ++ > tests/regression/ust/multi-lib/callsites.c | 34 +++ > tests/regression/ust/multi-lib/callsites.h | 21 ++ > tests/regression/ust/multi-lib/multi-lib-test.c | 251 > ++++++++++++++++++++ > tests/regression/ust/multi-lib/probes.c | 18 ++ > tests/regression/ust/multi-lib/probes.h | 195 ++++++++++++++++ > tests/regression/ust/multi-lib/test_multi_lib | 262 > +++++++++++++++++++++ > tests/unit/Makefile.am | 1 + > tests/utils/utils.sh | 27 ++- > 16 files changed, 1299 insertions(+), 14 deletions(-) > create mode 100644 src/bin/lttng-sessiond/ust-field-utils.c > create mode 100644 src/bin/lttng-sessiond/ust-field-utils.h > create mode 100644 tests/regression/ust/multi-lib/Makefile.am > create mode 100644 tests/regression/ust/multi-lib/README > create mode 100644 tests/regression/ust/multi-lib/callsites.c > create mode 100644 tests/regression/ust/multi-lib/callsites.h > create mode 100644 tests/regression/ust/multi-lib/multi-lib-test.c > create mode 100644 tests/regression/ust/multi-lib/probes.c > create mode 100644 tests/regression/ust/multi-lib/probes.h > create mode 100755 tests/regression/ust/multi-lib/test_multi_lib > > -- > 2.7.4 > > -- Jérémie Galarneau EfficiOS Inc. http://www.efficios.com
_______________________________________________ lttng-dev mailing list lttng-dev@lists.lttng.org https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev