diff --git a/mm/slub.c b/mm/slub.c index bb278c886927fbd46fbac3c64c477b86ac76917b..51ddd01604cd0e176045146c690cbed9cf688c00 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -1541,7 +1541,7 @@ static void *__slab_alloc(struct kmem_cache *s, * Otherwise we can simply pick the next object from the lockless free list. */ static void __always_inline *slab_alloc(struct kmem_cache *s, - gfp_t gfpflags, int node, void *addr, int length) + gfp_t gfpflags, int node, void *addr) { struct page *page; void **object; @@ -1561,23 +1561,21 @@ static void __always_inline *slab_alloc(struct kmem_cache *s, local_irq_restore(flags); if (unlikely((gfpflags & __GFP_ZERO) && object)) - memset(object, 0, length); + memset(object, 0, s->objsize); return object; } void *kmem_cache_alloc(struct kmem_cache *s, gfp_t gfpflags) { - return slab_alloc(s, gfpflags, -1, - __builtin_return_address(0), s->objsize); + return slab_alloc(s, gfpflags, -1, __builtin_return_address(0)); } EXPORT_SYMBOL(kmem_cache_alloc); #ifdef CONFIG_NUMA void *kmem_cache_alloc_node(struct kmem_cache *s, gfp_t gfpflags, int node) { - return slab_alloc(s, gfpflags, node, - __builtin_return_address(0), s->objsize); + return slab_alloc(s, gfpflags, node, __builtin_return_address(0)); } EXPORT_SYMBOL(kmem_cache_alloc_node); #endif @@ -2369,7 +2367,7 @@ void *__kmalloc(size_t size, gfp_t flags) if (ZERO_OR_NULL_PTR(s)) return s; - return slab_alloc(s, flags, -1, __builtin_return_address(0), size); + return slab_alloc(s, flags, -1, __builtin_return_address(0)); } EXPORT_SYMBOL(__kmalloc); @@ -2381,7 +2379,7 @@ void *__kmalloc_node(size_t size, gfp_t flags, int node) if (ZERO_OR_NULL_PTR(s)) return s; - return slab_alloc(s, flags, node, __builtin_return_address(0), size); + return slab_alloc(s, flags, node, __builtin_return_address(0)); } EXPORT_SYMBOL(__kmalloc_node); #endif @@ -2712,7 +2710,7 @@ void *kmem_cache_zalloc(struct kmem_cache *s, gfp_t flags) { void *x; - x = slab_alloc(s, flags, -1, __builtin_return_address(0), 0); + x = slab_alloc(s, flags, -1, __builtin_return_address(0)); if (x) memset(x, 0, s->objsize); return x; @@ -2762,7 +2760,7 @@ void *__kmalloc_track_caller(size_t size, gfp_t gfpflags, void *caller) if (ZERO_OR_NULL_PTR(s)) return s; - return slab_alloc(s, gfpflags, -1, caller, size); + return slab_alloc(s, gfpflags, -1, caller); } void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags, @@ -2773,7 +2771,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags, if (ZERO_OR_NULL_PTR(s)) return s; - return slab_alloc(s, gfpflags, node, caller, size); + return slab_alloc(s, gfpflags, node, caller); } #if defined(CONFIG_SYSFS) && defined(CONFIG_SLUB_DEBUG)