zephyr/modules/segger
Jordan Yates 60442a221a modules: segger: remove mutex locking
Remove mutex locking in favour of the standard IRQ locking mechanism.
The primary problem with the mutex implementation is that mutex locking
is forbidden in ISR's. This means that any logging from an interrupt
context (e.g. LOG_PANIC in an exception handler), will itself trigger
another assertion due its attempt to use a mutex.

Furthermore, mutexes are a relatively heavyweight locking scheme, which
doesn't necessarily make sense in the context of extremely short locking
periods that would be expected from RTT.

This change aligns Zephyr with the default RTT locking scheme, which
uses interrupt masking to perform access control.

Resolves #79403.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-11-07 11:06:45 -08:00
..
CMakeLists.txt debug: tracing: Add Segger RTT linker section options 2024-08-12 10:14:34 +02:00
Kconfig modules: segger: remove mutex locking 2024-11-07 11:06:45 -08:00
SEGGER_RTT_zephyr.c modules: segger: remove mutex locking 2024-11-07 11:06:45 -08:00
segger_rtt.ld debug: tracing: Add Segger RTT linker section options 2024-08-12 10:14:34 +02:00