X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fust-app.c;h=43864bd0fc27d3bae0c759c2ac797ccca080869e;hp=cc027be99f17f76f426171f0830871e5fe61c26e;hb=11f6ce94d8fb73f017888681aaba5d7df55fc735;hpb=f83be61d63aaf5ea70b850737da436fe4ae80e51 diff --git a/src/bin/lttng-sessiond/ust-app.c b/src/bin/lttng-sessiond/ust-app.c index cc027be99..43864bd0f 100644 --- a/src/bin/lttng-sessiond/ust-app.c +++ b/src/bin/lttng-sessiond/ust-app.c @@ -1579,9 +1579,12 @@ error: /* * Set a capture bytecode for the passed object. + * The sequence number enforces the ordering at runtime and on reception of + * the captured payloads. */ static int set_ust_capture(struct ust_app *app, const struct lttng_bytecode *bytecode, + unsigned int capture_seqnum, struct lttng_ust_object_data *ust_object) { int ret; @@ -1595,6 +1598,11 @@ static int set_ust_capture(struct ust_app *app, goto error; } + /* + * Set the sequence number to ensure the capture of fields is ordered. + */ + ust_bytecode->seqnum = capture_seqnum; + pthread_mutex_lock(&app->sock_lock); ret = ustctl_set_capture(app->sock, ust_bytecode, ust_object); @@ -2159,7 +2167,7 @@ static int create_ust_event_notifier(struct ust_app *app, lttng_condition_event_rule_get_capture_bytecode_at_index( condition, i); - ret = set_ust_capture(app, capture_bytecode, + ret = set_ust_capture(app, capture_bytecode, i, ua_event_notifier_rule->obj); if (ret < 0) { goto error;