ARC: spinlock: Document the EX based spin_unlock

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
This commit is contained in:
Vineet Gupta 2015-10-17 15:29:59 +05:30
parent ab1e8660c1
commit c2bdac146b
1 changed files with 6 additions and 0 deletions

View File

@ -296,6 +296,12 @@ static inline void arch_spin_unlock(arch_spinlock_t *lock)
*/
smp_mb();
/*
* EX is not really required here, a simple STore of 0 suffices.
* However this causes tasklist livelocks in SystemC based SMP virtual
* platforms where the systemc core scheduler uses EX as a cue for
* moving to next core. Do a git log of this file for details
*/
__asm__ __volatile__(
" ex %0, [%1] \n"
: "+r" (val)