VirtualBox

Changeset 30056 in vbox


Ignore:
Timestamp:
Jun 7, 2010 8:29:07 AM (15 years ago)
Author:
vboxsync
Message:

VMM: Reset the ring-0 jump buffer of the EMT that guru meditated.

Location:
trunk/src/VBox/VMM
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMGuruMeditation.cpp

    r30050 r30056  
    520520     * Reset the ring-0 long jump buffer and stack.
    521521     */
    522     /** @todo reset the R0 for the calling virtual cpu. We'll assert (luckily) in
    523      *        PGMPhys.cpp otherwise. */
     522    pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call = 0;
     523#ifdef RT_ARCH_X86
     524    pVCpu->vmm.s.CallRing3JmpBufR0.eip          = 0;
     525#else
     526    pVCpu->vmm.s.CallRing3JmpBufR0.rip          = 0;
     527#endif
     528    *(uint64_t *)pVCpu->vmm.s.pbEMTStackR3      = 0; /* clear marker  */
    524529}
    525530
  • trunk/src/VBox/VMM/VMMR0/VMMR0JmpA-x86.asm

    r28800 r30056  
    9898    mov     ecx, [esp + 0ch]            ; pvArg1
    9999    mov     eax, [esp + 08h]            ; pfn
    100 %if 1                                   ; Use this to eat of some extra stack - handy for finding paths using lots of stack.
    101  %define FRAME_OFFSET 0
    102 %else
    103  %define FRAME_OFFSET 1024
    104 %endif
     100 %if 1                                  ; Use this to eat of some extra stack - handy for finding paths using lots of stack.
     101  %define FRAME_OFFSET 0
     102 %else
     103  %define FRAME_OFFSET 1024
     104 %endif
    105105    mov     [esi - FRAME_OFFSET + 04h], edx
    106106    mov     [esi - FRAME_OFFSET      ], ecx
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette