UCAS(9) | Kernel Developer's Manual | UCAS(9) |
ucas
—
#include <sys/systm.h>
int
ucas_ptr
(volatile
void *uptr, void
*old, void *new,
void *retp);
int
ucas_int
(volatile
int *uptr, int old,
int new,
int *retp);
Except that they can be safely used for the kernel to access user-space address, they are semantically equivalents of atomic_cas(3).
EFAULT
.
ucas_ptr
() would be of void
**
. The current prototype is a compromise for usability.
October 24, 2011 | NetBSD 8.99 |