VirtualBox

Changeset 90428 in vbox for trunk


Ignore:
Timestamp:
Jul 30, 2021 1:57:21 PM (3 years ago)
Author:
vboxsync
Message:

VMM/PDMCritSectEnter: Added note about new return handling requirement, even for rcBusy=VINF_SUCCESS calls. bugref:6695

Location:
trunk
Files:
2 edited

Legend:

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

    r90382 r90428  
    10661066     * @param   pDevIns         The PCI device instance.
    10671067     * @param   rc              What to return if we fail to acquire the lock.
     1068     *
     1069     * @sa      PDMCritSectEnter
    10681070     */
    10691071    DECLRCCALLBACKMEMBER(int,   pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    11491151     * @param   pDevIns         The PCI device instance.
    11501152     * @param   rc              What to return if we fail to acquire the lock.
     1153     *
     1154     * @sa      PDMCritSectEnter
    11511155     */
    11521156    DECLR0CALLBACKMEMBER(int,   pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    12281232     * @param   pDevIns         The PCI device instance.
    12291233     * @param   rc              Dummy for making the interface identical to the RC and R0 versions.
     1234     *
     1235     * @sa      PDMCritSectEnter
    12301236     */
    12311237    DECLR3CALLBACKMEMBER(int,   pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    15021508     * @param   pDevIns     The PCI device instance.
    15031509     * @param   rc          What to return if we fail to acquire the lock.
     1510     *
     1511     * @sa      PDMCritSectEnter
    15041512     */
    15051513    DECLR0CALLBACKMEMBER(int,   pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    15561564     * @param   pDevIns     The PCI device instance.
    15571565     * @param   rc          What to return if we fail to acquire the lock.
     1566     *
     1567     * @sa      PDMCritSectEnter
    15581568     */
    15591569    DECLRCCALLBACKMEMBER(int,   pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    16101620     * @param   pDevIns     The PCI device instance.
    16111621     * @param   rc          What to return if we fail to acquire the lock.
     1622     *
     1623     * @sa      PDMCritSectEnter
    16121624     */
    16131625    DECLR3CALLBACKMEMBER(int,   pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    17161728     * @param   pDevIns         The PIC device instance.
    17171729     * @param   rc              What to return if we fail to acquire the lock.
     1730     *
     1731     * @sa      PDMCritSectEnter
    17181732     */
    17191733    DECLCALLBACKMEMBER(int, pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    19221936     * @param   pDevIns         The IOAPIC device instance.
    19231937     * @param   rc              What to return if we fail to acquire the lock.
     1938     *
     1939     * @sa      PDMCritSectEnter
    19241940     */
    19251941    DECLCALLBACKMEMBER(int, pfnLock,(PPDMDEVINS pDevIns, int rc));
     
    78737889 *                              acquired the critical section thru a ring-3
    78747890 *                              call if necessary.
     7891 *
     7892 * @note    Even callers setting @a rcBusy to VINF_SUCCESS must either handle
     7893 *          possible failures in ring-0 or apply an AssertReleaseRC() to the
     7894 *          return value of this function.
     7895 *
    78757896 * @sa      PDMCritSectEnter
    78767897 */
  • trunk/src/VBox/VMM/VMMAll/PDMAllCritSect.cpp

    r90420 r90428  
    516516 *                              acquired the critical section thru a ring-3
    517517 *                              call if necessary.
     518 *
     519 * @note    Even callers setting @a rcBusy to VINF_SUCCESS must either handle
     520 *          possible failures in ring-0 or apply an AssertReleaseRC() to the
     521 *          return value of this function.
    518522 */
    519523VMMDECL(int) PDMCritSectEnter(PVMCC pVM, PPDMCRITSECT pCritSect, int rcBusy)
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