Implement support for lttng-modules syscall filtering
[lttng-tools.git] / src / bin / lttng-sessiond / event.h
1 /*
2 * Copyright (C) 2011 - David Goulet <david.goulet@polymtl.ca>
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License, version 2 only,
6 * as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License along
14 * with this program; if not, write to the Free Software Foundation, Inc.,
15 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
16 */
17
18 #ifndef _LTT_EVENT_H
19 #define _LTT_EVENT_H
20
21 #include "agent.h"
22 #include "trace-kernel.h"
23
24 int event_kernel_disable_tracepoint(struct ltt_kernel_channel *kchan,
25 char *event_name);
26 int event_kernel_disable_syscall(struct ltt_kernel_channel *kchan,
27 char *syscall_name);
28 int event_kernel_disable_all_tracepoints(struct ltt_kernel_channel *kchan);
29 int event_kernel_disable_all(struct ltt_kernel_channel *kchan);
30
31 int event_kernel_enable_tracepoint(struct ltt_kernel_channel *kchan,
32 struct lttng_event *event);
33 int event_kernel_enable_syscall(struct ltt_kernel_channel *kchan,
34 char *syscall_name);
35 int event_kernel_enable_all_tracepoints(struct ltt_kernel_channel *kchan,
36 int kernel_tracer_fd);
37 int event_kernel_enable_all(struct ltt_kernel_channel *kchan,
38 int kernel_tracer_fd);
39
40 int event_ust_enable_tracepoint(struct ltt_ust_session *usess,
41 struct ltt_ust_channel *uchan, struct lttng_event *event,
42 char *filter_expression,
43 struct lttng_filter_bytecode *filter,
44 struct lttng_event_exclusion *exclusion);
45 int event_ust_disable_tracepoint(struct ltt_ust_session *usess,
46 struct ltt_ust_channel *uchan, char *event_name);
47
48 int event_ust_enable_all_tracepoints(struct ltt_ust_session *usess,
49 struct ltt_ust_channel *uchan,
50 char *filter_expression,
51 struct lttng_filter_bytecode *filter);
52 int event_ust_disable_all_tracepoints(struct ltt_ust_session *usess,
53 struct ltt_ust_channel *uchan);
54
55 int event_agent_enable(struct ltt_ust_session *usess, struct agent *agt,
56 struct lttng_event *event, struct lttng_filter_bytecode *filter);
57 int event_agent_enable_all(struct ltt_ust_session *usess, struct agent *agt,
58 struct lttng_event *event, struct lttng_filter_bytecode *filter);
59
60 int event_agent_disable(struct ltt_ust_session *usess, struct agent *agt,
61 char *event_name);
62 int event_agent_disable_all(struct ltt_ust_session *usess, struct agent *agt);
63
64 const char *event_get_default_agent_ust_name(enum lttng_domain_type domain);
65
66 #endif /* _LTT_EVENT_H */
This page took 0.030649 seconds and 5 git commands to generate.