Lines Matching refs:cache
5 void io_alloc_cache_free(struct io_alloc_cache *cache, in io_alloc_cache_free() argument
10 if (!cache->entries) in io_alloc_cache_free()
13 while ((entry = io_alloc_cache_get(cache)) != NULL) in io_alloc_cache_free()
16 kvfree(cache->entries); in io_alloc_cache_free()
17 cache->entries = NULL; in io_alloc_cache_free()
21 bool io_alloc_cache_init(struct io_alloc_cache *cache, in io_alloc_cache_init() argument
25 cache->entries = kvmalloc_array(max_nr, sizeof(void *), GFP_KERNEL); in io_alloc_cache_init()
26 if (!cache->entries) in io_alloc_cache_init()
29 cache->nr_cached = 0; in io_alloc_cache_init()
30 cache->max_cached = max_nr; in io_alloc_cache_init()
31 cache->elem_size = size; in io_alloc_cache_init()
32 cache->init_clear = init_bytes; in io_alloc_cache_init()
36 void *io_cache_alloc_new(struct io_alloc_cache *cache, gfp_t gfp) in io_cache_alloc_new() argument
40 obj = kmalloc(cache->elem_size, gfp); in io_cache_alloc_new()
41 if (obj && cache->init_clear) in io_cache_alloc_new()
42 memset(obj, 0, cache->init_clear); in io_cache_alloc_new()