kmem_cache_create(9)
NAME
kmem_cache_create - Create a cache.
SYNOPSIS
struct kmem_cache * kmem_cache_create(const char * name,
size_t size,
size_t align,
unsigned long flags,
void (*ctor) (struct
kmem_cache *, void *));
ARGUMENTS
- name
- A string which is used in /proc/slabinfo to identify
- this cache.
- size
- The size of objects to be created in this cache.
- align
- The required alignment for the objects.
- flags
- SLAB flags
- ctor
- A constructor for the objects.
DESCRIPTION
- Returns a ptr to the cache on success, NULL on failure.
- Cannot be
called within a int, but can be interrupted. The ctor is - run when new
pages are allocated by the cache. - name must be valid until the cache is destroyed. This im
- plies that the
module calling this has to destroy the cache before get - ting unloaded.
- The flags are
- SLAB_POISON - Poison the slab with a known test pattern
- (a5a5a5a5) to
catch references to uninitialised memory. - SLAB_RED_ZONE - Insert `Red´ zones around the allocated
- memory to check
for buffer overruns. - SLAB_HWCACHE_ALIGN - Align the objects in this cache to a
- hardware
cacheline. This can be beneficial if you´re counting cy - cles as closely
as davem.