Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757755AbcJQKFI (ORCPT ); Mon, 17 Oct 2016 06:05:08 -0400 Received: from mailapp02.imgtec.com ([217.156.133.132]:24240 "EHLO mailapp01.imgtec.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753960AbcJQKFA (ORCPT ); Mon, 17 Oct 2016 06:05:00 -0400 From: Matt Redfearn To: Ralf Baechle CC: , Matt Redfearn , "# 4 . 7+" , Subject: [PATCH] MIPS: KASLR: Fix handling of NULL FDT Date: Mon, 17 Oct 2016 11:04:54 +0100 Message-ID: <1476698694-6685-1-git-send-email-matt.redfearn@imgtec.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.150.130.83] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1006 Lines: 29 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: # 4.7+ Signed-off-by: Matt Redfearn --- arch/mips/kernel/relocate.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/mips/kernel/relocate.c b/arch/mips/kernel/relocate.c index ca1cc30c0891..8810183840ca 100644 --- a/arch/mips/kernel/relocate.c +++ b/arch/mips/kernel/relocate.c @@ -200,6 +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; -- 2.7.4