X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttng-events.h;h=234d4bcb9ff01f5aa83745f925e1775fd9eb5bd4;hb=d2507215d183300e9933c68a039f3aa07d5a57a4;hp=4bf8920f3fc18fe74b24704f7f45e1c4e244ec61;hpb=9616f0bf9524fc6b8ad184e87f4935c97f78a8bc;p=lttng-modules.git diff --git a/lttng-events.h b/lttng-events.h index 4bf8920f..234d4bcb 100644 --- a/lttng-events.h +++ b/lttng-events.h @@ -71,15 +71,16 @@ struct lttng_enum_entry { const char *string; }; -#define __type_integer(_type, _byte_order, _base, _encoding) \ +#define __type_integer(_type, _size, _alignment, _signedness, \ + _byte_order, _base, _encoding) \ { \ .atype = atype_integer, \ .u.basic.integer = \ { \ - .size = sizeof(_type) * CHAR_BIT, \ - .alignment = lttng_alignof(_type) * CHAR_BIT, \ - .signedness = lttng_is_signed_type(_type), \ - .reverse_byte_order = _byte_order != __BYTE_ORDER, \ + .size = (_size) ? : sizeof(_type) * CHAR_BIT, \ + .alignment = (_alignment) ? : lttng_alignof(_type) * CHAR_BIT, \ + .signedness = (_signedness) >= 0 ? (_signedness) : lttng_is_signed_type(_type), \ + .reverse_byte_order = _byte_order != __BYTE_ORDER, \ .base = _base, \ .encoding = lttng_encode_##_encoding, \ }, \ @@ -118,10 +119,12 @@ struct lttng_type { struct { struct lttng_basic_type elem_type; unsigned int length; /* num. elems. */ + unsigned int elem_alignment; /* alignment override */ } array; struct { struct lttng_basic_type length_type; struct lttng_basic_type elem_type; + unsigned int elem_alignment; /* alignment override */ } sequence; } u; }; @@ -557,6 +560,9 @@ int lttng_session_untrack_pid(struct lttng_session *session, int pid); int lttng_session_list_tracker_pids(struct lttng_session *session); +void lttng_clock_ref(void); +void lttng_clock_unref(void); + #if defined(CONFIG_HAVE_SYSCALL_TRACEPOINTS) int lttng_syscalls_register(struct lttng_channel *chan, void *filter); int lttng_syscalls_unregister(struct lttng_channel *chan);