X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Flttng-bytecode.c;h=7708293e93eb1090471df75121a5f7c9b488ac23;hb=dfdb34fd8576fba33510491aef5cd5f6f67b56b8;hp=d6f41c8498048ec23b2662a341231bd1be7087b0;hpb=4697aac7ad1bdb932a843d93076418f4048baad3;p=lttng-modules.git diff --git a/src/lttng-bytecode.c b/src/lttng-bytecode.c index d6f41c84..7708293e 100644 --- a/src/lttng-bytecode.c +++ b/src/lttng-bytecode.c @@ -472,6 +472,11 @@ int link_bytecode(const struct lttng_kernel_event_desc *event_desc, runtime->len = bytecode->bc.reloc_offset; /* copy original bytecode */ memcpy(runtime->code, bytecode->bc.data, runtime->len); + /* Validate bytecode load instructions before relocs. */ + ret = lttng_bytecode_validate_load(runtime); + if (ret) { + goto link_error; + } /* * apply relocs. Those are a uint16_t (offset in bytecode) * followed by a string (field name).