DPDK
24.11.0
|
#include <stdbool.h>
#include <stdio.h>
#include <rte_branch_prediction.h>
#include <rte_common.h>
#include <rte_compat.h>
#include <rte_cycles.h>
#include <rte_per_lcore.h>
#include <rte_stdatomic.h>
#include <rte_string_fns.h>
#include <rte_trace.h>
#include <rte_uuid.h>
Go to the source code of this file.
Macros | |
#define | RTE_TRACE_POINT_ARGS |
#define | RTE_TRACE_POINT(tp, args, ...) __RTE_TRACE_POINT(generic, tp, args, __VA_ARGS__) |
#define | RTE_TRACE_POINT_FP(tp, args, ...) __RTE_TRACE_POINT(fp, tp, args, __VA_ARGS__) |
#define | RTE_TRACE_POINT_REGISTER(trace, name) |
#define | rte_trace_point_emit_u64(val) |
#define | rte_trace_point_emit_i64(val) |
#define | rte_trace_point_emit_u32(val) |
#define | rte_trace_point_emit_i32(val) |
#define | rte_trace_point_emit_u16(val) |
#define | rte_trace_point_emit_i16(val) |
#define | rte_trace_point_emit_u8(val) |
#define | rte_trace_point_emit_i8(val) |
#define | rte_trace_point_emit_int(val) |
#define | rte_trace_point_emit_long(val) |
#define | rte_trace_point_emit_size_t(val) |
#define | rte_trace_point_emit_float(val) |
#define | rte_trace_point_emit_double(val) |
#define | rte_trace_point_emit_ptr(val) |
#define | rte_trace_point_emit_string(val) |
#define | rte_trace_point_emit_blob(val, len) |
#define | RTE_TRACE_BLOB_LEN_MAX 64 |
Functions | |
typedef (uint64_t) rte_trace_point_t | |
__rte_experimental int | rte_trace_point_enable (rte_trace_point_t *tp) |
__rte_experimental int | rte_trace_point_disable (rte_trace_point_t *tp) |
__rte_experimental bool | rte_trace_point_is_enabled (rte_trace_point_t *tp) |
__rte_experimental rte_trace_point_t * | rte_trace_point_lookup (const char *name) |
RTE Tracepoint API
This file provides the tracepoint API to RTE applications.
Definition in file rte_trace_point.h.
#define RTE_TRACE_POINT_ARGS |
Macro to define the tracepoint arguments in RTE_TRACE_POINT macro.
Definition at line 44 of file rte_trace_point.h.
#define RTE_TRACE_POINT | ( | tp, | |
args, | |||
... | |||
) | __RTE_TRACE_POINT(generic, tp, args, __VA_ARGS__) |
Create a tracepoint.
A tracepoint is defined by specifying:
tp | Tracepoint object. Before using the tracepoint, an application needs to define the tracepoint using RTE_TRACE_POINT_REGISTER macro. |
args | C function style input arguments to define the arguments to tracepoint function. |
... | Define the payload of trace function. The payload will be formed using rte_trace_point_emit_* macros. Use ";" delimiter between two payloads. |
Definition at line 80 of file rte_trace_point.h.
#define RTE_TRACE_POINT_FP | ( | tp, | |
args, | |||
... | |||
) | __RTE_TRACE_POINT(fp, tp, args, __VA_ARGS__) |
Create a tracepoint for fast path.
Similar to RTE_TRACE_POINT, except that it is removed at compilation time unless the RTE_ENABLE_TRACE_FP configuration parameter is set.
tp | Tracepoint object. Before using the tracepoint, an application needs to define the tracepoint using RTE_TRACE_POINT_REGISTER macro. |
args | C function style input arguments to define the arguments to tracepoint. function. |
... | Define the payload of trace function. The payload will be formed using rte_trace_point_emit_* macros, Use ";" delimiter between two payloads. |
Definition at line 101 of file rte_trace_point.h.
#define RTE_TRACE_POINT_REGISTER | ( | trace, | |
name | |||
) |
Register a tracepoint.
trace | The tracepoint object created using RTE_TRACE_POINT_REGISTER. |
name | The name of the tracepoint object. |
Definition at line 117 of file rte_trace_point.h.
#define rte_trace_point_emit_u64 | ( | val | ) |
Tracepoint function payload for uint64_t datatype
Definition at line 120 of file rte_trace_point.h.
#define rte_trace_point_emit_i64 | ( | val | ) |
Tracepoint function payload for int64_t datatype
Definition at line 122 of file rte_trace_point.h.
#define rte_trace_point_emit_u32 | ( | val | ) |
Tracepoint function payload for uint32_t datatype
Definition at line 124 of file rte_trace_point.h.
#define rte_trace_point_emit_i32 | ( | val | ) |
Tracepoint function payload for int32_t datatype
Definition at line 126 of file rte_trace_point.h.
#define rte_trace_point_emit_u16 | ( | val | ) |
Tracepoint function payload for uint16_t datatype
Definition at line 128 of file rte_trace_point.h.
#define rte_trace_point_emit_i16 | ( | val | ) |
Tracepoint function payload for int16_t datatype
Definition at line 130 of file rte_trace_point.h.
#define rte_trace_point_emit_u8 | ( | val | ) |
Tracepoint function payload for uint8_t datatype
Definition at line 132 of file rte_trace_point.h.
#define rte_trace_point_emit_i8 | ( | val | ) |
Tracepoint function payload for int8_t datatype
Definition at line 134 of file rte_trace_point.h.
#define rte_trace_point_emit_int | ( | val | ) |
Tracepoint function payload for int datatype
Definition at line 136 of file rte_trace_point.h.
#define rte_trace_point_emit_long | ( | val | ) |
Tracepoint function payload for long datatype
Definition at line 138 of file rte_trace_point.h.
#define rte_trace_point_emit_size_t | ( | val | ) |
Tracepoint function payload for size_t datatype
Definition at line 140 of file rte_trace_point.h.
#define rte_trace_point_emit_float | ( | val | ) |
Tracepoint function payload for float datatype
Definition at line 142 of file rte_trace_point.h.
#define rte_trace_point_emit_double | ( | val | ) |
Tracepoint function payload for double datatype
Definition at line 144 of file rte_trace_point.h.
#define rte_trace_point_emit_ptr | ( | val | ) |
Tracepoint function payload for pointer datatype
Definition at line 146 of file rte_trace_point.h.
#define rte_trace_point_emit_string | ( | val | ) |
Tracepoint function payload for string datatype
Definition at line 148 of file rte_trace_point.h.
#define rte_trace_point_emit_blob | ( | val, | |
len | |||
) |
Tracepoint function to capture a blob.
val | Pointer to the array to be captured. |
len | Length to be captured. The maximum supported length is RTE_TRACE_BLOB_LEN_MAX bytes. |
Definition at line 158 of file rte_trace_point.h.
#define RTE_TRACE_BLOB_LEN_MAX 64 |
Macro to define maximum emit length of blob.
Definition at line 168 of file rte_trace_point.h.
typedef | ( | uint64_t | ) |
The tracepoint object.
__rte_experimental int rte_trace_point_enable | ( | rte_trace_point_t * | tp | ) |
Enable recording events of the given tracepoint in the trace buffer.
tp | The tracepoint object to enable. |
__rte_experimental int rte_trace_point_disable | ( | rte_trace_point_t * | tp | ) |
Disable recording events of the given tracepoint in the trace buffer.
tp | The tracepoint object to disable. |
__rte_experimental bool rte_trace_point_is_enabled | ( | rte_trace_point_t * | tp | ) |
Test if recording events from the given tracepoint is enabled.
tp | The tracepoint object. |
__rte_experimental rte_trace_point_t* rte_trace_point_lookup | ( | const char * | name | ) |
Lookup a tracepoint object from its name.
name | The name of the tracepoint. |