aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorPekka Enberg <penberg@cs.helsinki.fi>2006-03-25 06:06:42 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-25 11:22:49 -0500
commita8c0f9a41f88da703ade33f9c1626a55c786e8bb (patch)
tree8c2904597c61b873bfd85eed4ac196dd66e6f125 /include/linux
parent871751e25d956ad24f129ca972b7851feaa61d53 (diff)
[PATCH] slab: introduce kmem_cache_zalloc allocator
Introduce a memory-zeroing variant of kmem_cache_alloc. The allocator already exits in XFS and there are potential users for it so this patch makes the allocator available for the general public. Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/slab.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/slab.h b/include/linux/slab.h
index f88e08a5802c..1216b09e07b1 100644
--- a/include/linux/slab.h
+++ b/include/linux/slab.h
@@ -64,6 +64,7 @@ extern kmem_cache_t *kmem_cache_create(const char *, size_t, size_t, unsigned lo
64extern int kmem_cache_destroy(kmem_cache_t *); 64extern int kmem_cache_destroy(kmem_cache_t *);
65extern int kmem_cache_shrink(kmem_cache_t *); 65extern int kmem_cache_shrink(kmem_cache_t *);
66extern void *kmem_cache_alloc(kmem_cache_t *, gfp_t); 66extern void *kmem_cache_alloc(kmem_cache_t *, gfp_t);
67extern void *kmem_cache_zalloc(struct kmem_cache *, gfp_t);
67extern void kmem_cache_free(kmem_cache_t *, void *); 68extern void kmem_cache_free(kmem_cache_t *, void *);
68extern unsigned int kmem_cache_size(kmem_cache_t *); 69extern unsigned int kmem_cache_size(kmem_cache_t *);
69extern const char *kmem_cache_name(kmem_cache_t *); 70extern const char *kmem_cache_name(kmem_cache_t *);
@@ -156,6 +157,7 @@ struct kmem_cache *kmem_cache_create(const char *c, size_t, size_t,
156 void (*)(void *, struct kmem_cache *, unsigned long)); 157 void (*)(void *, struct kmem_cache *, unsigned long));
157int kmem_cache_destroy(struct kmem_cache *c); 158int kmem_cache_destroy(struct kmem_cache *c);
158void *kmem_cache_alloc(struct kmem_cache *c, gfp_t flags); 159void *kmem_cache_alloc(struct kmem_cache *c, gfp_t flags);
160void *kmem_cache_zalloc(struct kmem_cache *, gfp_t);
159void kmem_cache_free(struct kmem_cache *c, void *b); 161void kmem_cache_free(struct kmem_cache *c, void *b);
160const char *kmem_cache_name(struct kmem_cache *); 162const char *kmem_cache_name(struct kmem_cache *);
161void *kmalloc(size_t size, gfp_t flags); 163void *kmalloc(size_t size, gfp_t flags);