diff options
author | Matt Redfearn <matt.redfearn@imgtec.com> | 2016-10-17 17:21:46 +0100 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2016-11-04 00:30:49 +0100 |
commit | 4736697963385e6257ee8e260e97347e858cd962 (patch) | |
tree | 31a16594af6cbdf511dadea88664a213e44a52d8 /arch | |
parent | 93032e31a5f12df847639db3ad0b7f300bf44b7b (diff) | |
download | linux-stable-4736697963385e6257ee8e260e97347e858cd962.tar.gz linux-stable-4736697963385e6257ee8e260e97347e858cd962.tar.bz2 linux-stable-4736697963385e6257ee8e260e97347e858cd962.zip |
MIPS: KASLR: Fix handling of NULL FDT
If platform code returns a NULL pointer to the FDT, initial_boot_params
will not get set to a valid pointer and attempting to find the /chosen
node in it will cause a NULL pointer dereference and the kernel to crash
immediately on startup - with no output to the console.
Fix this by checking that initial_boot_params is valid before using it.
Fixes: 405bc8fd12f5 ("MIPS: Kernel: Implement KASLR using CONFIG_RELOCATABLE")
Cc: stable@vger.kernel.org # 4.7+
Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14414/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/kernel/relocate.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/mips/kernel/relocate.c b/arch/mips/kernel/relocate.c index ca1cc30c0891..1958910b75c0 100644 --- a/arch/mips/kernel/relocate.c +++ b/arch/mips/kernel/relocate.c @@ -200,7 +200,7 @@ static inline __init unsigned long get_random_boot(void) #if defined(CONFIG_USE_OF) /* Get any additional entropy passed in device tree */ - { + if (initial_boot_params) { int node, len; u64 *prop; |