VirtualBox

Changeset 92071 in vbox for trunk/src


Ignore:
Timestamp:
Oct 26, 2021 9:34:31 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
147884
Message:

VMM/DevHlp: Added PDMDevHlpSSMRegisterLegacy for dealing with renamed and merged devices. bugref:8651

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/PDMDevHlp.cpp

    r91973 r92071  
    445445    VM_ASSERT_EMT(pDevIns->Internal.s.pVMR3);
    446446    LogFlow(("pdmR3DevHlp_SSMRegister: caller='%s'/%d: uVersion=%#x cbGuess=%#x pszBefore=%p:{%s}\n"
    447              "    pfnLivePrep=%p pfnLiveExec=%p pfnLiveVote=%p pfnSavePrep=%p pfnSaveExec=%p pfnSaveDone=%p pszLoadPrep=%p pfnLoadExec=%p pfnLoadDone=%p\n",
     447             "    pfnLivePrep=%p pfnLiveExec=%p pfnLiveVote=%p pfnSavePrep=%p pfnSaveExec=%p pfnSaveDone=%p pfnLoadPrep=%p pfnLoadExec=%p pfnLoadDone=%p\n",
    448448             pDevIns->pReg->szName, pDevIns->iInstance, uVersion, cbGuess, pszBefore, pszBefore,
    449449             pfnLivePrep, pfnLiveExec, pfnLiveVote,
     
    458458
    459459    LogFlow(("pdmR3DevHlp_SSMRegister: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, rc));
     460    return rc;
     461}
     462
     463
     464/** @interface_method_impl{PDMDEVHLPR3,pfnSSMRegisterLegacy} */
     465static DECLCALLBACK(int) pdmR3DevHlp_SSMRegisterLegacy(PPDMDEVINS pDevIns, const char *pszOldName, PFNSSMDEVLOADPREP pfnLoadPrep,
     466                                                       PFNSSMDEVLOADEXEC pfnLoadExec, PFNSSMDEVLOADDONE pfnLoadDone)
     467{
     468    PDMDEV_ASSERT_DEVINS(pDevIns);
     469    VM_ASSERT_EMT(pDevIns->Internal.s.pVMR3);
     470    LogFlow(("pdmR3DevHlp_SSMRegisterLegacy: caller='%s'/%d: pszOldName=%p:{%s} pfnLoadPrep=%p pfnLoadExec=%p pfnLoadDone=%p\n",
     471             pDevIns->pReg->szName, pDevIns->iInstance, pszOldName, pszOldName, pfnLoadPrep, pfnLoadExec, pfnLoadDone));
     472
     473    int rc = SSMR3RegisterDevice(pDevIns->Internal.s.pVMR3, pDevIns, pszOldName, pDevIns->iInstance,
     474                                 0 /*uVersion*/, 0 /*cbGuess*/, NULL /*pszBefore*/,
     475                                 NULL, NULL, NULL,
     476                                 NULL, NULL, NULL,
     477                                 pfnLoadPrep, pfnLoadExec, pfnLoadDone);
     478
     479    LogFlow(("pdmR3DevHlp_SSMRegisterLegacy: caller='%s'/%d: returns %Rrc\n", pDevIns->pReg->szName, pDevIns->iInstance, rc));
    460480    return rc;
    461481}
     
    47854805    pdmR3DevHlp_ROMProtectShadow,
    47864806    pdmR3DevHlp_SSMRegister,
     4807    pdmR3DevHlp_SSMRegisterLegacy,
    47874808    SSMR3PutStruct,
    47884809    SSMR3PutStructEx,
     
    51785199    pdmR3DevHlp_ROMProtectShadow,
    51795200    pdmR3DevHlp_SSMRegister,
     5201    pdmR3DevHlp_SSMRegisterLegacy,
    51805202    SSMR3PutStruct,
    51815203    SSMR3PutStructEx,
     
    58855907    pdmR3DevHlp_ROMProtectShadow,
    58865908    pdmR3DevHlp_SSMRegister,
     5909    pdmR3DevHlp_SSMRegisterLegacy,
    58875910    SSMR3PutStruct,
    58885911    SSMR3PutStructEx,
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette