From: Luca Fancellu Date: Mon, 11 Oct 2021 07:56:38 +0000 (+0100) Subject: arm/efi: Fix null pointer dereference X-Git-Tag: archive/raspbian/4.16.0+51-g0941d6cb-1+rpi1~2^2~42^2~111 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=4817dbf1c808064ee15416dba1db30cb793dfa98;p=xen.git arm/efi: Fix null pointer dereference Fix for commit 60649d443dc395243e74d2b3e05594ac0c43cfe3 that introduces a null pointer dereference when the fdt_node_offset_by_compatible is called with "fdt" argument null. Reported-by: Julien Grall Fixes: 60649d443d ("arm/efi: Introduce xen,uefi-cfg-load DT property") Signed-off-by: Luca Fancellu Reviewed-by: Bertrand Marquis Reviewed-by: Stefano Stabellini --- diff --git a/xen/arch/arm/efi/efi-boot.h b/xen/arch/arm/efi/efi-boot.h index a3e46453d4..e63dafac26 100644 --- a/xen/arch/arm/efi/efi-boot.h +++ b/xen/arch/arm/efi/efi-boot.h @@ -593,7 +593,8 @@ static bool __init efi_arch_use_config_file(EFI_SYSTEM_TABLE *SystemTable) dtbfile.ptr = fdt; dtbfile.need_to_free = false; /* Config table memory can't be freed. */ - if ( fdt_node_offset_by_compatible(fdt, 0, "multiboot,module") > 0 ) + if ( fdt && + (fdt_node_offset_by_compatible(fdt, 0, "multiboot,module") > 0) ) { /* Locate chosen node */ int node = fdt_subnode_offset(fdt, 0, "chosen");