[libvirt] [PATCH 1/2] threads: Document spurious wakeups on virCondWait

Michal Privoznik mprivozn at redhat.com
Fri Dec 9 16:29:03 UTC 2011


---
 src/util/threads.h |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/util/threads.h b/src/util/threads.h
index b72610c..7d8a6ed 100644
--- a/src/util/threads.h
+++ b/src/util/threads.h
@@ -88,6 +88,11 @@ void virMutexUnlock(virMutexPtr m);
 int virCondInit(virCondPtr c) ATTRIBUTE_RETURN_CHECK;
 int virCondDestroy(virCondPtr c) ATTRIBUTE_RETURN_CHECK;
 
+/* virCondWait, virCondWaitUntil:
+ * These functions can return without associated predicate
+ * changing value. Therefore in nearly all cases there
+ * should be enclosed in a while loop that checks predicate.
+ */
 int virCondWait(virCondPtr c, virMutexPtr m) ATTRIBUTE_RETURN_CHECK;
 int virCondWaitUntil(virCondPtr c, virMutexPtr m, unsigned long long whenms) ATTRIBUTE_RETURN_CHECK;
 void virCondSignal(virCondPtr c);
-- 
1.7.3.4




More information about the libvir-list mailing list