Up until now, for platforms that support DT, kvm-unit-tests would unconditionally use DT to configure the system and the code made the assumption that the fdt will always be a valid pointer. On Arm systems that support both ACPI and DT, kvm-unit-tests plans to follow the same convension as the Linux kernel: attempt to configure the system using the DT first, then fallback to ACPI. As a result, the fdt pointer can be NULL. Check for that in dt_available(). Signed-off-by: Nikos Nikoleris <nikos.nikoleris@xxxxxxx> Reviewed-by: Andrew Jones <andrew.jones@xxxxxxxxx> [ Alex E: Minor changes to the commit message ] --- lib/devicetree.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/devicetree.c b/lib/devicetree.c index 78c1f6fb..3ff9d164 100644 --- a/lib/devicetree.c +++ b/lib/devicetree.c @@ -16,7 +16,7 @@ const void *dt_fdt(void) bool dt_available(void) { - return fdt_check_header(fdt) == 0; + return fdt && fdt_check_header(fdt) == 0; } int dt_get_nr_cells(int fdtnode, u32 *nr_address_cells, u32 *nr_size_cells) -- 2.25.1