VirtualBox

Changeset 73186 in vbox


Ignore:
Timestamp:
Jul 17, 2018 3:18:57 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123789
Message:

NEM/win: Fixed interrupt window handling when VidMessageSlotHandleAndGetNext times out. (Happened early during win10-efi-amd64 boot.) bugref:9044

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/NEMAllNativeTemplate-win.cpp.h

    r73097 r73186  
    41494149         */
    41504150        if (      (pVCpu->cpum.GstCtx.fExtrn & (CPUMCTX_EXTRN_ALL | CPUMCTX_EXTRN_NEM_WIN_MASK))
    4151                !=                 (CPUMCTX_EXTRN_ALL | CPUMCTX_EXTRN_NEM_WIN_MASK)
    4152             || pVCpu->nem.s.fDesiredInterruptWindows
    4153             || pVCpu->nem.s.fCurrentInterruptWindows != pVCpu->nem.s.fDesiredInterruptWindows)
    4154         {
     4151               !=                              (CPUMCTX_EXTRN_ALL | CPUMCTX_EXTRN_NEM_WIN_MASK)
     4152            || (  (   pVCpu->nem.s.fDesiredInterruptWindows
     4153                   || pVCpu->nem.s.fCurrentInterruptWindows != pVCpu->nem.s.fDesiredInterruptWindows)
    41554154# ifdef NEM_WIN_TEMPLATE_MODE_OWN_RUN_API
    4156             Assert(pVCpu->nem.s.fHandleAndGetFlags != VID_MSHAGN_F_GET_NEXT_MESSAGE /* not running */);
     4155                && pVCpu->nem.s.fHandleAndGetFlags != VID_MSHAGN_F_GET_NEXT_MESSAGE /* not running */
     4156# endif
     4157               )
     4158           )
     4159        {
     4160# ifdef NEM_WIN_TEMPLATE_MODE_OWN_RUN_API
     4161            AssertMsg(pVCpu->nem.s.fHandleAndGetFlags != VID_MSHAGN_F_GET_NEXT_MESSAGE /* not running */,
     4162                      ("%#x fExtrn=%#RX64 (%#RX64) fDesiredInterruptWindows=%d fCurrentInterruptWindows=%#x vs %#x\n",
     4163                       pVCpu->nem.s.fHandleAndGetFlags, pVCpu->cpum.GstCtx.fExtrn, ~pVCpu->cpum.GstCtx.fExtrn & (CPUMCTX_EXTRN_ALL | CPUMCTX_EXTRN_NEM_WIN_MASK),
     4164                       pVCpu->nem.s.fDesiredInterruptWindows, pVCpu->nem.s.fCurrentInterruptWindows, pVCpu->nem.s.fDesiredInterruptWindows));
    41574165# endif
    41584166# ifdef IN_RING0
Note: See TracChangeset for help on using the changeset viewer.

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