projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update lttng.h with padding
[lttng-tools.git]
/
include
/
lttng
/
lttng.h
diff --git
a/include/lttng/lttng.h
b/include/lttng/lttng.h
index 433d2d804829749b2909b2485213b1c06607377f..bdbf5e93550ea40aa86e1da17e02badf506da3ff 100644
(file)
--- a/
include/lttng/lttng.h
+++ b/
include/lttng/lttng.h
@@
-29,7
+29,7
@@
/*
* Event symbol length. Copied from LTTng kernel ABI.
*/
/*
* Event symbol length. Copied from LTTng kernel ABI.
*/
-#define LTTNG_SYMBOL_NAME_LEN 256
+#define LTTNG_SYMBOL_NAME_LEN
256
/*
* Every lttng_event_* structure both apply to kernel event and user-space
/*
* Every lttng_event_* structure both apply to kernel event and user-space
@@
-71,8
+71,9
@@
enum lttng_event_type {
* Loglevel information.
*/
enum lttng_loglevel_type {
* Loglevel information.
*/
enum lttng_loglevel_type {
- LTTNG_EVENT_LOGLEVEL = 0,
- LTTNG_EVENT_LOGLEVEL_ONLY = 1,
+ LTTNG_EVENT_LOGLEVEL_ALL = 0,
+ LTTNG_EVENT_LOGLEVEL_RANGE = 1,
+ LTTNG_EVENT_LOGLEVEL_SINGLE = 2,
};
/*
};
/*
@@
-102,26
+103,39
@@
enum lttng_calibrate_type {
LTTNG_CALIBRATE_FUNCTION = 0,
};
LTTNG_CALIBRATE_FUNCTION = 0,
};
+#define LTTNG_DOMAIN_PADDING1 16
+#define LTTNG_DOMAIN_PADDING2 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_domain {
enum lttng_domain_type type;
struct lttng_domain {
enum lttng_domain_type type;
+ char padding[LTTNG_DOMAIN_PADDING1];
+
union {
pid_t pid;
char exec_name[NAME_MAX];
union {
pid_t pid;
char exec_name[NAME_MAX];
+ char padding[LTTNG_DOMAIN_PADDING2];
} attr;
};
/* Perf counter attributes */
} attr;
};
/* Perf counter attributes */
+#define LTTNG_PERF_EVENT_PADDING1 16
struct lttng_event_perf_counter_ctx {
uint32_t type;
uint64_t config;
char name[LTTNG_SYMBOL_NAME_LEN];
struct lttng_event_perf_counter_ctx {
uint32_t type;
uint64_t config;
char name[LTTNG_SYMBOL_NAME_LEN];
+
+ char padding[LTTNG_PERF_EVENT_PADDING1];
};
/* Event/Channel context */
};
/* Event/Channel context */
+#define LTTNG_EVENT_CONTEXT_PADDING1 16
+#define LTTNG_EVENT_CONTEXT_PADDING2 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_event_context {
enum lttng_event_context_type ctx;
struct lttng_event_context {
enum lttng_event_context_type ctx;
+ char padding[LTTNG_EVENT_CONTEXT_PADDING1];
+
union {
struct lttng_event_perf_counter_ctx perf_counter;
union {
struct lttng_event_perf_counter_ctx perf_counter;
+ char padding[LTTNG_EVENT_CONTEXT_PADDING2];
} u;
};
} u;
};
@@
-130,43
+144,56
@@
struct lttng_event_context {
*
* Either addr is used or symbol_name and offset.
*/
*
* Either addr is used or symbol_name and offset.
*/
+#define LTTNG_EVENT_PROBE_PADDING1 16
struct lttng_event_probe_attr {
uint64_t addr;
uint64_t offset;
char symbol_name[LTTNG_SYMBOL_NAME_LEN];
struct lttng_event_probe_attr {
uint64_t addr;
uint64_t offset;
char symbol_name[LTTNG_SYMBOL_NAME_LEN];
+
+ char padding[LTTNG_EVENT_PROBE_PADDING1];
};
/*
* Function tracer
*/
};
/*
* Function tracer
*/
+#define LTTNG_EVENT_FUNCTION_PADDING1 16
struct lttng_event_function_attr {
char symbol_name[LTTNG_SYMBOL_NAME_LEN];
struct lttng_event_function_attr {
char symbol_name[LTTNG_SYMBOL_NAME_LEN];
+
+ char padding[LTTNG_EVENT_FUNCTION_PADDING1];
};
/*
* Generic lttng event
*/
};
/*
* Generic lttng event
*/
+#define LTTNG_EVENT_PADDING1 16
+#define LTTNG_EVENT_PADDING2 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_event {
enum lttng_event_type type;
char name[LTTNG_SYMBOL_NAME_LEN];
enum lttng_loglevel_type loglevel_type;
struct lttng_event {
enum lttng_event_type type;
char name[LTTNG_SYMBOL_NAME_LEN];
enum lttng_loglevel_type loglevel_type;
- char loglevel[LTTNG_SYMBOL_NAME_LEN];
- int64_t loglevel_value; /* for printing */
+ int loglevel;
uint32_t enabled;
pid_t pid;
uint32_t enabled;
pid_t pid;
+
+ char padding[LTTNG_EVENT_PADDING1];
+
/* Per event type configuration */
union {
struct lttng_event_probe_attr probe;
struct lttng_event_function_attr ftrace;
/* Per event type configuration */
union {
struct lttng_event_probe_attr probe;
struct lttng_event_function_attr ftrace;
+
+ char padding[LTTNG_EVENT_PADDING2];
} attr;
};
/*
* Tracer channel attributes. For both kernel and user-space.
*/
} attr;
};
/*
* Tracer channel attributes. For both kernel and user-space.
*/
+#define LTTNG_CHANNEL_ATTR_PADDING1 LTTNG_SYMBOL_NAME_LEN + 32
struct lttng_channel_attr {
int overwrite; /* 1: overwrite, 0: discard */
uint64_t subbuf_size; /* bytes */
struct lttng_channel_attr {
int overwrite; /* 1: overwrite, 0: discard */
uint64_t subbuf_size; /* bytes */
@@
-174,19
+201,27
@@
struct lttng_channel_attr {
unsigned int switch_timer_interval; /* usec */
unsigned int read_timer_interval; /* usec */
enum lttng_event_output output; /* splice, mmap */
unsigned int switch_timer_interval; /* usec */
unsigned int read_timer_interval; /* usec */
enum lttng_event_output output; /* splice, mmap */
+
+ char padding[LTTNG_CHANNEL_ATTR_PADDING1];
};
/*
* Channel information structure. For both kernel and user-space.
*/
};
/*
* Channel information structure. For both kernel and user-space.
*/
+#define LTTNG_CHANNEL_PADDING1 16
struct lttng_channel {
char name[LTTNG_SYMBOL_NAME_LEN];
uint32_t enabled;
struct lttng_channel_attr attr;
struct lttng_channel {
char name[LTTNG_SYMBOL_NAME_LEN];
uint32_t enabled;
struct lttng_channel_attr attr;
+
+ char padding[LTTNG_CHANNEL_PADDING1];
};
};
+#define LTTNG_CALIBRATE_PADDING1 16
struct lttng_calibrate {
enum lttng_calibrate_type type;
struct lttng_calibrate {
enum lttng_calibrate_type type;
+
+ char padding[LTTNG_CALIBRATE_PADDING1];
};
/*
};
/*
@@
-196,19
+231,25
@@
struct lttng_calibrate {
* daemon *to* the lttng client. It's basically a 'human' representation of
* tracing entities (here a session).
*/
* daemon *to* the lttng client. It's basically a 'human' representation of
* tracing entities (here a session).
*/
+#define LTTNG_SESSION_PADDING1 16
struct lttng_session {
char name[NAME_MAX];
/* The path where traces are written */
char path[PATH_MAX];
uint32_t enabled; /* enabled/started: 1, disabled/stopped: 0 */
struct lttng_session {
char name[NAME_MAX];
/* The path where traces are written */
char path[PATH_MAX];
uint32_t enabled; /* enabled/started: 1, disabled/stopped: 0 */
+
+ char padding[LTTNG_SESSION_PADDING1];
};
/*
* Handle used as a context for commands.
*/
};
/*
* Handle used as a context for commands.
*/
+#define LTTNG_HANDLE_PADDING1 16
struct lttng_handle {
char session_name[NAME_MAX];
struct lttng_domain domain;
struct lttng_handle {
char session_name[NAME_MAX];
struct lttng_domain domain;
+
+ char padding[LTTNG_HANDLE_PADDING1];
};
/*
};
/*
This page took
0.026692 seconds
and
4
git commands to generate.