From: Andrew Morton mm/slab.c: In function '__cache_alloc': mm/slab.c:3065: warning: label 'out' defined but not used mutter. Cc: Christoph Lameter Signed-off-by: Andrew Morton --- mm/slab.c | 11 ++++------- 1 files changed, 4 insertions(+), 7 deletions(-) diff -puN mm/slab.c~slab-fix-kmalloc_node-applying-memory-policies-if-nodeid-==-numa_node_id-fix mm/slab.c --- a/mm/slab.c~slab-fix-kmalloc_node-applying-memory-policies-if-nodeid-==-numa_node_id-fix +++ a/mm/slab.c @@ -3047,22 +3047,19 @@ static __always_inline void *__cache_all gfp_t flags, void *caller) { unsigned long save_flags; - void *objp; + void *objp = NULL; cache_alloc_debugcheck_before(cachep, flags); local_irq_save(save_flags); #ifdef CONFIG_NUMA - if (unlikely(current->flags & (PF_SPREAD_SLAB | PF_MEMPOLICY))) { + if (unlikely(current->flags & (PF_SPREAD_SLAB | PF_MEMPOLICY))) objp = alternate_node_alloc(cachep, flags); - if (objp != NULL) - goto out; - } #endif - objp = ____cache_alloc(cachep, flags); -out: + if (!objp) + objp = ____cache_alloc(cachep, flags); local_irq_restore(save_flags); objp = cache_alloc_debugcheck_after(cachep, flags, objp, caller); _