SoW-2019-0007-2: Dynamic Snapshot: Triggers send partial event payload with notifications
[lttng-tools.git] / include / lttng / event-rule / kprobe-internal.h
1 /*
2 * Copyright (C) 2019 Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
3 *
4 * SPDX-License-Identifier: LGPL-2.1-only
5 *
6 */
7
8 #ifndef LTTNG_EVENT_RULE_KPROBE_INTERNAL_H
9 #define LTTNG_EVENT_RULE_KPROBE_INTERNAL_H
10
11 #include <common/buffer-view.h>
12 #include <common/macros.h>
13 #include <lttng/event-rule/event-rule-internal.h>
14 #include <lttng/event-rule/kprobe.h>
15
16 struct lttng_event_rule_kprobe {
17 struct lttng_event_rule parent;
18 char *name;
19 struct {
20 uint64_t address;
21 uint64_t offset;
22 char *symbol_name;
23 bool set;
24 } probe;
25 };
26
27 struct lttng_event_rule_kprobe_comm {
28 uint32_t name_len;
29 uint32_t probe_symbol_name_len;
30 uint64_t probe_address;
31 uint64_t probe_offset;
32 /* name, source symbol_name */
33 char payload[];
34 } LTTNG_PACKED;
35
36 LTTNG_HIDDEN
37 ssize_t lttng_event_rule_kprobe_create_from_buffer(
38 const struct lttng_buffer_view *view,
39 struct lttng_event_rule **rule);
40
41 LTTNG_HIDDEN
42 uint64_t lttng_event_rule_kprobe_get_address(
43 const struct lttng_event_rule *rule);
44
45 LTTNG_HIDDEN
46 uint64_t lttng_event_rule_kprobe_get_offset(
47 const struct lttng_event_rule *rule);
48
49 LTTNG_HIDDEN
50 const char *lttng_event_rule_kprobe_get_symbol_name(
51 const struct lttng_event_rule *rule);
52
53 #endif /* LTTNG_EVENT_RULE_KPROBE_INTERNAL_H */
This page took 0.031075 seconds and 5 git commands to generate.