VirtualBox

Changeset 59538 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Feb 1, 2016 10:33:38 AM (9 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
105332
Message:

Storage/DrvVD: Add methods to query suspended requests, will be used for saved state handling in the device emulations

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/pdmstorageifs.h

    r59536 r59538  
    832832    DECLR3CALLBACKMEMBER(uint32_t, pfnIoReqGetActiveCount, (PPDMIMEDIAEX pInterface));
    833833
     834    /**
     835     * Returns the number of suspended requests.
     836     *
     837     * @returns Number of suspended I/O requests.
     838     * @param   pInterface      Pointer to the interface structure containing the called function pointer.
     839     * @thread  Any thread.
     840     */
     841    DECLR3CALLBACKMEMBER(uint32_t, pfnIoReqGetSuspendedCount, (PPDMIMEDIAEX pInterface));
     842
     843    /**
     844     * Gets the first suspended request handle.
     845     *
     846     * @returns VBox status code.
     847     * @retval  VERR_NOT_FOUND if there is no suspended request waiting.
     848     * @param   pInterface      Pointer to the interface structure containing the called function pointer.
     849     * @param   phIoReq         Where to store the request handle on success.
     850     * @param   ppvIoReqAlloc   Where to store the pointer to the allocator specific memory on success.
     851     * @thread  Any thread.
     852     *
     853     * @note This should only be called when the VM is suspended to make sure the request doesn't suddenly
     854     *       changes into the active state again. The only purpose for this method for now is to make saving the state
     855     *       possible without breaking saved state versions.
     856     */
     857    DECLR3CALLBACKMEMBER(int, pfnIoReqQuerySuspendedStart, (PPDMIMEDIAEX pInterface, PPDMMEDIAEXIOREQ phIoReq, void **ppvIoReqAlloc));
     858
     859    /**
     860     * Gets the next suspended request handle.
     861     *
     862     * @returns VBox status code.
     863     * @retval  VERR_NOT_FOUND if there is no suspended request waiting.
     864     * @param   pInterface      Pointer to the interface structure containing the called function pointer.
     865     * @param   hIoReq          The current request handle.
     866     * @param   phIoReqNext     Where to store the request handle on success.
     867     * @param   ppvIoReqAllocNext Where to store the pointer to the allocator specific memory on success.
     868     * @thread  Any thread.
     869     *
     870     * @note This should only be called when the VM is suspended to make sure the request doesn't suddenly
     871     *       changes into the active state again. The only purpose for this method for now is to make saving the state
     872     *       possible without breaking saved state versions.
     873     */
     874    DECLR3CALLBACKMEMBER(int, pfnIoReqQuerySuspendedNext, (PPDMIMEDIAEX pInterface, PDMMEDIAEXIOREQ hIoReq,
     875                                                           PPDMMEDIAEXIOREQ phIoReqNext, void **ppvIoReqAllocNext));
     876
    834877} PDMIMEDIAEX;
    835878/** PDMIMEDIAEX interface ID. */
    836 #define PDMIMEDIAEX_IID                      "d5ee47d8-5f7c-411d-bd9d-1021ee721a88"
     879#define PDMIMEDIAEX_IID                      "a1eee1a8-cf51-43ed-a528-9f678a1b2224"
    837880
    838881/**
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