rcuja: API change: move rcu_head to user code
[userspace-rcu.git] / urcu / rcuja.h
index 9a006a395bcc31a3748acd42e134036a5a5e4254..a6407b66785fc757b568605b0f79792ab2c83286 100644 (file)
@@ -39,8 +39,6 @@ extern "C" {
 struct cds_ja_node {
        /* Linked list of nodes with same key */
        struct cds_hlist_node list;
-       /* delayed reclaim */
-       struct rcu_head head;
 };
 
 struct cds_ja;
@@ -58,10 +56,15 @@ void cds_ja_node_init(struct cds_ja_node *node)
 }
 
 struct cds_hlist_head cds_ja_lookup(struct cds_ja *ja, uint64_t key);
+struct cds_hlist_head cds_ja_lookup_lower_equal(struct cds_ja *ja,
+               uint64_t key);
 
 int cds_ja_add(struct cds_ja *ja, uint64_t key,
                struct cds_ja_node *new_node);
 
+struct cds_ja_node *cds_ja_add_unique(struct cds_ja *ja, uint64_t key,
+               struct cds_ja_node *new_node);
+
 int cds_ja_del(struct cds_ja *ja, uint64_t key,
                struct cds_ja_node *node);
 
@@ -75,7 +78,7 @@ struct cds_ja *cds_ja_new(unsigned int key_bits)
 }
 
 int cds_ja_destroy(struct cds_ja *ja,
-               void (*free_node_cb)(struct rcu_head *head));
+               void (*rcu_free_node_cb)(struct cds_ja_node *node));
 
 #ifdef __cplusplus
 }
This page took 0.027254 seconds and 4 git commands to generate.