diff options
Diffstat (limited to 'arch/s390/kernel/setup.c')
-rw-r--r-- | arch/s390/kernel/setup.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index d9fb98cde0fa..77a63ae419f0 100644 --- a/arch/s390/kernel/setup.c +++ b/arch/s390/kernel/setup.c | |||
@@ -396,15 +396,12 @@ static void __init | |||
396 | setup_lowcore(void) | 396 | setup_lowcore(void) |
397 | { | 397 | { |
398 | struct _lowcore *lc; | 398 | struct _lowcore *lc; |
399 | int lc_pages; | ||
400 | 399 | ||
401 | /* | 400 | /* |
402 | * Setup lowcore for boot cpu | 401 | * Setup lowcore for boot cpu |
403 | */ | 402 | */ |
404 | lc_pages = sizeof(void *) == 8 ? 2 : 1; | 403 | BUILD_BUG_ON(sizeof(struct _lowcore) != LC_PAGES * 4096); |
405 | lc = (struct _lowcore *) | 404 | lc = __alloc_bootmem(LC_PAGES * PAGE_SIZE, LC_PAGES * PAGE_SIZE, 0); |
406 | __alloc_bootmem(lc_pages * PAGE_SIZE, lc_pages * PAGE_SIZE, 0); | ||
407 | memset(lc, 0, lc_pages * PAGE_SIZE); | ||
408 | lc->restart_psw.mask = PSW_BASE_BITS | PSW_DEFAULT_KEY; | 405 | lc->restart_psw.mask = PSW_BASE_BITS | PSW_DEFAULT_KEY; |
409 | lc->restart_psw.addr = | 406 | lc->restart_psw.addr = |
410 | PSW_ADDR_AMODE | (unsigned long) restart_int_handler; | 407 | PSW_ADDR_AMODE | (unsigned long) restart_int_handler; |