TNFCTL_KERNEL_OPEN(3TNF) TNF Library Functions TNFCTL_KERNEL_OPEN(3TNF)

tnfctl_kernel_open - create handle for kernel probe control

cc [ flag ... ] file ... -ltnfctl [ library ... ]
#include <tnf/tnfctl.h>
tnfctl_errcode_t tnfctl_kernel_open(tnfctl_handle_t **ret_val);

tnfctl_kernel_open() starts a kernel tracing session and returns in ret_val an opaque handle that can be used to control tracing and probes in the kernel. Only one kernel tracing session is possible at a time on a given machine. An error code of TNFCTL_ERR_BUSY is returned if there is another process using kernel tracing. Use the command


fuser -f /dev/tnfctl

to print the process id of the process currently using kernel tracing. Only a superuser may use tnfctl_kernel_open(). An error code of TNFCTL_ERR_ACCES is returned if the caller does not have the necessary privileges.

tnfctl_kernel_open returns TNFCTL_ERR_NONE upon success.

TNFCTL_ERR_ACCES
Permission denied. Superuser privileges are needed for kernel tracing.

TNFCTL_ERR_BUSY

Another client is currently using kernel tracing.

TNFCTL_ERR_ALLOCFAIL

Memory allocation failed.

TNFCTL_ERR_FILENOTFOUND

/dev/tnfctl not found.

TNFCTL_ERR_INTERNAL

Some other failure occurred.

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
MT Level MT-Safe

prex(1), TNF_PROBE(3TNF), libtnfctl(3TNF), tracing(3TNF), tnf_kernel_probes(5), attributes(7), fuser(8)

March 4, 1997 OmniOS