You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Slab allocators: Cleanup zeroing allocations
It becomes now easy to support the zeroing allocs with generic inline functions in slab.h. Provide inline definitions to allow the continued use of kzalloc, kmem_cache_zalloc etc but remove other definitions of zeroing functions from the slab allocators and util.c. Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
ce15fea827
commit
81cda66261
@@ -3589,23 +3589,6 @@ void *kmem_cache_alloc(struct kmem_cache *cachep, gfp_t flags)
|
||||
}
|
||||
EXPORT_SYMBOL(kmem_cache_alloc);
|
||||
|
||||
/**
|
||||
* kmem_cache_zalloc - Allocate an object. The memory is set to zero.
|
||||
* @cache: The cache to allocate from.
|
||||
* @flags: See kmalloc().
|
||||
*
|
||||
* Allocate an object from this cache and set the allocated memory to zero.
|
||||
* The flags are only relevant if the cache has no available objects.
|
||||
*/
|
||||
void *kmem_cache_zalloc(struct kmem_cache *cache, gfp_t flags)
|
||||
{
|
||||
void *ret = __cache_alloc(cache, flags, __builtin_return_address(0));
|
||||
if (ret)
|
||||
memset(ret, 0, obj_size(cache));
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(kmem_cache_zalloc);
|
||||
|
||||
/**
|
||||
* kmem_ptr_validate - check if an untrusted pointer might
|
||||
* be a slab entry.
|
||||
|
||||
@@ -543,16 +543,6 @@ void *kmem_cache_alloc_node(struct kmem_cache *c, gfp_t flags, int node)
|
||||
}
|
||||
EXPORT_SYMBOL(kmem_cache_alloc_node);
|
||||
|
||||
void *kmem_cache_zalloc(struct kmem_cache *c, gfp_t flags)
|
||||
{
|
||||
void *ret = kmem_cache_alloc(c, flags);
|
||||
if (ret)
|
||||
memset(ret, 0, c->size);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(kmem_cache_zalloc);
|
||||
|
||||
static void __kmem_cache_free(void *b, int size)
|
||||
{
|
||||
if (size < PAGE_SIZE)
|
||||
|
||||
@@ -2706,17 +2706,6 @@ err:
|
||||
}
|
||||
EXPORT_SYMBOL(kmem_cache_create);
|
||||
|
||||
void *kmem_cache_zalloc(struct kmem_cache *s, gfp_t flags)
|
||||
{
|
||||
void *x;
|
||||
|
||||
x = slab_alloc(s, flags, -1, __builtin_return_address(0));
|
||||
if (x)
|
||||
memset(x, 0, s->objsize);
|
||||
return x;
|
||||
}
|
||||
EXPORT_SYMBOL(kmem_cache_zalloc);
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
/*
|
||||
* Use the cpu notifier to insure that the cpu slabs are flushed when
|
||||
|
||||
@@ -5,20 +5,6 @@
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
/**
|
||||
* __kzalloc - allocate memory. The memory is set to zero.
|
||||
* @size: how many bytes of memory are required.
|
||||
* @flags: the type of memory to allocate.
|
||||
*/
|
||||
void *__kzalloc(size_t size, gfp_t flags)
|
||||
{
|
||||
void *ret = kmalloc_track_caller(size, flags);
|
||||
if (ret)
|
||||
memset(ret, 0, size);
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(__kzalloc);
|
||||
|
||||
/*
|
||||
* kstrdup - allocate space for and copy an existing string
|
||||
*
|
||||
* @s: the string to duplicate
|
||||
|
||||
Reference in New Issue
Block a user