summaryrefslogtreecommitdiffstats
path: root/sys/ia64
diff options
context:
space:
mode:
authordfr <dfr@FreeBSD.org>2000-09-29 16:51:33 +0000
committerdfr <dfr@FreeBSD.org>2000-09-29 16:51:33 +0000
commitfb0b532d5b87ef988d1b589a5572a88c88c41970 (patch)
tree6c02fd9b4df4cc63e7b49a47c81d3b201da7103b /sys/ia64
parentee266293b60bfa805c36c34db7ffa3e5359eb6d2 (diff)
downloadFreeBSD-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.c8
-rw-r--r--sys/ia64/include/lock.h13
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()
OpenPOWER on IntegriCloud