summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2003-04-01 00:18:55 +0000
committerjeff <jeff@FreeBSD.org>2003-04-01 00:18:55 +0000
commit420a77ecd5237fe6d8d85dfc52e0e7050554b768 (patch)
treed76cda4e540786cf76f11bcb84ebefd1fd2bfd17 /sys/alpha
parent56865cc54968bbe0d21f2909d13cfade62bb789d (diff)
downloadFreeBSD-src-420a77ecd5237fe6d8d85dfc52e0e7050554b768.zip
FreeBSD-src-420a77ecd5237fe6d8d85dfc52e0e7050554b768.tar.gz
- Define a new md function 'casuptr'. This atomically compares and sets
a pointer that is in user space. It will be used as the basic primitive for a kernel supported user space lock implementation. - Implement this function in x86's support.s - Provide stubs that return -1 in all other architectures. Implementations will follow along shortly. Reviewed by: jake
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/alpha/machdep.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/alpha/alpha/machdep.c b/sys/alpha/alpha/machdep.c
index 055d3f8..50627d9 100644
--- a/sys/alpha/alpha/machdep.c
+++ b/sys/alpha/alpha/machdep.c
@@ -2324,3 +2324,9 @@ cpu_pcpu_init(struct pcpu *pcpu, int cpuid, size_t sz)
pcpu->pc_idlepcb.apcb_ptbr = thread0.td_pcb->pcb_hw.apcb_ptbr;
pcpu->pc_current_asngen = 1;
}
+
+intptr_t
+casuptr(intptr_t *p, intptr_t old, intptr_t new)
+{
+ return (-1);
+}
OpenPOWER on IntegriCloud