SoW-2019-0007-2: Dynamic Snapshot: Triggers send partial event payload with notifications
[lttng-tools.git] / include / lttng / event-rule / kprobe-internal.h
CommitLineData
5024c2ac
JR
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
16struct 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
27struct 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
36LTTNG_HIDDEN
37ssize_t lttng_event_rule_kprobe_create_from_buffer(
38 const struct lttng_buffer_view *view,
39 struct lttng_event_rule **rule);
40
41LTTNG_HIDDEN
42uint64_t lttng_event_rule_kprobe_get_address(
43 const struct lttng_event_rule *rule);
44
45LTTNG_HIDDEN
46uint64_t lttng_event_rule_kprobe_get_offset(
47 const struct lttng_event_rule *rule);
48
49LTTNG_HIDDEN
50const 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.026684 seconds and 5 git commands to generate.