Document: rculfhash destroy and resize side-effect in 0.7
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Mon, 29 Apr 2013 23:24:42 +0000 (19:24 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Tue, 30 Apr 2013 00:46:08 +0000 (20:46 -0400)
Document that destroy puts thread online with QSBR.

Document that resize puts thread online with QSBR, and that it should
not be called with RCU read-side lock held.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
urcu/rculfhash.h

index 0496662e209c250f0e11ea1e83cecd25eaa06eae..727f5c9723131c144a20e0e7ee8ad2b2dbdd231c 100644 (file)
@@ -177,6 +177,9 @@ struct cds_lfht *cds_lfht_new(unsigned long init_size,
  * Threads calling this API need to be registered RCU read-side threads.
  * cds_lfht_destroy should *not* be called from a RCU read-side critical
  * section.
+ * In userspace RCU 0.7.x, for QSBR RCU flavor, cds_lfht_destroy() has a
+ * side-effect: it puts the caller thread in "online" state. This will
+ * be fixed in userspace RCU 0.8.x.
  */
 int cds_lfht_destroy(struct cds_lfht *ht, pthread_attr_t **attr);
 
@@ -426,6 +429,11 @@ int cds_lfht_is_node_deleted(struct cds_lfht_node *node);
  *
  * Threads calling this API need to be registered RCU read-side threads.
  * This function does not (necessarily) issue memory barriers.
+ * cds_lfht_resize should *not* be called from a RCU read-side critical
+ * section.
+ * In userspace RCU 0.7.x, for QSBR RCU flavor, cds_lfht_resize() has a
+ * side-effect: it puts the caller thread in "online" state. This will
+ * be fixed in userspace RCU 0.8.x.
  */
 void cds_lfht_resize(struct cds_lfht *ht, unsigned long new_size);
 
This page took 0.025159 seconds and 4 git commands to generate.