[][src]Function libipt_sys::pt_blk_next

pub unsafe extern "C" fn pt_blk_next(
    decoder: *mut pt_block_decoder,
    block: *mut pt_block,
    size: usize
) -> c_int

Determine the next block of instructions.

On success, provides the next block of instructions in execution order in @block.

The @size argument must be set to sizeof(struct pt_block).

Returns a non-negative pt_status_flag bit-vector on success, a negative error code otherwise.

Returns pts_eos to indicate the end of the trace stream. Subsequent calls to pt_block_next() will continue to return pts_eos until trace is required to determine the next instruction.

Returns -pte_bad_context if the decoder encountered an unexpected packet. Returns -pte_bad_opc if the decoder encountered unknown packets. Returns -pte_bad_packet if the decoder encountered unknown packet payloads. Returns -pte_bad_query if the decoder got out of sync. Returns -pte_eos if decoding reached the end of the Intel PT buffer. Returns -pte_invalid if @decoder or @block is NULL. Returns -pte_nomap if the memory at the instruction address can't be read. Returns -pte_nosync if @decoder is out of sync.