summaryrefslogtreecommitdiffstats
path: root/libglusterfs/src/rbthash.h
diff options
context:
space:
mode:
authorVijay Bellur <vijay@gluster.com>2009-11-26 06:37:30 +0000
committerAnand V. Avati <avati@dev.gluster.com>2009-11-26 04:32:25 -0800
commit63f963700f0c89292092047ec2423e8d8ab1f955 (patch)
treefd3ab478b460385a9d25172c0b6a7e29807cdb4d /libglusterfs/src/rbthash.h
parenta928aa5e0d65b9439b8a10eb9dede954220ba9f3 (diff)
Changed rbthash_table_init() to take a mem-pool argument.
Changes in libglusterfs/rbthash: rbthash_table_init() now takes a mem-pool argument. The mem-pool argument would be mutually exclusive to expected_entries. If expected_entries is provided, mem-pool would be ignored and vice-versa. Changes in io-cache: 1) Moved rbthash creation to readv. 2) rbthash makes use of 1 rbt instead of 4096 3) A global mem-pool is being used in place of a mem-pool per rbt. Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 335 (Io-cache optimization) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=335
Diffstat (limited to 'libglusterfs/src/rbthash.h')
-rw-r--r--libglusterfs/src/rbthash.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/libglusterfs/src/rbthash.h b/libglusterfs/src/rbthash.h
index f2200f8957c..535dccad926 100644
--- a/libglusterfs/src/rbthash.h
+++ b/libglusterfs/src/rbthash.h
@@ -23,6 +23,7 @@
#include "locking.h"
#include "mem-pool.h"
#include "logging.h"
+#include "common-utils.h"
#include <pthread.h>
@@ -52,11 +53,13 @@ typedef struct rbthash_table {
struct rbthash_bucket *buckets;
rbt_hasher_t hashfunc;
rbt_data_destroyer_t dfunc;
+ gf_boolean_t pool_alloced;
} rbthash_table_t;
extern rbthash_table_t *
rbthash_table_init (int buckets, rbt_hasher_t hfunc,
- rbt_data_destroyer_t dfunc, unsigned long expected_entries);
+ rbt_data_destroyer_t dfunc, unsigned long expected_entries,
+ struct mem_pool *entrypool);
extern int
rbthash_insert (rbthash_table_t *tbl, void *data, void *key, int keylen);