Manual Page Result
0
Command: dt | Section: 4 | Source: OpenBSD | File: dt.4
DT(4) FreeBSD Kernel Interfaces Manual DT(4)
NAME
dt - dynamic tracer
SYNOPSIS
pseudo-device dt
DESCRIPTION
System and application tracing can happen in the kernel. It has to be
configured and enabled through the ioctl(2) interface exposed by the
pseudo-device /dev/dt.
This device can only be opened when the kern.allowdt sysctl(2) variable
is set.
IOCTL INTERFACE
The ioctl(2) command codes below are defined in <dev/dt/dtvar.h>.
DTIOCGPLIST struct dtioc_probe *dtpr
Get available probe entries.
struct dtioc_probe {
size_t dtpr_size;
struct dtioc_probe_info *dtpr_probes;
};
If dtpr_size is non-zero, as many probes as possible that can fit
into this size will be copied into the supplied buffer. On exit,
dtpr_size is always set to the total size required to hold all
probe entries (i.e., it is set to sizeof(struct dtioc_probe_info)
* dt_nprobes).
DTIOCGSTATS struct dtioc_stat *dtst
Get statistics for current recording.
struct dtioc_stat {
uint64_t dtst_readevt;
uint64_t dtst_dropevt;
};
DTIOCRECORD int on
Start or stop recording.
DTIOCPRBENABLE struct dtioc_req *dtrq
Enable the given probe for recording.
struct dtioc_req {
uint32_t dtrq_pbn;
struct dt_filter dtrq_filter;
uint32_t dtrq_rate;
uint64_t dtrq_evtflags;
};
FILES
/dev/dt dynamic tracing device.
ERRORS
An open of /dev/dt will fail if:
[EPERM] the kern.allowdt sysctl(2) variable wasn't set.
[ENOMEM] not enough memory space was available.
SEE ALSO
ioctl(2), bt(5), btrace(8)
HISTORY
The dt dynamic tracing mechanism first appeared in OpenBSD 6.7.
FreeBSD 14.1-RELEASE-p8 December 2, 2020 FreeBSD 14.1-RELEASE-p8