diff options
author | Philip Guenthe <guenther@cvs.openbsd.org> | 2012-01-17 02:34:19 +0000 |
---|---|---|
committer | Philip Guenthe <guenther@cvs.openbsd.org> | 2012-01-17 02:34:19 +0000 |
commit | b954f00c23f17debc35a7aa94bac39a336fc3359 (patch) | |
tree | aec06661a73fe3843a229172ea9cbd95181c2a90 /lib/librthread/arch/sparc64 | |
parent | c01d953b375c486f2bad253c49e4aed9a2f0938f (diff) |
Reimplement mutexes, condvars, and rwlocks to eliminate bugs,
particularly the "consume the signal you just sent" hang, and putting
the wait queues in userspace.
Do cancellation handling in pthread_cond_*wait(), pthread_join(),
and sem_wait().
Add __ prefix to thr{sleep,wakeup,exit,sigdivert}() syscalls; add
'abort" argument to thrsleep to close cancellation race; make
thr{sleep,wakeup} return errno values via *retval to avoid touching
userspace errno.
Diffstat (limited to 'lib/librthread/arch/sparc64')
-rw-r--r-- | lib/librthread/arch/sparc64/rfork_thread.S | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/librthread/arch/sparc64/rfork_thread.S b/lib/librthread/arch/sparc64/rfork_thread.S index d35f6ba1d74..86b876db714 100644 --- a/lib/librthread/arch/sparc64/rfork_thread.S +++ b/lib/librthread/arch/sparc64/rfork_thread.S @@ -1,4 +1,4 @@ -/* $OpenBSD: rfork_thread.S,v 1.3 2011/10/17 06:39:20 guenther Exp $ */ +/* $OpenBSD: rfork_thread.S,v 1.4 2012/01/17 02:34:18 guenther Exp $ */ /* * Copyright (c) 2005, Miodrag Vallat @@ -62,7 +62,7 @@ ENTRY(__tfork_thread) call %o2 /* func */ mov %o3, %o0 /* arg */ - mov SYS_threxit, %g1 + mov SYS___threxit, %g1 clr %o0 t ST_SYSCALL /* will not return */ |