add USE_SPIN_LOCK macro