diff options
author | Michael Holzheu <holzheu@linux.vnet.ibm.com> | 2013-11-13 04:38:27 -0500 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2013-11-15 08:08:40 -0500 |
commit | e657d8fe2faf49ed5d35e2325bd0f1712b8058cd (patch) | |
tree | 420f6c638e1a42f3a83135eff827dd4832544023 /arch/s390/kernel/setup.c | |
parent | f8049e3e869f6de644e4302b3d85d06e185ddced (diff) |
s390/sclp: Determine HSA size dynamically for zfcpdump
Currently we have hardcoded the HSA size to 32 MiB. With this patch the
HSA size is determined dynamically via SCLP in early.c.
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/setup.c')
-rw-r--r-- | arch/s390/kernel/setup.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index ffe1c53264a7..4444875266ee 100644 --- a/arch/s390/kernel/setup.c +++ b/arch/s390/kernel/setup.c | |||
@@ -471,8 +471,9 @@ static void __init setup_memory_end(void) | |||
471 | 471 | ||
472 | 472 | ||
473 | #ifdef CONFIG_ZFCPDUMP | 473 | #ifdef CONFIG_ZFCPDUMP |
474 | if (ipl_info.type == IPL_TYPE_FCP_DUMP && !OLDMEM_BASE) { | 474 | if (ipl_info.type == IPL_TYPE_FCP_DUMP && |
475 | memory_end = ZFCPDUMP_HSA_SIZE; | 475 | !OLDMEM_BASE && sclp_get_hsa_size()) { |
476 | memory_end = sclp_get_hsa_size(); | ||
476 | memory_end_set = 1; | 477 | memory_end_set = 1; |
477 | } | 478 | } |
478 | #endif | 479 | #endif |
@@ -586,7 +587,7 @@ static unsigned long __init find_crash_base(unsigned long crash_size, | |||
586 | crash_base = (chunk->addr + chunk->size) - crash_size; | 587 | crash_base = (chunk->addr + chunk->size) - crash_size; |
587 | if (crash_base < crash_size) | 588 | if (crash_base < crash_size) |
588 | continue; | 589 | continue; |
589 | if (crash_base < ZFCPDUMP_HSA_SIZE_MAX) | 590 | if (crash_base < sclp_get_hsa_size()) |
590 | continue; | 591 | continue; |
591 | if (crash_base < (unsigned long) INITRD_START + INITRD_SIZE) | 592 | if (crash_base < (unsigned long) INITRD_START + INITRD_SIZE) |
592 | continue; | 593 | continue; |