Changeset 6804 in vbox
- Timestamp:
- Feb 5, 2008 10:27:19 AM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 27905
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMEmt.cpp
r6799 r6804 166 166 || pUVM->vm.s.fTerminateEMT) 167 167 break; 168 169 /* 170 * Some requests (both VMR3Req* and the DBGF) can potentially 171 * resume or start the VM, in that case we'll get a change in 172 * VM status indicating that we're now running. 173 */ 174 if ( VBOX_SUCCESS(rc) 175 && enmBefore != pVM->enmVMState 176 && (pVM->enmVMState == VMSTATE_RUNNING)) 177 { 178 rc = EMR3ExecuteVM(pVM); 179 Log(("vmR3EmulationThread: EMR3ExecuteVM() -> rc=%Vrc, enmVMState=%d\n", rc, pVM->enmVMState)); 180 if (EMGetState(pVM) == EMSTATE_GURU_MEDITATION) 181 vmR3SetState(pVM, VMSTATE_GURU_MEDITATION); 182 } 183 } 168 } 169 170 /* 171 * Some requests (both VMR3Req* and the DBGF) can potentially 172 * resume or start the VM, in that case we'll get a change in 173 * VM status indicating that we're now running. 174 */ 175 if ( VBOX_SUCCESS(rc) 176 && pUVM->pVM 177 && enmBefore != pUVM->pVM->enmVMState 178 && pUVM->pVM->enmVMState == VMSTATE_RUNNING) 179 { 180 PVM pVM = pUVM->pVM; 181 rc = EMR3ExecuteVM(pVM); 182 Log(("vmR3EmulationThread: EMR3ExecuteVM() -> rc=%Vrc, enmVMState=%d\n", rc, pVM->enmVMState)); 183 if (EMGetState(pVM) == EMSTATE_GURU_MEDITATION) 184 vmR3SetState(pVM, VMSTATE_GURU_MEDITATION); 185 } 186 184 187 } /* forever */ 185 188 … … 336 339 PVM pVM = pUVM->pVM; 337 340 int rc = VINF_SUCCESS; 338 ASMAtomic UoWriteBool(&pUVM->vm.s.fWait, true);341 ASMAtomicWriteBool(&pUVM->vm.s.fWait, true); 339 342 //unsigned cLoops = 0; 340 343 for (;;) … … 535 538 */ 536 539 int rc = VINF_SUCCESS; 537 ASMAtomic UoWriteBool(&pUVM->vm.s.fWait, true);540 ASMAtomicWriteBool(&pUVM->vm.s.fWait, true); 538 541 unsigned cLoops = 0; 539 542 for (;; cLoops++) … … 652 655 */ 653 656 int rc = VINF_SUCCESS; 654 ASMAtomic UoWriteBool(&pUVM->vm.s.fWait, true);657 ASMAtomicWriteBool(&pUVM->vm.s.fWait, true); 655 658 unsigned cLoops = 0; 656 659 for (;; cLoops++) … … 726 729 static DECLCALLBACK(int) vmR3HaltGlobal1Wait(PUVM pUVM) 727 730 { 728 ASMAtomic UoWriteBool(&pUVM->vm.s.fWait, true);731 ASMAtomicWriteBool(&pUVM->vm.s.fWait, true); 729 732 730 733 PVM pVM = pUVM->pVM; … … 787 790 static DECLCALLBACK(int) vmR3BootstrapWait(PUVM pUVM) 788 791 { 789 ASMAtomic UoWriteBool(&pUVM->vm.s.fWait, true);792 ASMAtomicWriteBool(&pUVM->vm.s.fWait, true); 790 793 791 794 int rc = VINF_SUCCESS; … … 852 855 static DECLCALLBACK(int) vmR3DefaultWait(PUVM pUVM) 853 856 { 854 ASMAtomic UoWriteBool(&pUVM->vm.s.fWait, true);857 ASMAtomicWriteBool(&pUVM->vm.s.fWait, true); 855 858 856 859 PVM pVM = pUVM->pVM;
Note:
See TracChangeset
for help on using the changeset viewer.