linux_compat: handle __GFP_ZERO in kmalloc()

Currently, kzalloc() returns zero-filled memory, while kmalloc()
simply ignores the second argument and never fills the memory
area with zeros.

I want kmalloc(size, __GFP_ZERO) to behave as kzalloc() does,
which will make it easier to add more memory allocator variants.

With the introduction of __GFP_ZERO flag, going forward, kzmalloc()
variants can fall back to kmalloc() enabling the __GFP_ZERO flag.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Acked-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
This commit is contained in:
Masahiro Yamada 2015-07-13 13:17:07 +09:00 committed by Simon Glass
parent ebc3328ccc
commit 6b9f9eadff
2 changed files with 18 additions and 15 deletions

View file

@ -16,14 +16,13 @@ unsigned long copy_from_user(void *dest, const void *src,
void *kmalloc(size_t size, int flags)
{
return memalign(ARCH_DMA_MINALIGN, size);
}
void *p;
void *kzalloc(size_t size, int flags)
{
void *ptr = kmalloc(size, flags);
memset(ptr, 0, size);
return ptr;
p = memalign(ARCH_DMA_MINALIGN, size);
if (flags & __GFP_ZERO)
memset(p, 0, size);
return p;
}
struct kmem_cache *get_mem(int element_sz)