/* libltt header file
*
* Copyright 2005-
- * Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
+ * Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
*
*
* This program is free software; you can redistribute it and/or modify
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*
enum trace_mode {
LTT_TRACE_NORMAL,
- LTT_TRACE_FLIGHT
+ LTT_TRACE_FLIGHT,
+ LTT_TRACE_HYBRID
};
typedef struct lttctl_peer_msg {
char trace_type[NAME_MAX];
enum trace_op op;
union {
- struct {
- enum trace_mode mode;
- unsigned subbuf_size;
- unsigned n_subbufs;
- } new_trace;
+ struct {
+ enum trace_mode mode;
+ unsigned subbuf_size_low;
+ unsigned n_subbufs_low;
+ unsigned subbuf_size_med;
+ unsigned n_subbufs_med;
+ unsigned subbuf_size_high;
+ unsigned n_subbufs_high;
+ } new_trace;
} args;
} lttctl_peer_msg_t;
struct lttctl_handle
{
- int fd;
- //u_int8_t blocking;
- struct sockaddr_nl local;
- struct sockaddr_nl peer;
+ int fd;
+ //u_int8_t blocking;
+ struct sockaddr_nl local;
+ struct sockaddr_nl peer;
};
typedef struct lttctl_resp_msg {
int lttctl_create_trace(const struct lttctl_handle *h,
- char *name, enum trace_mode mode, char *trace_type, unsigned subbuf_size, unsigned n_subbufs);
+ char *name, enum trace_mode mode, char *trace_type,
+ unsigned subbuf_size_low, unsigned n_subbufs_low,
+ unsigned subbuf_size_med, unsigned n_subbufs_med,
+ unsigned subbuf_size_high, unsigned n_subbufs_high);
int lttctl_destroy_trace(const struct lttctl_handle *handle, char *name);
#define LTTCTLM_BASE 0x10
#define LTTCTLM_CONTROL (LTTCTLM_BASE + 1) /* LTT control message */
-
#endif //_LIBLTT_H