From 9c204774f1c6a1c2f2e2903208090105beaea761 Mon Sep 17 00:00:00 2001 From: Ville Juven Date: Wed, 7 Sep 2022 10:23:23 +0300 Subject: [PATCH] px4_userspace_init: Fix NULL dereference for px4_spi_buses in user space For targets that define the SPI buses via px4_spi_buses_all_hw, a call to px4_set_spi_buses_from_hw_version() is needed. Otherwise a NULL de-reference will occur when trying to access px4_spi_buses. Fixes a system crash in px4_fmu-v5_protected: up_assert: Assertion failed at file:armv7-m/arm_memfault.c line: 101 task: wq:lp_default --- platforms/nuttx/src/px4/common/px4_userspace_init.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/platforms/nuttx/src/px4/common/px4_userspace_init.cpp b/platforms/nuttx/src/px4/common/px4_userspace_init.cpp index a776b501e9..f5d9882ca2 100644 --- a/platforms/nuttx/src/px4/common/px4_userspace_init.cpp +++ b/platforms/nuttx/src/px4/common/px4_userspace_init.cpp @@ -40,6 +40,7 @@ #include #include #include +#include #include #include @@ -49,6 +50,8 @@ extern "C" void px4_userspace_init(void) { hrt_init(); + px4_set_spi_buses_from_hw_version(); + px4::WorkQueueManagerStart(); uorb_start();