diff options
author | Vijay Bellur <vijay@gluster.com> | 2009-11-26 06:37:30 +0000 |
---|---|---|
committer | Anand V. Avati <avati@dev.gluster.com> | 2009-11-26 04:32:25 -0800 |
commit | 63f963700f0c89292092047ec2423e8d8ab1f955 (patch) | |
tree | fd3ab478b460385a9d25172c0b6a7e29807cdb4d /libglusterfs/src/rbthash.h | |
parent | a928aa5e0d65b9439b8a10eb9dede954220ba9f3 (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.h | 5 |
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); |