projects
/
userspace-rcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rculfhash: merge node gc into add loop
[userspace-rcu.git]
/
urcu
/
rculfhash.h
diff --git
a/urcu/rculfhash.h
b/urcu/rculfhash.h
index ed75431f9864e08b9668e29b86f10496f8110253..e650acdf83c91e9357beab3d224136cbf8ca3c92 100644
(file)
--- a/
urcu/rculfhash.h
+++ b/
urcu/rculfhash.h
@@
-11,7
+11,6
@@
struct rcu_ht_node {
unsigned long hash;
unsigned long reverse_hash;
unsigned int dummy;
unsigned long hash;
unsigned long reverse_hash;
unsigned int dummy;
- void *value;
struct rcu_head head;
};
struct rcu_head head;
};
@@
-29,11
+28,10
@@
typedef unsigned long (*ht_compare_fct)(void *key1, size_t key1_len,
static inline
void ht_node_init(struct rcu_ht_node *node, void *key,
static inline
void ht_node_init(struct rcu_ht_node *node, void *key,
- size_t key_len
, void *value
)
+ size_t key_len)
{
node->key = key;
node->key_len = key_len;
{
node->key = key;
node->key_len = key_len;
- node->value = value;
node->dummy = 0;
}
node->dummy = 0;
}
@@
-48,6
+46,10
@@
struct rcu_ht *ht_new(ht_hash_fct hash_fct,
void (*func)(struct rcu_head *head)));
int ht_destroy(struct rcu_ht *ht);
void (*func)(struct rcu_head *head)));
int ht_destroy(struct rcu_ht *ht);
+/* Count the number of nodes in the hash table. Call with rcu_read_lock held. */
+void ht_count_nodes(struct rcu_ht *ht,
+ unsigned long *count,
+ unsigned long *removed);
/* Call with rcu_read_lock held. */
struct rcu_ht_node *ht_lookup(struct rcu_ht *ht, void *key, size_t key_len);
/* Call with rcu_read_lock held. */
struct rcu_ht_node *ht_lookup(struct rcu_ht *ht, void *key, size_t key_len);
This page took
0.023553 seconds
and
4
git commands to generate.