We dont need DMB after all
Add a spin loop for the case where we lose the lock due to an interrupt
LDREX/STREX based counting semphore