View Bazaar branches
Get this repository:
git clone https://git.launchpad.net/lttng-ust

Branches

Name Last Modified Last Commit
master 2020-05-12 17:37:14 UTC 2020-05-12
Cleanup: have interpreter functions return _DISCARD instead of 0

Author: Francis Deslauriers
Author Date: 2020-05-12 15:38:15 UTC

Cleanup: have interpreter functions return _DISCARD instead of 0

It's easier to understand the meaning of the zero return value of these
function using the enum. It makes it obvious.

Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: Id8f199d82b17228fdc882e3ccbab8b3535840984

stable-2.11 2020-05-05 19:48:22 UTC 2020-05-05
Fix: event probes attached before event enabled

Author: Francis Deslauriers
Author Date: 2020-05-05 15:51:58 UTC

Fix: event probes attached before event enabled

Background
==========
When userspace events with exclusions are enabled by the CLI user, the
session daemon enables the events in a 3-steps process using the
following ustctl commands:
1. `LTTNG_UST_EVENT` to create an event and get an handle on it,
2. `LTTNG_UST_EXCLUSION` to attach exclusions, and
3. `LTTNG_UST_ENABLE` to activate the tracing of this event.

Also, the session daemon uses the `LTTNG_UST_SESSION_START` to start the
tracing of events. In various use cases, this can happen before OR after
the 3-steps process above.

Scenario
========
If the`LTTNG_UST_SESSION_START` is done before the 3-steps process the
tracer will end up not considering the exclusions and trace all events
matching the event name glob pattern provided at step #1.

This is due to the fact that when we do step #1, we end up calling
`lttng_session_lazy_sync_enablers()`. This function will sync the event
enablers if the session is active (which it is in our scenario because
of the _SESSION_START).
Syncing the enablers will then match event name glob patterns provided
by the user to the event descriptors of the tracepoints and attach
probes in their corresponding callsite on matches.

All of this is done before we even received the exclusions in step #2.

Problem
=======
The problem is that we attach probes to tracepoints before being sure we
received the entire description of the events.
Step #2 may reduced the set of tracepoints to trace so we must wait
until exclusions are all received to attached probes to tracepoints.

Solution
========
Only match event names and exclusions (and ultimately, register probes)
on enabled enablers to ensure that no other modifications will be
applied to the event.

Event enablers are enabled when at step #3.

Note
====
Filters are not causing problems here because adding a filter won't
change what tracepoints are to be traced.

Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: Id984f266d976f346b001db81cd8a2b74965b5ef2

stable-2.12 2020-05-05 19:48:19 UTC 2020-05-05
Fix: event probes attached before event enabled

Author: Francis Deslauriers
Author Date: 2020-05-05 15:51:58 UTC

Fix: event probes attached before event enabled

Background
==========
When userspace events with exclusions are enabled by the CLI user, the
session daemon enables the events in a 3-steps process using the
following ustctl commands:
1. `LTTNG_UST_EVENT` to create an event and get an handle on it,
2. `LTTNG_UST_EXCLUSION` to attach exclusions, and
3. `LTTNG_UST_ENABLE` to activate the tracing of this event.

Also, the session daemon uses the `LTTNG_UST_SESSION_START` to start the
tracing of events. In various use cases, this can happen before OR after
the 3-steps process above.

Scenario
========
If the`LTTNG_UST_SESSION_START` is done before the 3-steps process the
tracer will end up not considering the exclusions and trace all events
matching the event name glob pattern provided at step #1.

This is due to the fact that when we do step #1, we end up calling
`lttng_session_lazy_sync_enablers()`. This function will sync the event
enablers if the session is active (which it is in our scenario because
of the _SESSION_START).
Syncing the enablers will then match event name glob patterns provided
by the user to the event descriptors of the tracepoints and attach
probes in their corresponding callsite on matches.

All of this is done before we even received the exclusions in step #2.

Problem
=======
The problem is that we attach probes to tracepoints before being sure we
received the entire description of the events.
Step #2 may reduced the set of tracepoints to trace so we must wait
until exclusions are all received to attached probes to tracepoints.

Solution
========
Only match event names and exclusions (and ultimately, register probes)
on enabled enablers to ensure that no other modifications will be
applied to the event.

Event enablers are enabled when at step #3.

Note
====
Filters are not causing problems here because adding a filter won't
change what tracepoints are to be traced.

Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: Id984f266d976f346b001db81cd8a2b74965b5ef2

stable-2.10 2020-03-04 21:05:06 UTC 2020-03-04
Version 2.10.7

Author: Mathieu Desnoyers
Author Date: 2020-03-04 21:05:06 UTC

Version 2.10.7

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.9 2019-10-17 19:26:22 UTC 2019-10-17
Version 2.9.7

Author: Mathieu Desnoyers
Author Date: 2019-10-17 19:26:22 UTC

Version 2.9.7

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.7 2017-11-06 21:36:32 UTC 2017-11-06
ABI: refuse non-matching ABI minor version on event registration

