2 * Copyright (C) 2019 Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
4 * SPDX-License-Identifier: LGPL-2.1-only
8 #ifndef LTTNG_EVENT_RULE_KPROBE_INTERNAL_H
9 #define LTTNG_EVENT_RULE_KPROBE_INTERNAL_H
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>
16 struct lttng_event_rule_kprobe
{
17 struct lttng_event_rule parent
;
27 struct lttng_event_rule_kprobe_comm
{
29 uint32_t probe_symbol_name_len
;
30 uint64_t probe_address
;
31 uint64_t probe_offset
;
32 /* name, source symbol_name */
37 ssize_t
lttng_event_rule_kprobe_create_from_buffer(
38 const struct lttng_buffer_view
*view
,
39 struct lttng_event_rule
**rule
);
42 uint64_t lttng_event_rule_kprobe_get_address(
43 const struct lttng_event_rule
*rule
);
46 uint64_t lttng_event_rule_kprobe_get_offset(
47 const struct lttng_event_rule
*rule
);
50 const char *lttng_event_rule_kprobe_get_symbol_name(
51 const struct lttng_event_rule
*rule
);
53 #endif /* LTTNG_EVENT_RULE_KPROBE_INTERNAL_H */