VirtualBox

Changeset 32459 in vbox


Ignore:
Timestamp:
Sep 13, 2010 4:36:11 PM (14 years ago)
Author:
vboxsync
Message:

VMM/raw: Heed VM_FF_REQUEST and VMCPU_FF_REQUEST before checking for interrupts and synccr3 actions since these two might not return to ring-3.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMGC/TRPMGCHandlers.cpp

    r32458 r32459  
    209209        else if (VM_FF_ISPENDING(pVM, VM_FF_PDM_DMA))
    210210            rc = VINF_EM_RAW_TO_R3;
     211        /* Pending request packets might contain actions that need immediate
     212           attention, such as pending hardware interrupts. */
     213        else if (   VM_FF_ISPENDING(pVM, VM_FF_REQUEST)
     214                 || VMCPU_FF_ISPENDING(pVCpu, VMCPU_FF_REQUEST))
     215            rc = VINF_EM_PENDING_REQUEST;
    211216        /* Pending interrupt: dispatch it. */
    212217        else if (    VMCPU_FF_ISPENDING(pVCpu, VMCPU_FF_INTERRUPT_APIC | VMCPU_FF_INTERRUPT_PIC)
     
    246251#endif
    247252        }
    248         /** @todo move up before SyncCR3 */
    249         /* Pending request packets might contain actions that need immediate attention, such as pending hardware interrupts. */
    250         else if (   VM_FF_ISPENDING(pVM, VM_FF_REQUEST)
    251                  || VMCPU_FF_ISPENDING(pVCpu, VMCPU_FF_REQUEST))
    252             rc = VINF_EM_PENDING_REQUEST;
    253253    }
    254254
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