diff options
Diffstat (limited to 'include/linux/slab.h')
-rw-r--r-- | include/linux/slab.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/include/linux/slab.h b/include/linux/slab.h index 019538c7c..58edc3b0c 100644 --- a/include/linux/slab.h +++ b/include/linux/slab.h @@ -35,9 +35,7 @@ typedef struct kmem_cache_s kmem_cache_t; #define SLAB_POISON 0x00000800UL /* Poison objects */ #define SLAB_NO_REAP 0x00001000UL /* never reap from the cache */ #define SLAB_HWCACHE_ALIGN 0x00002000UL /* align objs on a h/w cache lines */ -#if 0 -#define SLAB_HIGH_PACK 0x00004000UL /* XXX */ -#endif +#define SLAB_CACHE_DMA 0x00004000UL /* use GFP_DMA memory */ /* flags passed to a constructor func */ #define SLAB_CTOR_CONSTRUCTOR 0x001UL /* if not set, then deconstructor */ @@ -47,7 +45,9 @@ typedef struct kmem_cache_s kmem_cache_t; /* prototypes */ extern void kmem_cache_init(void); extern void kmem_cache_sizes_init(void); -extern kmem_cache_t *kmem_find_general_cachep(size_t); +extern void kmem_cpucache_init(void); + +extern kmem_cache_t *kmem_find_general_cachep(size_t, int gfpflags); extern kmem_cache_t *kmem_cache_create(const char *, size_t, size_t, unsigned long, void (*)(void *, kmem_cache_t *, unsigned long), void (*)(void *, kmem_cache_t *, unsigned long)); @@ -58,14 +58,18 @@ extern void kmem_cache_free(kmem_cache_t *, void *); extern void *kmalloc(size_t, int); extern void kfree(const void *); -extern void kfree_s(const void *, size_t); +#define kfree_s(objp,s) kfree(objp) extern void kmem_cache_reap(int); -extern int get_slabinfo(char *); +extern int slabinfo_read_proc(char *page, char **start, off_t off, + int count, int *eof, void *data); +extern int slabinfo_write_proc(struct file *file, const char *buffer, + unsigned long count, void *data); /* System wide caches */ extern kmem_cache_t *vm_area_cachep; extern kmem_cache_t *mm_cachep; +extern kmem_cache_t *names_cachep; #endif /* __KERNEL__ */ |