* Copyright (C) 2011 - David Goulet <david.goulet@polymtl.ca>
*
* This library is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; only version 2.1 of the License.
+ * under the terms of the GNU Lesser General Public License, version 2.1 only,
+ * as published by the Free Software Foundation.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
LTTNG_CALIBRATE_FUNCTION = 0,
};
+/*
+ * The structures should be initialized to zero before use.
+ */
#define LTTNG_DOMAIN_PADDING1 16
#define LTTNG_DOMAIN_PADDING2 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_domain {
} attr;
};
-/* Perf counter attributes */
+/*
+ * Perf counter attributes
+ *
+ * The structures should be initialized to zero before use.
+ */
#define LTTNG_PERF_EVENT_PADDING1 16
struct lttng_event_perf_counter_ctx {
uint32_t type;
char padding[LTTNG_PERF_EVENT_PADDING1];
};
-/* Event/Channel context */
+/*
+ * Event/channel context
+ *
+ * The structures should be initialized to zero before use.
+ */
#define LTTNG_EVENT_CONTEXT_PADDING1 16
#define LTTNG_EVENT_CONTEXT_PADDING2 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_event_context {
* Event probe.
*
* Either addr is used or symbol_name and offset.
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_EVENT_PROBE_PADDING1 16
struct lttng_event_probe_attr {
/*
* Function tracer
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_EVENT_FUNCTION_PADDING1 16
struct lttng_event_function_attr {
/*
* Generic lttng event
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_EVENT_PADDING1 16
#define LTTNG_EVENT_PADDING2 LTTNG_SYMBOL_NAME_LEN + 32
/*
* Tracer channel attributes. For both kernel and user-space.
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_CHANNEL_ATTR_PADDING1 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_channel_attr {
/*
* Channel information structure. For both kernel and user-space.
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_CHANNEL_PADDING1 16
struct lttng_channel {
* This is an 'output data' meaning that it only comes *from* the session
* daemon *to* the lttng client. It's basically a 'human' representation of
* tracing entities (here a session).
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_SESSION_PADDING1 16
struct lttng_session {
/*
* Handle used as a context for commands.
+ *
+ * The structures should be initialized to zero before use.
*/
#define LTTNG_HANDLE_PADDING1 16
struct lttng_handle {
const char *channel_name);
/*
- * Create or enable a kernel event (or events) for a channel.
+ * Create or enable an event (or events) for a channel.
*
* If the event you are trying to enable does not exist, it will be created,
* else it is enabled.
struct lttng_event *ev, const char *channel_name);
/*
- * Create or enable a kernel channel.
+ * Create or enable a channel.
* The channel name cannot be NULL.
*/
extern int lttng_enable_channel(struct lttng_handle *handle,
struct lttng_channel *chan);
/*
- * Disable kernel event(s) of a channel and domain.
+ * Disable event(s) of a channel and domain.
*
* If event_name is NULL, all events are disabled.
* If channel_name is NULL, the default channel is used (channel0).
const char *name, const char *channel_name);
/*
- * Disable kernel channel.
+ * Disable channel.
*
* The channel name cannot be NULL.
*/