diff options
Diffstat (limited to 'lib/linux_compat.c')
-rw-r--r-- | lib/linux_compat.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/lib/linux_compat.c b/lib/linux_compat.c index 8c7a7b57525..a936a7eac21 100644 --- a/lib/linux_compat.c +++ b/lib/linux_compat.c @@ -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) |