VirtualBox

Changeset 106996 in vbox for trunk


Ignore:
Timestamp:
Nov 13, 2024 9:50:08 PM (2 weeks ago)
Author:
vboxsync
Message:

VMM/ARM: Fix import mask for things we have to fetch from the NEM backend, move the state syncing to the hypervisor down just before running the vCPU to avoid having to sync stuff back in case some forced action flags are set which cause us to break out of the runloop, bugref:10392

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/iem-armv8.h

    r106591 r106996  
    6464                                                    | CPUMCTX_EXTRN_ELR \
    6565                                                    | CPUMCTX_EXTRN_SP \
    66                                                     | CPUMCTX_EXTRN_PSTATE )
     66                                                    | CPUMCTX_EXTRN_PSTATE \
     67                                                    | CPUMCTX_EXTRN_SCTLR_TCR_TTBR )
    6768/** The CPUMCTX_EXTRN_XXX mask needed when injecting an exception/interrupt.
    6869 * IEM will import missing bits, callers are encouraged to make these registers
  • trunk/src/VBox/VMM/VMMR3/NEMR3Native-win-armv8.cpp

    r106992 r106996  
    24942494    for (unsigned iLoop = 0;; iLoop++)
    24952495    {
    2496         /* Ensure that Hyper-V has the whole state. */
    2497         int rc2 = nemHCWinCopyStateToHyperV(pVM, pVCpu);
    2498         AssertRCReturn(rc2, rc2);
    2499 
    25002496        /*
    25012497         * Poll timers and run for a bit.
     
    25142510            if (VMCPU_CMPXCHG_STATE(pVCpu, VMCPUSTATE_STARTED_EXEC_NEM_WAIT, VMCPUSTATE_STARTED_EXEC_NEM))
    25152511            {
     2512                /* Ensure that Hyper-V has the whole state. */
     2513                int rc2 = nemHCWinCopyStateToHyperV(pVM, pVCpu);
     2514                AssertRCReturn(rc2, rc2);
     2515
    25162516#ifdef LOG_ENABLED
    25172517                if (LogIsFlowEnabled())
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