W-M-R opened a new pull request, #21363:
URL: https://github.com/apache/nuttx/pull/21363

   ## Summary
   
   - `arch/arm/Kconfig`: drop `depends on !LIBM_TOOLCHAIN` from
     `ARM_TOOLCHAIN_CLANG`. The dependency prevented selecting Clang together
     with the libm toolchain even though the two are independent.
   - `boards/arm64/fvp-v8r/fvp-armv8r/src/fvp_bringup.c`: mount tmpfs on
     `CONFIG_LIBC_TMPDIR` when `CONFIG_FS_TMPFS` is enabled.
   - `libs/libbuiltin/libgcc/profile.c`: take the profiler lock through the
     `*_notrace` spinlock helpers. The normal helpers are themselves profiled
     when not inlined, so `mcount_internal()` re-entered itself and deadlocked
     on release.
   - `arch/{arm/src/nrf52,arm/src/nrf53,arm/src/samd2l2,sim/src/sim}`: check the
     result of the allocation before dereferencing it.
   
   ## Impact
   
   - One Kconfig dependency fix, one board bring-up addition, one profiler
     deadlock fix and four NULL checks.
   - No behaviour change for configurations that do not hit these paths.
   
   ## Testing
   
   Host: Ubuntu 22.04, gcc 13, clang 18, arm-none-eabi-gcc 13,
   aarch64-none-elf-gcc 13.
   
   - libm toolchain: configure an `arm` board, enable 
`CONFIG_ARM_TOOLCHAIN_CLANG`
     and `CONFIG_LIBM_TOOLCHAIN`, and confirm both can be selected together and
     the image links.
   - fvp tmpfs: build `fvp-armv8r:nsh` with `CONFIG_FS_TMPFS=y`; booting on the
     Arm FVP mounts `/tmp` successfully (QEMU cannot run this board).
   - profiler lock: build `sim` with `CONFIG_PROFILE_MINI=y` and `-pg`, run a
     CPU-bound workload; before the change `mcount_internal()` deadlocked on the
     profiler lock release, after it completes and `gmon.out` is written.
   - allocation checks: build the `nrf52`, `nrf53`, `samd2l2` and `sim`
     defconfigs that enable those drivers; the added NULL checks compile and the
     devices still enumerate.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to