Changeset 64874 in vbox
- Timestamp:
- Dec 14, 2016 2:21:45 PM (8 years ago)
- svn:sync-xref-src-repo-rev:
- 112277
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r64773 r64874 5092 5092 /* TPR patching for 32-bit guests, using the reserved bit in the page tables for MMIO regions. */ 5093 5093 if ( pVM->hm.s.fTprPatchingAllowed 5094 && (GCPhysFaultAddr & PAGE_OFFSET_MASK) == 0x80 /* TPR offset. */5094 && (GCPhysFaultAddr & PAGE_OFFSET_MASK) == XAPIC_OFF_TPR 5095 5095 && ( !(u32ErrCode & X86_TRAP_PF_P) /* Not present */ 5096 5096 || (u32ErrCode & (X86_TRAP_PF_P | X86_TRAP_PF_RSVD)) == (X86_TRAP_PF_P | X86_TRAP_PF_RSVD)) /* MMIO page. */ … … 5102 5102 GCPhysApicBase &= PAGE_BASE_GC_MASK; 5103 5103 5104 if (GCPhysFaultAddr == GCPhysApicBase + 0x80)5104 if (GCPhysFaultAddr == GCPhysApicBase + XAPIC_OFF_TPR) 5105 5105 { 5106 5106 /* Only attempt to patch the instruction once. */ … … 5356 5356 /* Shortcut for APIC TPR reads and writes; only applicable to 32-bit guests. */ 5357 5357 if ( pVM->hm.s.fTprPatchingAllowed 5358 && (uFaultAddress & 0xfff) == 0x80 /* TPR offset. */5359 && !(u32ErrCode & X86_TRAP_PF_P) /* Not present. */5358 && (uFaultAddress & 0xfff) == XAPIC_OFF_TPR 5359 && !(u32ErrCode & X86_TRAP_PF_P) /* Not present. */ 5360 5360 && !CPUMIsGuestInLongModeEx(pCtx) 5361 5361 && !CPUMGetGuestCPL(pVCpu)
Note:
See TracChangeset
for help on using the changeset viewer.