diff options
author | dormando <dormando@rydia.net> | 2016-07-11 19:06:56 -0700 |
---|---|---|
committer | dormando <dormando@rydia.net> | 2016-07-12 18:42:46 -0700 |
commit | ee461d1102053668758e19922813617a0cb9bba6 (patch) | |
tree | 2049dcc9b83fd9b20a3216ece114ab6a54d89f77 /slabs.h | |
parent | 6975235c3d3a3af812a1fc2896f07d9dab1d2eee (diff) | |
download | memcached-ee461d1102053668758e19922813617a0cb9bba6.tar.gz |
slabs reassigns works with chunks and chunked items.
also fixes the new LRU algorithm to balance by total bytes used rather than
total chunks used, since total chunks used isn't tracked for multi-chunk
items.
also fixes a bug where the lru limit wasn't being utilized for HOT_LRU
also some cleanup from previous commits.
Diffstat (limited to 'slabs.h')
-rw-r--r-- | slabs.h | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -20,7 +20,7 @@ unsigned int slabs_clsid(const size_t size); /** Allocate object of given length. 0 on error */ /*@null@*/ #define SLABS_ALLOC_NO_NEWPAGE 1 -void *slabs_alloc(const size_t size, unsigned int id, unsigned int *total_chunks, unsigned int flags); +void *slabs_alloc(const size_t size, unsigned int id, uint64_t *total_bytes, unsigned int flags); /** Free previously allocated object */ void slabs_free(void *ptr, size_t size, unsigned int id); @@ -38,7 +38,7 @@ bool get_stats(const char *stat_type, int nkey, ADD_STAT add_stats, void *c); void slabs_stats(ADD_STAT add_stats, void *c); /* Hints as to freespace in slab class */ -unsigned int slabs_available_chunks(unsigned int id, bool *mem_flag, unsigned int *total_chunks, unsigned int *chunks_perslab); +unsigned int slabs_available_chunks(unsigned int id, bool *mem_flag, uint64_t *total_bytes, unsigned int *chunks_perslab); int start_slab_maintenance_thread(void); void stop_slab_maintenance_thread(void); |