| 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 |