Changeset 23917 in vbox
- Timestamp:
- Oct 20, 2009 5:24:52 PM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 53722
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VM.cpp
r23915 r23917 1795 1795 * @param pfnProgress Progress callback. Optional. 1796 1796 * @param pvUser User argument for the progress callback. 1797 * @param fTeleporting Indicates whether we're teleporting or not. 1797 1798 * 1798 1799 * @thread EMT. 1799 1800 */ 1800 1801 static DECLCALLBACK(int) vmR3Load(PVM pVM, const char *pszFilename, PCSSMSTRMOPS pStreamOps, void *pvStreamOpsUser, 1801 PFNVMPROGRESS pfnProgress, void *pvProgressUser )1802 { 1803 LogFlow(("vmR3Load: pVM=%p pszFilename=%p:{%s} pStreamOps=%p pvStreamOpsUser=%p pfnProgress=%p pvProgressUser=%p \n",1804 pVM, pszFilename, pszFilename, pStreamOps, pvStreamOpsUser, pfnProgress, pvProgressUser ));1802 PFNVMPROGRESS pfnProgress, void *pvProgressUser, bool fTeleporting) 1803 { 1804 LogFlow(("vmR3Load: pVM=%p pszFilename=%p:{%s} pStreamOps=%p pvStreamOpsUser=%p pfnProgress=%p pvProgressUser=%p fTeleporting=%RTbool\n", 1805 pVM, pszFilename, pszFilename, pStreamOps, pvStreamOpsUser, pfnProgress, pvProgressUser, fTeleporting)); 1805 1806 1806 1807 /* … … 1823 1824 if (RT_FAILURE(rc)) 1824 1825 return rc; 1826 pVM->vm.s.fTeleportedAndNotFullyResumedYet = fTeleporting; 1825 1827 1826 1828 rc = SSMR3Load(pVM, pszFilename, pStreamOps, pvStreamOpsUser, SSMAFTER_RESUME, pfnProgress, pvProgressUser); … … 1832 1834 else 1833 1835 { 1836 pVM->vm.s.fTeleportedAndNotFullyResumedYet = false; 1834 1837 vmR3SetState(pVM, VMSTATE_LOAD_FAILURE, VMSTATE_LOADING); 1835 1838 rc = VMSetError(pVM, rc, RT_SRC_POS, … … 1874 1877 * since there is no execution taking place when this call is allowed. 1875 1878 */ 1876 int rc = VMR3ReqCallWaitU(pVM->pUVM, 0 /*idDstCpu*/, (PFNRT)vmR3Load, 6, 1877 pVM, pszFilename, NULL /*pStreamOps*/, NULL /*pvStreamOpsUser*/, pfnProgress, pvUser); 1879 int rc = VMR3ReqCallWaitU(pVM->pUVM, 0 /*idDstCpu*/, (PFNRT)vmR3Load, 7, 1880 pVM, pszFilename, NULL /*pStreamOps*/, NULL /*pvStreamOpsUser*/, pfnProgress, pvUser, 1881 false /*fTeleporting*/); 1878 1882 LogFlow(("VMR3LoadFromFile: returns %Rrc\n", rc)); 1879 1883 return rc; … … 1912 1916 * since there is no execution taking place when this call is allowed. 1913 1917 */ 1914 int rc = VMR3ReqCallWaitU(pVM->pUVM, 0 /*idDstCpu*/, (PFNRT)vmR3Load, 6, 1915 pVM, NULL /*pszFilename*/, pStreamOps, pvStreamOpsUser, pfnProgress, pvProgressUser); 1918 int rc = VMR3ReqCallWaitU(pVM->pUVM, 0 /*idDstCpu*/, (PFNRT)vmR3Load, 7, 1919 pVM, NULL /*pszFilename*/, pStreamOps, pvStreamOpsUser, pfnProgress, pvProgressUser, 1920 true /*fTeleporting*/); 1916 1921 LogFlow(("VMR3LoadFromStream: returns %Rrc\n", rc)); 1917 1922 return rc; … … 3185 3190 * Checks if the VM was teleported and hasn't been fully resumed yet. 3186 3191 * 3192 * This applies to both sides of the teleportation since we may leave a working 3193 * clone behind and the user is allowed to resume this... 3194 * 3187 3195 * @returns true / false. 3188 3196 * @param pVM The VM handle.
Note:
See TracChangeset
for help on using the changeset viewer.