Use lock-less printf() in assert macro
This allows to use assertions in interrupt context (which we do in
some places currently). Before this patch, a CPU could dead lock
itself by:
1. acquiring the printf lock in the normal execution context;
2. taking an interrupt while still holding the lock;
3. inside the interrupt handler, executing an assertion check that
fails and thus tries to print an error message on the UART.
In a situation where several CPUs might be executing assert() at the
same time, we will now get interleaved messages but that should be
pretty rare.
Change-Id: I6d1603300f6a3ea5756a46338cb950b7ca3e7956
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
1 file changed