summaryrefslogtreecommitdiffstats
path: root/sys/compat
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>2004-04-18 18:38:59 +0000
committerwpaul <wpaul@FreeBSD.org>2004-04-18 18:38:59 +0000
commita98d8ced5454e8e836a2d65fffe51f2f7475b313 (patch)
tree2693a7c637a59bd50fff6a53b96734211ef4b843 /sys/compat
parenteb22856582fe7078e2747260cfa066ab279404c0 (diff)
downloadFreeBSD-src-a98d8ced5454e8e836a2d65fffe51f2f7475b313.zip
FreeBSD-src-a98d8ced5454e8e836a2d65fffe51f2f7475b313.tar.gz
In ntoskrnl_unlock_dpc(), use atomic_store instead of atomic_cmpset
to give up the spinlock. Suggested by: bde
Diffstat (limited to 'sys/compat')
-rw-r--r--sys/compat/ndis/subr_ntoskrnl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/compat/ndis/subr_ntoskrnl.c b/sys/compat/ndis/subr_ntoskrnl.c
index a825cab..d833a73 100644
--- a/sys/compat/ndis/subr_ntoskrnl.c
+++ b/sys/compat/ndis/subr_ntoskrnl.c
@@ -1029,7 +1029,7 @@ ntoskrnl_lock_dpc(/*lock*/ void)
__asm__ __volatile__ ("" : "=c" (lock));
while (atomic_cmpset_acq_int((volatile u_int *)lock, 0, 1) == 0)
- /* do nothing */;
+ /* sit and spin */;
return;
}
@@ -1041,7 +1041,7 @@ ntoskrnl_unlock_dpc(/*lock*/ void)
__asm__ __volatile__ ("" : "=c" (lock));
- atomic_cmpset_rel_int((volatile u_int *)lock, 1, 0);
+ atomic_store_rel_int((volatile u_int *)lock, 0);
return;
}
OpenPOWER on IntegriCloud