Records a trace event for a generic trace channel.
#include <sys/types.h> #include <sys/errno.h> #include <sys/trchkid.h>
void trcgenk (chan, hk_word, data_word, len, buf)
unsigned int chan, hk_word, data_word, len;
char * buf;
chan | Specifies the channel number for the trace session. This number is obtained from the trcstart subroutine. |
hk_word | An integer containing a hook ID and a hook type: |
data_word | Specifies a word of user-defined data. |
len | Specifies the length in bytes of the buffer specified by the buf parameter. |
buf | Points to a buffer of trace data. The maximum amount of trace data is 4096 bytes. |
The trcgenk kernel service records a trace event if a trace session is active for the specified trace channel. If a trace session is not active, the trcgenk kernel service simply returns. The trcgenk kernel service is located in pinned kernel memory.
The trcgenk kernel service is used to record a trace entry consisting of an hk_word entry, a data_word entry, and a variable number of bytes of trace data.
The trcgenk kernel service can be called from either the process or interrupt environment.
The trcgenk kernel service has no return values.
The trace daemon.
The trcgenkt kernel service.
The trcgen subroutine, trcgent subroutine, trchook subroutine, trcoff subroutine, trcon subroutine, trcstart subroutine, trcstop subroutine.
RAS Kernel Services in AIX 5L Version 5.2 Kernel Extensions and Device Support Programming Concepts.