From 6bbd9df3c4006bb904c9efc5620d2c29ac2178fb Mon Sep 17 00:00:00 2001 From: Francis Deslauriers Date: Mon, 27 Apr 2020 17:59:58 -0400 Subject: [PATCH] bytecode: propagate `rev_bo` of element When specializing and executing bytecode. Signed-off-by: Francis Deslauriers Signed-off-by: Mathieu Desnoyers Change-Id: I9fc7381b397acdae02f87e941128ed89e12f7350 --- liblttng-ust/lttng-filter-interpreter.c | 1 + liblttng-ust/lttng-filter-specialize.c | 3 +++ 2 files changed, 4 insertions(+) diff --git a/liblttng-ust/lttng-filter-interpreter.c b/liblttng-ust/lttng-filter-interpreter.c index 14f6a464..d00179cd 100644 --- a/liblttng-ust/lttng-filter-interpreter.c +++ b/liblttng-ust/lttng-filter-interpreter.c @@ -454,6 +454,7 @@ static int dynamic_get_index(struct lttng_ctx *ctx, stack_top->u.ptr.object_type = gid->elem.type; stack_top->u.ptr.type = LOAD_OBJECT; stack_top->u.ptr.field = gid->field; + stack_top->u.ptr.rev_bo = gid->elem.rev_bo; break; } diff --git a/liblttng-ust/lttng-filter-specialize.c b/liblttng-ust/lttng-filter-specialize.c index f480f5c4..947fde29 100644 --- a/liblttng-ust/lttng-filter-specialize.c +++ b/liblttng-ust/lttng-filter-specialize.c @@ -531,6 +531,7 @@ static int specialize_context_lookup(struct lttng_ctx *ctx, memset(&gid, 0, sizeof(gid)); gid.ctx_index = idx; gid.elem.type = load->object_type; + gid.elem.rev_bo = load->rev_bo; gid.field = field; data_offset = bytecode_push_data(runtime, &gid, __alignof__(gid), sizeof(gid)); @@ -585,6 +586,7 @@ static int specialize_app_context_lookup(struct lttng_ctx **pctx, memset(&gid, 0, sizeof(gid)); gid.ctx_index = idx; gid.elem.type = load->object_type; + gid.elem.rev_bo = load->rev_bo; gid.field = field; data_offset = bytecode_push_data(runtime, &gid, __alignof__(gid), sizeof(gid)); @@ -665,6 +667,7 @@ static int specialize_payload_lookup(const struct lttng_event_desc *event_desc, memset(&gid, 0, sizeof(gid)); gid.offset = field_offset; gid.elem.type = load->object_type; + gid.elem.rev_bo = load->rev_bo; gid.field = field; data_offset = bytecode_push_data(runtime, &gid, __alignof__(gid), sizeof(gid)); -- 2.34.1