#include <sys/types.h>
#include <lttng/ust-abi.h>
-
-#ifndef LTTNG_PACKED
-#error "LTTNG_PACKED should be defined"
-#endif
+#include <lttng/ust-utils.h>
#ifndef LTTNG_UST_UUID_LEN
#define LTTNG_UST_UUID_LEN 16
/* Default unix socket path */
#define LTTNG_UST_SOCK_FILENAME \
"lttng-ust-sock-" \
- __ust_stringify(LTTNG_UST_ABI_MAJOR_VERSION)
+ lttng_ust_stringify(LTTNG_UST_ABI_MAJOR_VERSION)
/*
* Shared memory files path are automatically related to shm root, e.g.
*/
#define LTTNG_UST_WAIT_FILENAME \
"lttng-ust-wait-" \
- __ust_stringify(LTTNG_UST_ABI_MAJOR_VERSION)
-
-struct lttng_ust_shm_handle;
-struct lttng_ust_lib_ring_buffer;
+ lttng_ust_stringify(LTTNG_UST_ABI_MAJOR_VERSION)
struct ustctl_consumer_channel_attr {
enum lttng_ust_abi_chan_type type;
uint32_t chan_id; /* channel ID */
unsigned char uuid[LTTNG_UST_UUID_LEN]; /* Trace session unique ID */
int64_t blocking_timeout; /* Blocking timeout (usec) */
-} LTTNG_PACKED;
+} __attribute__((packed));
/*
* API used by sessiond.
int32_t encoding; /* enum ustctl_string_encodings */
uint16_t alignment; /* in bits */
char padding[USTCTL_UST_INTEGER_TYPE_PADDING];
-} LTTNG_PACKED;
+} __attribute__((packed));
#define USTCTL_UST_FLOAT_TYPE_PADDING 24
struct ustctl_float_type {
uint32_t reverse_byte_order;
uint16_t alignment; /* in bits */
char padding[USTCTL_UST_FLOAT_TYPE_PADDING];
-} LTTNG_PACKED;
+} __attribute__((packed));
#define USTCTL_UST_ENUM_VALUE_PADDING 15
struct ustctl_enum_value {
uint64_t value;
uint8_t signedness;
char padding[USTCTL_UST_ENUM_VALUE_PADDING];
-} LTTNG_PACKED;
+} __attribute__((packed));
enum ustctl_ust_enum_entry_options {
USTCTL_UST_ENUM_ENTRY_OPTION_IS_AUTO = 1U << 0,
union {
struct {
uint32_t options;
- } LTTNG_PACKED extra;
+ } __attribute__((packed)) extra;
char padding[USTCTL_UST_ENUM_ENTRY_PADDING];
} u;
-} LTTNG_PACKED;
+} __attribute__((packed));
/* legacy */
#define USTCTL_UST_BASIC_TYPE_PADDING 296
} string;
struct ustctl_float_type _float;
char padding[USTCTL_UST_BASIC_TYPE_PADDING];
-} LTTNG_PACKED;
+} __attribute__((packed));
/* legacy */
struct ustctl_basic_type {
union {
union _ustctl_basic_type basic;
} u;
-} LTTNG_PACKED;
+} __attribute__((packed));
/*
* Padding is derived from largest member: u.legacy.sequence which
} legacy;
char padding[USTCTL_UST_TYPE_PADDING];
} u;
-} LTTNG_PACKED;
+} __attribute__((packed));
#define USTCTL_UST_FIELD_PADDING 28
struct ustctl_field {
char name[LTTNG_UST_ABI_SYM_NAME_LEN];
struct ustctl_type type;
char padding[USTCTL_UST_FIELD_PADDING];
-} LTTNG_PACKED;
+} __attribute__((packed));
/*
* Returns 0 on success, negative error value on error.