2 * Copyright (C) 2021 Francis Deslauriers <francis.deslauriers@efficios.com>
4 * SPDX-License-Identifier: LGPL-2.1-only
8 #ifndef LTTNG_EVENT_RULE_KERNEL_FUNCTION_INTERNAL_H
9 #define LTTNG_EVENT_RULE_KERNEL_FUNCTION_INTERNAL_H
11 #include <common/payload-view.h>
12 #include <common/macros.h>
13 #include <lttng/event-rule/event-rule-internal.h>
14 #include <lttng/event-rule/kernel-function.h>
16 struct lttng_event_rule_kernel_function
{
17 struct lttng_event_rule parent
;
19 struct lttng_kernel_function_location
*location
;
22 struct lttng_event_rule_kernel_function_comm
{
23 /* Includes terminator `\0`. */
25 uint32_t location_len
;
27 * Payload is composed of, in that order:
28 * - name (null terminated),
29 * - kernel function location object.
35 ssize_t
lttng_event_rule_kernel_function_create_from_payload(
36 struct lttng_payload_view
*payload
,
37 struct lttng_event_rule
**rule
);
39 #endif /* LTTNG_EVENT_RULE_KERNEL_FUNCTION_INTERNAL_H */