You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After some analysis and testing, remove the compile-failure check for
CONFIG_SMP.
An earlier commit replaced the spinlock-based critical section code with
one that uses `irq_lock()/unlock()`
Although a bit unclear from both the docs and the name of these macros,
the implementation on SMP definitely does have a spinlock to coordinate
between CPUs on SMP. This doesn't work on some unusual platforms, such
as the rp2040, but those platforms won't work with the rest of Zephyr
yet for the same reason. Presumably adding support for SMP on this
target will also require fixing irq_lock/unlock.
The main difference between using irq_lock/unlock is that it supports
nested calls, without needing a per-nest-level variable. The
critical-section API doesn't provide a place to have this variable, so
this allows us to have a critical-section implementation that should
also work on SMP.
Signed-off-by: David Brown <[email protected]>
0 commit comments