diff options
author | dfr <dfr@FreeBSD.org> | 2000-09-29 16:51:33 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 2000-09-29 16:51:33 +0000 |
commit | fb0b532d5b87ef988d1b589a5572a88c88c41970 (patch) | |
tree | 6c02fd9b4df4cc63e7b49a47c81d3b201da7103b /sys/ia64 | |
parent | ee266293b60bfa805c36c34db7ffa3e5359eb6d2 (diff) | |
download | FreeBSD-src-fb0b532d5b87ef988d1b589a5572a88c88c41970.zip FreeBSD-src-fb0b532d5b87ef988d1b589a5572a88c88c41970.tar.gz |
Bodge the simplelocks in a way which works UP.
Diffstat (limited to 'sys/ia64')
-rw-r--r-- | sys/ia64/ia64/mp_machdep.c | 8 | ||||
-rw-r--r-- | sys/ia64/include/lock.h | 13 |
2 files changed, 12 insertions, 9 deletions
diff --git a/sys/ia64/ia64/mp_machdep.c b/sys/ia64/ia64/mp_machdep.c index 6dea327..ce673a1 100644 --- a/sys/ia64/ia64/mp_machdep.c +++ b/sys/ia64/ia64/mp_machdep.c @@ -136,7 +136,13 @@ s_lock(struct simplelock *lkp) int s_lock_try(struct simplelock *lkp) { - return 0; /* XXX needed? */ + return 1; /* XXX needed? */ +} + +void +s_unlock(struct simplelock *lkp) +{ + ia64_st_rel_32(&lkp->lock_data, 0); } /* Other stuff */ diff --git a/sys/ia64/include/lock.h b/sys/ia64/include/lock.h index 189b966..42dc6a8 100644 --- a/sys/ia64/include/lock.h +++ b/sys/ia64/include/lock.h @@ -42,15 +42,12 @@ struct simplelock { void s_lock_init __P((struct simplelock *)); void s_lock __P((struct simplelock *)); int s_lock_try __P((struct simplelock *)); +void s_unlock __P((struct simplelock *)); -/* inline simplelock functions */ -static __inline void -s_unlock(struct simplelock *lkp) -{ -#if 0 /* XXX */ - ia64_st_rel_32(&lkp->lock_data, 0); -#endif -} +#define simple_lock_init(alp) s_lock_init(alp) +#define simple_lock(alp) s_lock(alp) +#define simple_lock_try(alp) s_lock_try(alp) +#define simple_unlock(alp) s_unlock(alp) #define COM_LOCK() #define COM_UNLOCK() |