diff options
Diffstat (limited to 'include/VBox/vmm/pdmcritsect.h')
-rw-r--r-- | include/VBox/vmm/pdmcritsect.h | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/include/VBox/vmm/pdmcritsect.h b/include/VBox/vmm/pdmcritsect.h index 02d7924d..0895b52b 100644 --- a/include/VBox/vmm/pdmcritsect.h +++ b/include/VBox/vmm/pdmcritsect.h @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 2006-2010 Oracle Corporation + * Copyright (C) 2006-2011 Oracle Corporation * * This file is part of VirtualBox Open Source Edition (OSE), as * available from http://www.virtualbox.org. This file is free software; @@ -51,26 +51,31 @@ typedef union PDMCRITSECT #endif } PDMCRITSECT; +VMMR3_INT_DECL(int) PDMR3CritSectBothTerm(PVM pVM); +VMMR3_INT_DECL(void) PDMR3CritSectLeaveAll(PVM pVM); +VMM_INT_DECL(void) PDMCritSectBothFF(PVMCPU pVCpu); + + +VMMR3DECL(uint32_t) PDMR3CritSectCountOwned(PVM pVM, char *pszNames, size_t cbNames); + VMMR3DECL(int) PDMR3CritSectInit(PVM pVM, PPDMCRITSECT pCritSect, RT_SRC_POS_DECL, const char *pszNameFmt, ...); +VMMR3DECL(int) PDMR3CritSectEnterEx(PPDMCRITSECT pCritSect, bool fCallRing3); +VMMR3DECL(bool) PDMR3CritSectYield(PPDMCRITSECT pCritSect); +VMMR3DECL(const char *) PDMR3CritSectName(PCPDMCRITSECT pCritSect); +VMMR3DECL(int) PDMR3CritSectScheduleExitEvent(PPDMCRITSECT pCritSect, RTSEMEVENT EventToSignal); +VMMR3DECL(int) PDMR3CritSectDelete(PPDMCRITSECT pCritSect); + VMMDECL(int) PDMCritSectEnter(PPDMCRITSECT pCritSect, int rcBusy); VMMDECL(int) PDMCritSectEnterDebug(PPDMCRITSECT pCritSect, int rcBusy, RTHCUINTPTR uId, RT_SRC_POS_DECL); VMMDECL(int) PDMCritSectTryEnter(PPDMCRITSECT pCritSect); VMMDECL(int) PDMCritSectTryEnterDebug(PPDMCRITSECT pCritSect, RTHCUINTPTR uId, RT_SRC_POS_DECL); -VMMR3DECL(int) PDMR3CritSectEnterEx(PPDMCRITSECT pCritSect, bool fCallRing3); VMMDECL(int) PDMCritSectLeave(PPDMCRITSECT pCritSect); + VMMDECL(bool) PDMCritSectIsOwner(PCPDMCRITSECT pCritSect); VMMDECL(bool) PDMCritSectIsOwnerEx(PCPDMCRITSECT pCritSect, PVMCPU pVCpu); VMMDECL(bool) PDMCritSectIsInitialized(PCPDMCRITSECT pCritSect); VMMDECL(bool) PDMCritSectHasWaiters(PCPDMCRITSECT pCritSect); VMMDECL(uint32_t) PDMCritSectGetRecursion(PCPDMCRITSECT pCritSect); -VMMR3DECL(bool) PDMR3CritSectYield(PPDMCRITSECT pCritSect); -VMMR3DECL(const char *) PDMR3CritSectName(PCPDMCRITSECT pCritSect); -VMMR3DECL(int) PDMR3CritSectScheduleExitEvent(PPDMCRITSECT pCritSect, RTSEMEVENT EventToSignal); -VMMR3DECL(int) PDMR3CritSectDelete(PPDMCRITSECT pCritSect); -VMMDECL(int) PDMR3CritSectTerm(PVM pVM); -VMMDECL(void) PDMCritSectFF(PVMCPU pVCpu); -VMMR3DECL(uint32_t) PDMR3CritSectCountOwned(PVM pVM, char *pszNames, size_t cbNames); -VMMR3DECL(void) PDMR3CritSectLeaveAll(PVM pVM); VMMR3DECL(PPDMCRITSECT) PDMR3CritSectGetNop(PVM pVM); VMMR3DECL(R0PTRTYPE(PPDMCRITSECT)) PDMR3CritSectGetNopR0(PVM pVM); |