VirtualBox

Changeset 32190 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Sep 2, 2010 12:20:06 PM (14 years ago)
Author:
vboxsync
Message:

PDMDevHlpVMSuspendSaveAndPowerOff: More code.

Location:
trunk/include/VBox
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/types.h

    r31948 r32190  
    719719
    720720
     721/** Pointer to a callback method table provided by the VM API user. */
     722typedef struct VMM2USERMETHODS const *PCVMM2USERMETHODS;
     723
     724
    721725/**
    722726 * Data transport buffer (scatter/gather)
  • trunk/include/VBox/uvm.h

    r28800 r32190  
    7272{
    7373    /** Magic / eye-catcher (UVM_MAGIC). */
    74     uint32_t        u32Magic;
     74    uint32_t            u32Magic;
    7575    /** The number of virtual CPUs. */
    76     uint32_t        cCpus;
     76    uint32_t            cCpus;
    7777    /** The ring-3 mapping of the shared VM structure. */
    78     PVM             pVM;
     78    PVM                 pVM;
    7979    /** Pointer to the next VM.
    8080     * We keep a per process list of VM for the event that a process could
     
    8282     * @todo move this into vm.s!
    8383     */
    84     struct UVM     *pNext;
     84    struct UVM         *pNext;
    8585
     86    /** Pointer to the optional method table provided by the VMM user. */
     87    PCVMM2USERMETHODS   pVmm2UserMethods;
     88
     89#if HC_ARCH_BITS == 32
    8690    /** Align the next member on a 32 byte boundrary. */
    87     uint8_t         abAlignment0[HC_ARCH_BITS == 32 ? 16 : 8];
     91    uint8_t             abAlignment0[HC_ARCH_BITS == 32 ? 12 : 0];
     92#endif
    8893
    8994    /** The VM internal data. */
  • trunk/include/VBox/vmapi.h

    r32169 r32190  
    312312
    313313
    314 VMMR3DECL(int)  VMR3Create(uint32_t cCpus, PFNVMATERROR pfnVMAtError, void *pvUserVM, PFNCFGMCONSTRUCTOR pfnCFGMConstructor, void *pvUserCFGM, PVM *ppVM);
     314VMMR3DECL(int)  VMR3Create(uint32_t cCpus, PCVMM2USERMETHODS pVm2UserCbs,
     315                           PFNVMATERROR pfnVMAtError, void *pvUserVM,
     316                           PFNCFGMCONSTRUCTOR pfnCFGMConstructor, void *pvUserCFGM,
     317                           PVM *ppVM);
    315318VMMR3DECL(int)  VMR3PowerOn(PVM pVM);
    316319VMMR3DECL(int)  VMR3Suspend(PVM pVM);
  • trunk/include/VBox/vmm.h

    r32140 r32190  
    138138/** Pointer to a rendezvous callback function. */
    139139typedef FNVMMEMTRENDEZVOUS *PFNVMMEMTRENDEZVOUS;
     140
     141/**
     142 * Method table that the VMM uses to call back the user of the VMM.
     143 */
     144typedef struct VMM2USERMETHODS
     145{
     146    /** Magic value (VMM2USERMETHODS_MAGIC). */
     147    uint32_t    u32Magic;
     148    /** Structure version (VMM2USERMETHODS_VERSION). */
     149    uint32_t    u32Version;
     150
     151    /**
     152     * Save the VM state.
     153     *
     154     * @returns VBox status code.
     155     * @param   pThis       Pointer to the callback method table.
     156     * @param   pVM         The VM handle.
     157     *
     158     * @remarks This member shall be set to NULL if the operation is not
     159     *          supported.
     160     */
     161    DECLR3CALLBACKMEMBER(int, pfnSaveState,(PCVMM2USERMETHODS pThis, PVM pVM));
     162    /** @todo Move pfnVMAtError and pfnCFGMConstructor here? */
     163
     164    /** Magic value (VMM2USERMETHODS_MAGIC) marking the end of the structure. */
     165    uint32_t    u32EndMagic;
     166} VMM2USERMETHODS;
     167
     168/** Magic value of the VMM2USERMETHODS (Franz Kafka). */
     169#define VMM2USERMETHODS_MAGIC         UINT32_C(0x18830703)
     170/** The VMM2USERMETHODS structure version. */
     171#define VMM2USERMETHODS_VERSION       UINT32_C(0x00010000)
    140172
    141173
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