X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=urcu%2Fstatic%2Fwfstack.h;h=18bf763c97a69f5f04acf31409e0fd3934215f63;hb=c7ba06ba1bd70d77a6530503cf216d3a9878d672;hp=668ff7d6f101a963f5171d7a8714653cccd94526;hpb=edac6b69ad8b690437c4624cebb7eef465a09a7e;p=urcu.git diff --git a/urcu/static/wfstack.h b/urcu/static/wfstack.h index 668ff7d..18bf763 100644 --- a/urcu/static/wfstack.h +++ b/urcu/static/wfstack.h @@ -6,10 +6,10 @@ * * Userspace RCU library - Stack with with wait-free push, blocking traversal. * - * TO BE INCLUDED ONLY IN LGPL-COMPATIBLE CODE. See wfstack.h for linking - * dynamically with the userspace rcu library. + * TO BE INCLUDED ONLY IN LGPL-COMPATIBLE CODE. See urcu/wfstack.h for + * linking dynamically with the userspace rcu library. * - * Copyright 2010 - Mathieu Desnoyers + * Copyright 2010-2012 - Mathieu Desnoyers * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -283,7 +283,7 @@ _cds_wfs_pop_all_blocking(struct cds_wfs_stack *s) } /* - * cds_wfs_first_blocking: get first node of a popped stack. + * cds_wfs_first: get first node of a popped stack. * * Content written into the node before enqueue is guaranteed to be * consistent, but no other memory ordering is ensured. @@ -291,9 +291,11 @@ _cds_wfs_pop_all_blocking(struct cds_wfs_stack *s) * Used by for-like iteration macros in urcu/wfstack.h: * cds_wfs_for_each_blocking() * cds_wfs_for_each_blocking_safe() + * + * Returns NULL if popped stack is empty, top stack node otherwise. */ static inline struct cds_wfs_node * -_cds_wfs_first_blocking(struct cds_wfs_head *head) +_cds_wfs_first(struct cds_wfs_head *head) { if (___cds_wfs_end(head)) return NULL; @@ -309,6 +311,9 @@ _cds_wfs_first_blocking(struct cds_wfs_head *head) * Used by for-like iteration macros in urcu/wfstack.h: * cds_wfs_for_each_blocking() * cds_wfs_for_each_blocking_safe() + * + * Returns NULL if reached end of popped stack, non-NULL next stack + * node otherwise. */ static inline struct cds_wfs_node * _cds_wfs_next_blocking(struct cds_wfs_node *node)