include vmm.inc
IPF_Data struc
IPF_LinAddr dd ? ; CR2 address of fault
IPF_MapPageNum dd ? ; possible converted page number of fault
IPF_PTEEntry dd ? ; contents of PTE that faulted
IPF_FaultingVM dd ? ; may not = current VM (IPF_V86PgH set)
IPF_Flags dd ? ; flags
IPF_Data ends
The IPF_Data structure contains information about the current invalid page fault.
Value | Meaning |
---|---|
IPF_InvTyp | Page has invalid not-present type. |
IPF_PgDir | Page directory entry not present (not-present page table). |
IPF_PgErr | Page swap device could not page for some reason. |
IPF_PM | Page fault caused by virtual machine running in protected mode. |
IPF_ReFlt | Re-entrant page fault. |
IPF_V86 | Page fault caused by virtual machine running in V86 mode. |
IPF_V86Pg | Unexpected not-present page in V86. |
IPF_V86PgH | Unexpected not-present page in V86 at high linear address. |
IPF_VMM | Page fault caused by a virtual device. |
Invalid page faults occur in a virtual machine other than the current virtual machine if the high linear address of the virtual machine is accessed. In this case, the IPF_FaultingVM field is set to the handle of the virtual machine that owns the high linear address.
Hook_Invalid_Page_Fault