[lttng-dev] [PATCH v2 lttng-tools] Filter allocation and large bytecode fixes

Christian Babeux christian.babeux at efficios.com
Tue Sep 4 18:57:29 EDT 2012


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




More information about the lttng-dev mailing list