On Mon, May 14, 2012 at 11:36:04PM -0400, Mathieu Desnoyers wrote:
> Document the concurrent data structures provided by the userspace RCU
> library.

Looks good to me!

Reviewed-by: Paul E. McKenney <paul...@linux.vnet.ibm.com>

> Signed-off-by: Mathieu Desnoyers <mathieu.desnoy...@efficios.com>
> ---
> diff --git a/doc/cds-api.txt b/doc/cds-api.txt
> new file mode 100644
> index 0000000..7a3c6e0
> --- /dev/null
> +++ b/doc/cds-api.txt
> @@ -0,0 +1,59 @@
> +Userspace RCU Concurrent Data Structures (CDS) API
> +by Mathieu Desnoyers and Paul E. McKenney
> +
> +
> +This document describes briefly the data structures contained with the
> +userspace RCU library.
> +
> +urcu/list.h:
> +
> +     Doubly-linked list, which requires mutual exclusion on updates
> +     and reads.
> +
> +urcu/rculist.h:
> +
> +     Doubly-linked list, which requires mutual exclusion on updates,
> +     allows RCU read traversals.
> +     
> +urcu/hlist.h:
> +
> +     Doubly-linked list, with single pointer list head. Requires
> +     mutual exclusion on updates and reads. Useful for implementing
> +     hash tables. Downside over list.h: lookup of tail in O(n).
> +
> +urcu/rcuhlist.h:
> +
> +     Doubly-linked list, with single pointer list head. Requires
> +     mutual exclusion on updates, allows RCU read traversals. Useful
> +     for implementing hash tables. Downside over rculist.h: lookup of
> +     tail in O(n).
> +
> +urcu/rculfqueue.h:
> +
> +     RCU queue with lock-free enqueue, lock-free dequeue. RCU used to
> +     provide existance guarantees.
> +
> +urcu/wfqueue.h:
> +
> +     Queue with wait-free enqueue, blocking dequeue. This queue does
> +     _not_ use RCU.
> +
> +urcu/rculfstack.h:
> +
> +     RCU stack with lock-free push, lock-free dequeue. RCU used to
> +     provide existance guarantees.
> +
> +urcu/wfstack.h:
> +
> +     Stack with wait-free enqueue, blocking dequeue. This stack does
> +     _not_ use RCU.
> +
> +urcu/rculfhash.h:
> +
> +     Lock-Free Resizable RCU Hash Table. RCU used to provide
> +     existance guarantees. Provides scalable updates, and scalable
> +     RCU read-side lookups and traversals. Unique and duplicate keys
> +     are supported. Provides "uniquify add" and "replace add"
> +     operations, along with associated read-side traversal uniqueness
> +     guarantees. Automatic hash table resize based on number of
> +     elements is supported. See the API for more details.
> 
> -- 
> Mathieu Desnoyers
> Operating System Efficiency R&D Consultant
> EfficiOS Inc.
> http://www.efficios.com
> 
> _______________________________________________
> rp mailing list
> r...@svcs.cs.pdx.edu
> http://svcs.cs.pdx.edu/mailman/listinfo/rp
> 


_______________________________________________
lttng-dev mailing list
lttng-dev@lists.lttng.org
http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

Reply via email to