#include <dr_events.h>
Data Fields | |
dr_kernel_xfer_type_t | type |
const dr_mcontext_t * | source_mcontext |
app_pc | target_pc |
reg_t | target_xsp |
int | sig |
Data structure passed for dr_register_kernel_xfer_event().
int _dr_kernel_xfer_info_t::sig |
For DR_XFER_SIGNAL_DELIVERY and DR_XFER_SIGNAL_RETURN, the signal number.
const dr_mcontext_t* _dr_kernel_xfer_info_t::source_mcontext |
The source machine context which is about to be changed. This may be NULL if it is unknown, which is the case for DR_XFER_CALLBACK_DISPATCHER. For DR_XFER_RSEQ_ABORT, due to the constraints of handling restartable sequences, the abort PC will point prior to the committing store, while that store already executed during instrumentation. We recommend that clients treat the store as never-executed in that situation, if possible, to produce a more-representative sequence.
app_pc _dr_kernel_xfer_info_t::target_pc |
The target program counter of the transfer. To obtain the full target state, call dr_get_mcontext(). (For efficiency purposes, only frequently needed state is included by default.)
reg_t _dr_kernel_xfer_info_t::target_xsp |
The target stack pointer of the transfer. To obtain the full target state, call dr_get_mcontext(). (For efficiency purposes, only frequently needed state is included by default.)
dr_kernel_xfer_type_t _dr_kernel_xfer_info_t::type |
The type of event.