diff options
Diffstat (limited to 'libc/kernel/common/linux/mempool.h')
-rw-r--r-- | libc/kernel/common/linux/mempool.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libc/kernel/common/linux/mempool.h b/libc/kernel/common/linux/mempool.h new file mode 100644 index 0000000..fa2432b --- /dev/null +++ b/libc/kernel/common/linux/mempool.h @@ -0,0 +1,34 @@ +/**************************************************************************** + **************************************************************************** + *** + *** This header was automatically generated from a Linux kernel header + *** of the same name, to make information necessary for userspace to + *** call into the kernel available to libc. It contains only constants, + *** structures, and macros generated from the original header, and thus, + *** contains no copyrightable information. + *** + **************************************************************************** + ****************************************************************************/ +#ifndef _LINUX_MEMPOOL_H +#define _LINUX_MEMPOOL_H + +#include <linux/wait.h> + +struct kmem_cache; + +typedef void * (mempool_alloc_t)(gfp_t gfp_mask, void *pool_data); +typedef void (mempool_free_t)(void *element, void *pool_data); + +typedef struct mempool_s { + spinlock_t lock; + int min_nr; + int curr_nr; + void **elements; + + void *pool_data; + mempool_alloc_t *alloc; + mempool_free_t *free; + wait_queue_head_t wait; +} mempool_t; + +#endif |