diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-09-21 19:55:52 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2013-09-21 19:55:52 +0200 |
commit | f811708ffcb776be52a81637224c06b700177566 (patch) | |
tree | 05a9632fef0f4e5ad835c2e6d426631e485e90d1 /sys/src/ape/lib/ap/sparc | |
parent | 3d05e77ca1f743e5b4091c6bfe311460175ed9ae (diff) |
ape: change tas/sleep locks to cas/semacquire/semrelease locks (from sources)
Diffstat (limited to 'sys/src/ape/lib/ap/sparc')
-rw-r--r-- | sys/src/ape/lib/ap/sparc/lock.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/src/ape/lib/ap/sparc/lock.c b/sys/src/ape/lib/ap/sparc/lock.c index 91c0ba233..5b1d72c46 100644 --- a/sys/src/ape/lib/ap/sparc/lock.c +++ b/sys/src/ape/lib/ap/sparc/lock.c @@ -2,19 +2,17 @@ #include "../plan9/sys9.h" #include <lock.h> -int tas(int*); - void lock(Lock *lk) { - while(tas(&lk->val)) + while(tas((int*)&lk->key)) _SLEEP(0); } int canlock(Lock *lk) { - if(tas(&lk->val)) + if(tas((int*)&lk->key)) return 0; return 1; } @@ -22,5 +20,5 @@ canlock(Lock *lk) void unlock(Lock *lk) { - lk->val = 0; + lk->key = 0; } |