#include "common/macros.h"
#include "common/ust-context-provider.h"
+/*
+ * The context procname length is part of the LTTng-UST ABI.
+ * TODO: At the next breaking protocol bump, all users of this macro
+ * should instead use LTTNG_UST_ABI_PROCNAME_LEN.
+ */
+#define LTTNG_UST_CONTEXT_PROCNAME_LEN 17
+
struct lttng_ust_abi_obj;
struct lttng_event_notifier_group;
void *owner;
int notification_fd;
struct cds_list_head node; /* Event notifier group handle list */
- struct cds_list_head enablers_head;
+
+ /* List of non-synchronized enablers */
+ struct cds_list_head unsync_enablers_head;
+ /* List of synchronized enablers */
+ struct cds_list_head sync_enablers_head;
+
struct cds_list_head event_notifiers_head; /* list of event_notifiers */
struct lttng_ust_event_notifier_ht event_notifiers_ht; /* hashtable of event_notifiers */
struct lttng_ust_ctx *ctx; /* contexts for filters. */
struct cds_list_head events_head; /* list of events */
struct cds_list_head node; /* Session list */
- /* List of enablers */
- struct cds_list_head enablers_head;
+ /* List of non-synchronized enablers */
+ struct cds_list_head unsync_enablers_head;
+ /* List of synchronized enablers */
+ struct cds_list_head sync_enablers_head;
+
struct lttng_ust_event_ht events_ht; /* ht of events */
void *owner; /* object owner */
- int tstate:1; /* Transient enable state */
+ unsigned int tstate:1; /* Transient enable state */
- int statedump_pending:1;
+ unsigned int statedump_pending:1;
struct lttng_ust_enum_ht enums_ht; /* ht of enumerations */
struct cds_list_head enums_head;
struct lttng_ust_channel_common *pub; /* Public channel interface */
int objd; /* Object associated with channel. */
- int tstate:1; /* Transient enable state */
+ unsigned int tstate:1; /* Transient enable state */
};
struct lttng_ust_channel_buffer_private {