aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/setup.c
diff options
context:
space:
mode:
authorAlexander Gordeev <agordeev@linux.ibm.com>2021-01-21 13:06:02 +0100
committerVasily Gorbik <gor@linux.ibm.com>2021-10-26 15:21:28 +0200
commit04f11ed7d8e018e1f01ebda5814ddfeb3a1e6ae1 (patch)
tree48873c01de90b9ad1ea0876c75688ff02533c418 /arch/s390/kernel/setup.c
parents390/setup: use virtual address for STSI instruction (diff)
downloadlinux-dev-04f11ed7d8e018e1f01ebda5814ddfeb3a1e6ae1.tar.xz
linux-dev-04f11ed7d8e018e1f01ebda5814ddfeb3a1e6ae1.zip
s390/setup: use physical pointers for memblock_reserve()
memblock_reserve() function accepts physcal address of a memory block to be reserved, but provided with virtual memory pointers. Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390/kernel/setup.c')
-rw-r--r--arch/s390/kernel/setup.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
index 5f0b0dca41eb..9dbde3697bdf 100644
--- a/arch/s390/kernel/setup.c
+++ b/arch/s390/kernel/setup.c
@@ -805,13 +805,10 @@ static void __init check_initrd(void)
*/
static void __init reserve_kernel(void)
{
- unsigned long start_pfn = PFN_UP(__pa(_end));
-
memblock_reserve(0, STARTUP_NORMAL_OFFSET);
- memblock_reserve((unsigned long)sclp_early_sccb, EXT_SCCB_READ_SCP);
memblock_reserve(__amode31_base, __eamode31 - __samode31);
- memblock_reserve((unsigned long)_stext, PFN_PHYS(start_pfn)
- - (unsigned long)_stext);
+ memblock_reserve(__pa(sclp_early_sccb), EXT_SCCB_READ_SCP);
+ memblock_reserve(__pa(_stext), _end - _stext);
}
static void __init setup_memory(void)