From d1c4602f80e395d1d6ab0453b8f0a6cc10aefadf Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Tue, 16 Jul 2024 01:51:04 +0000 Subject: Refactor dcache, add prep for shibari-cache Signed-off-by: Laurent Bercot --- src/cache/dcache_init.c | 55 ------------------------------------------------- 1 file changed, 55 deletions(-) delete mode 100644 src/cache/dcache_init.c (limited to 'src/cache/dcache_init.c') diff --git a/src/cache/dcache_init.c b/src/cache/dcache_init.c deleted file mode 100644 index d42ec62..0000000 --- a/src/cache/dcache_init.c +++ /dev/null @@ -1,55 +0,0 @@ -/* ISC license. */ - -#include -#include - -#include -#include -#include -#include - -#include - -static int key_cmp (void const *a, void const *b, void *x) -{ - dcache_key_t const *ka = a ; - dcache_key_t const *kb = b ; - if (ka->len < kb->len) return -1 ; - if (kb->len < ka->len) return 1 ; - (void)x ; - return memcmp(ka->s, kb->s, ka->len) ; -} - -static int tain_cmp (void const *a, void const *b, void *x) -{ - tain const *ta = a ; - tain const *tb = b ; - (void)x ; - return tain_less(ta, tb) ? -1 : tain_less(tb, ta) ; -} - -static void *key_dtok (uint32_t d, void *x) -{ - return &GENSETDYN_P(dcache_node_t, (gensetdyn *)x, d)->key ; -} - -static void *entry_dtok (uint32_t d, void *x) -{ - return &GENSETDYN_P(dcache_node_t, (gensetdyn *)x, d)->entry ; -} - -static void *expire_dtok (uint32_t d, void *x) -{ - return &GENSETDYN_P(dcache_node_t, (gensetdyn *)x, d)->expire ; -} - - -void dcache_init (dcache_t *z, uint64_t max) -{ - gensetdyn_init(&z->storage, sizeof(dcache_node_t), max >> 9, 3, 8) ; - avltree_init(&z->by_key, max >> 9, 3, 8, &key_dtok, &key_cmp, &z->storage) ; - avltree_init(&z->by_entry, max >> 9, 3, 8, &entry_dtok, &tain_cmp, &z->storage) ; - avltree_init(&z->by_expire, max >> 9, 3, 8, &expire_dtok, &tain_cmp, &z->storage) ; - z->size = 0 ; - z->motion = 0 ; -} -- cgit v1.3.1