Description, Status codes returned – Intel Extensible Firmware Interface User Manual
Page 726

Extensible Firmware Interface Specification
16-12
12/01/02
Version 1.10
#define EXCEPT_IPF_DEBUG 29
#define EXCEPT_IPF_UNALIGNED_REFERENCE 30
#define EXCEPT_IPF_UNSUPPORTED_DATA_REFERENCE 31
#define EXCEPT_IPF_FP_FAULT 32
#define EXCEPT_IPF_FP_TRAP 33
#define EXCEPT_IPF_LOWER_PRIVILEGE_TRANSFER_TRAP 34
#define EXCEPT_IPF_TAKEN_BRANCH 35
#define EXCEPT_IPF_SINGLE_STEP 36
// 37 - 44 reserved
#define EXCEPT_IPF_IA32_EXCEPTION 45
#define EXCEPT_IPF_IA32_INTERCEPT 46
#define EXCEPT_IPF_IA32_INTERRUPT 47
Description
The
RegisterExceptionCallback()
function registers and enables an exception callback
function for the specified exception. The specified exception must be valid for the instruction set
architecture. To unregister the callback function and stop servicing the exception, call
RegisterExceptionCallback()
passing a
NULL
ExceptionCallback
parameter.
The implementation must handle saving and restoring the processor context to/from the system
context record around calls to the registered callback function. No chaining of exception handlers
is allowed.
It is the responsibility of the caller to insure all parameters are correct. There is no provision for
parameter checking by
RegisterExceptionCallback()
. The implementation behavior
when an invalid parameter is passed is not defined by this specification.
Status Codes Returned
EFI_SUCCESS
The function completed successfully.
EFI_ALREADY_STARTED
Non-
NULL
ExceptionCallback
parameter when a
callback function was previously registered.
EFI_OUT_OF_RESOURCES
System has insufficient memory resources to register new callback
function.