casaroli opened a new pull request, #21077: URL: https://github.com/apache/nuttx/pull/21077
## Summary `CONFIG_ESP32S3_USERFAULT_ABORT` is on by default in protected and kernel builds and selects `CONFIG_SIG_DEFAULT`. `SIG_DEFAULT` depends on `CONFIG_ENABLE_ALL_SIGNALS`: `sched/signal/sig_default.c` calls `nxsig_action()`, which is built only with full signal support. With `CONFIG_ENABLE_PARTIAL_SIGNALS` the select forces `SIG_DEFAULT` on and the link fails: ``` sig_default.c:416: undefined reference to `nxsig_action' ``` This PR makes `ESP32S3_USERFAULT_ABORT` depend on `ENABLE_ALL_SIGNALS`. Without full signals a fault in user code halts the system, as it did before the option was added. The ESP32-S3 documentation now gives the condition. ## Impact ESP32-S3 protected and kernel builds with partial or no signals. No change with full signals (the default). ## Testing `esp32s3-devkit:knsh`, GCC (xtensa-esp-elf 14.2), with this PR and #21073 (the board file needs it for any build without full signals): - `ENABLE_ALL_SIGNALS`: builds, `ESP32S3_USERFAULT_ABORT=y`. - `ENABLE_PARTIAL_SIGNALS`: builds, `ESP32S3_USERFAULT_ABORT` is off. With #21073 and without this PR: the link error above. `tools/checkpatch.sh -c -u -m -g` passes. -- 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]
