Hi all, After some discussion with Mathieu, it was decided that we should accept filter bytecode with a length of 65536 bytes. In order to fully support this length, the len field of lttng_ust_filter_bytecode must be able to hold that value, so we must change the len type from a uint16_t to a uint32_t.
Also, the relocation table offset field must be able to hold a value larger than 65535 since the table is located at the end of the generated bytecode. The field type must be changed from a uint16_t to a uint32_t. Theses changes _will_ break the filter ABI. Since we are in RC and the lttng_ust_filter_bytecode struct has only been introduced with the new filtering feature this seems to be a reasonable approach. This change must also be reflected on the lttng-ust side. A subsequent patch for lttng-ust will address this particular concern. Changelog v2: 1/3 - Already merged. 2/3 - Respin. Support 65536 bytes bytecode len + filter ABI changes. 3/3 - Already merged. Thanks, Christian Babeux (1): Fix: Accept bytecode of length 65536 bytes src/bin/lttng-sessiond/lttng-ust-abi.h | 6 +++--- src/common/sessiond-comm/sessiond-comm.h | 6 +++--- src/lib/lttng-ctl/filter/filter-visitor-generate-bytecode.c | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) -- 1.7.11.4 _______________________________________________ lttng-dev mailing list [email protected] http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
