Something make me confused about your Software Spinlocks which I guess that they are not using atomic instructions. How can you be sure about them when the architecture support out of order execution for instructions or sometimes architectures puts a write buffer in front of memory which could cause deadlocks for synchronization mechanism ? Maybe I could be wrong and mixing these ideas. Please Can u enlighten me ? Best Regards Enes