Kernel: Make RecursiveSpinLock thread safe
also SpinLock is now implemented with gcc builtins
This commit is contained in:
@@ -1,17 +0,0 @@
|
||||
.global spinlock_lock_asm
|
||||
spinlock_lock_asm:
|
||||
lock; btsq $0, (%rdi)
|
||||
jnc .done
|
||||
.retry:
|
||||
pause
|
||||
testq $1, (%rdi)
|
||||
jne .retry
|
||||
lock; btsq $0, (%rdi)
|
||||
jc .retry
|
||||
.done:
|
||||
ret
|
||||
|
||||
.global spinlock_unlock_asm
|
||||
spinlock_unlock_asm:
|
||||
movl $0, (%rdi)
|
||||
ret
|
||||
Reference in New Issue
Block a user