Changeset 4970 in vbox
- Timestamp:
- Sep 21, 2007 6:27:48 PM (17 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm.h
r4917 r4970 421 421 * @param pVM The VM to operate on. 422 422 * @param enmOperation Which operation to execute. 423 * @remarks Assume called with interrupts disabled.423 * @remarks Assume called with interrupts _enabled_. 424 424 */ 425 425 VMMR0DECL(int) VMMR0EntryFast(PVM pVM, VMMR0OPERATION enmOperation); -
trunk/src/VBox/VMM/VMMR0/VMMR0.cpp
r4960 r4970 558 558 /* 559 559 * Switch to GC and run guest raw mode code. 560 * Disable interrupts before doing the world switch. 560 561 */ 561 562 case VMMR0_DO_RAW_RUN: 562 563 { 563 /* We must disable interrupts here */564 RTCCUINTREG uFlags = ASMIntDisableFlags();565 566 564 /* Safety precaution as hwaccm disables the switcher. */ 567 565 if (RT_LIKELY(!pVM->vmm.s.fSwitcherDisabled)) 568 566 { 567 RTCCUINTREG uFlags = ASMIntDisableFlags(); 568 569 569 int rc = pVM->vmm.s.pfnR0HostToGuest(pVM); 570 570 pVM->vmm.s.iLastGCRc = rc; … … 574 574 TRPMR0DispatchHostInterrupt(pVM); 575 575 576 ASMSetFlags(uFlags); 577 576 578 #ifdef VBOX_WITH_STATISTICS 577 579 STAM_COUNTER_INC(&pVM->vmm.s.StatRunGC); 578 580 vmmR0RecordRC(pVM, rc); 579 581 #endif 580 ASMSetFlags(uFlags);581 582 return rc; 582 583 } 583 ASMSetFlags(uFlags);584 584 585 585 Assert(!pVM->vmm.s.fSwitcherDisabled); … … 589 589 /* 590 590 * Run guest code using the available hardware acceleration technology. 591 * 592 * Disable interrupts before we do anything interesting. On Windows we avoid 593 * this by having the support driver raise the IRQL before calling us, this way 594 * we hope to get away we page faults and later calling into the kernel. 591 595 */ 592 596 case VMMR0_DO_HWACC_RUN: … … 594 598 STAM_COUNTER_INC(&pVM->vmm.s.StatRunGC); 595 599 596 #ifndef RT_OS_WINDOWS /* @todo check other hosts */ 597 /* We must disable interrupts here */ 600 #ifndef RT_OS_WINDOWS /** @todo check other hosts */ 598 601 RTCCUINTREG uFlags = ASMIntDisableFlags(); 599 602 #endif … … 612 615 } 613 616 pVM->vmm.s.iLastGCRc = rc; 614 #ifndef RT_OS_WINDOWS /* @todo check other hosts */617 #ifndef RT_OS_WINDOWS /** @todo check other hosts */ 615 618 ASMSetFlags(uFlags); 616 619 #endif
Note:
See TracChangeset
for help on using the changeset viewer.