aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/smp.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390/kernel/smp.c')
-rw-r--r--arch/s390/kernel/smp.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c
index bf170c698f0c..1e7db1ab7453 100644
--- a/arch/s390/kernel/smp.c
+++ b/arch/s390/kernel/smp.c
@@ -500,18 +500,15 @@ static int __cpuinit smp_alloc_lowcore(int cpu)
500 500
501 save_area = get_zeroed_page(GFP_KERNEL); 501 save_area = get_zeroed_page(GFP_KERNEL);
502 if (!save_area) 502 if (!save_area)
503 goto out_save_area; 503 goto out;
504 lowcore->extended_save_area_addr = (u32) save_area; 504 lowcore->extended_save_area_addr = (u32) save_area;
505 } 505 }
506#endif 506#endif
507 lowcore_ptr[cpu] = lowcore; 507 lowcore_ptr[cpu] = lowcore;
508 return 0; 508 return 0;
509 509
510#ifndef CONFIG_64BIT
511out_save_area:
512 free_page(panic_stack);
513#endif
514out: 510out:
511 free_page(panic_stack);
515 free_pages(async_stack, ASYNC_ORDER); 512 free_pages(async_stack, ASYNC_ORDER);
516 free_pages((unsigned long) lowcore, lc_order); 513 free_pages((unsigned long) lowcore, lc_order);
517 return -ENOMEM; 514 return -ENOMEM;