Author: Jonathan Rajotte
Author Date: 2017-11-06 21:10:44 UTC

ABI: refuse non-matching ABI minor version on event registration

In scenarios where a lttng-tools 2.8 (lttng-ust 2.8) stack is running
and an application linked against a lttng-ust 2.7, event registration
will fail on fields size validation [1]. This is not expected based on
the ABI versioning exposed by lttng-ust 2.7 (6.0) and lttng-ust 2.8
(6.1).

The same happen if the scenario is reversed.

This is the result of a change in _ustctl_basic_type.

2.8 introduced enumeration to _ustctl_basic_type. The defined padding is
of 296 while the new union member is 312 (310 of real data + 2 for
alignment) pushing the structure size to 312 instead of the previous
296. This should have been an major ABI break but until now the problem
did not surface.

To prevent this, refuse non matching minor version. No need to check for
particular major,minor version since only 6.0 (ust 2.7) and 6.1 (ust
2.8) exist until a major ABI break.

Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.8 2017-11-06 21:36:17 UTC 2017-11-06
ABI: refuse non-matching ABI minor version on event registration

Author: Jonathan Rajotte
Author Date: 2017-11-06 21:10:44 UTC

ABI: refuse non-matching ABI minor version on event registration

In scenarios where a lttng-tools 2.8 (lttng-ust 2.8) stack is running
and an application linked against a lttng-ust 2.7, event registration
will fail on fields size validation [1]. This is not expected based on
the ABI versioning exposed by lttng-ust 2.7 (6.0) and lttng-ust 2.8
(6.1).

The same happen if the scenario is reversed.

This is the result of a change in _ustctl_basic_type.

2.8 introduced enumeration to _ustctl_basic_type. The defined padding is
of 296 while the new union member is 312 (310 of real data + 2 for
alignment) pushing the structure size to 312 instead of the previous
296. This should have been an major ABI break but until now the problem
did not surface.

To prevent this, refuse non matching minor version. No need to check for
particular major,minor version since only 6.0 (ust 2.7) and 6.1 (ust
2.8) exist until a major ABI break.

Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.6 2016-05-20 21:49:06 UTC 2016-05-20
Version 2.6.7

Author: Mathieu Desnoyers
Author Date: 2016-05-20 21:49:06 UTC

Version 2.6.7

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.5 2015-09-24 20:24:08 UTC 2015-09-24
Version 2.5.7

Author: Mathieu Desnoyers
Author Date: 2015-09-24 20:24:08 UTC

Version 2.5.7

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.4 2015-01-26 20:21:13 UTC 2015-01-26
Version 2.4.4

Author: Mathieu Desnoyers
Author Date: 2015-01-26 20:21:13 UTC

Version 2.4.4

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.3 2014-03-10 15:17:25 UTC 2014-03-10
Fix: incorrect urcu git URL in README

Author: Mathieu Desnoyers
Author Date: 2014-03-10 15:16:35 UTC

Fix: incorrect urcu git URL in README

Reported-by: Ruslan Uvashev <ruslan.uvashev@gmail.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.2 2014-02-28 17:08:31 UTC 2014-02-28
Version 2.2.3

Author: Mathieu Desnoyers
Author Date: 2014-02-28 17:08:31 UTC

Version 2.2.3

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.1 2014-02-05 00:39:28 UTC 2014-02-05
Fix: liblttng-ust-fork Makefile flags mismatch

Author: Mathieu Desnoyers
Author Date: 2014-02-05 00:38:19 UTC

Fix: liblttng-ust-fork Makefile flags mismatch

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

stable-2.0 2013-07-11 20:14:39 UTC 2013-07-11
Version 2.0.8

Author: Mathieu Desnoyers
Author Date: 2013-07-11 20:14:39 UTC

Version 2.0.8

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

cygwin-2.0-experimental 2012-12-21 18:38:22 UTC 2012-12-21
Add a README.cygwin detailing Cygwin specific build/install instructions

Author: Christian Babeux
Author Date: 2012-12-21 18:38:22 UTC

Add a README.cygwin detailing Cygwin specific build/install instructions

Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

ust/callsite 2012-10-23 19:57:55 UTC 2012-10-23
Fix: Fix self-assign warning on struct ustfork_clone_info init

Author: Christian Babeux
Author Date: 2012-10-23 19:57:55 UTC

Fix: Fix self-assign warning on struct ustfork_clone_info init

Use the proper field designator syntax (C99) to initialize the
ustfork_clone_info struct.

Signed-off-by: Christian Babeux <christian.babeux@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

dev 2012-03-06 23:10:59 UTC 2012-03-06
Merge branch 'master' into dev

Author: Mathieu Desnoyers
Author Date: 2012-03-06 23:10:59 UTC

Merge branch 'master' into dev

117 of 17 results

Other repositories

Name Last Modified
lp:lttng-ust 2020-05-12
lp:~lttng/lttng-ust/+git/packaging 2020-04-09
12 of 2 results
You can't create new repositories for LTTng-UST.