ATOMIC_INC_INT(9) BSD Kernel Developer's Manual ATOMIC_INC_INT(9)
atomic_inc_int, atomic_inc_int_nv, atomic_inc_long, atomic_inc_long_nv --
atomic increment operations
atomic_inc_int(volatile unsigned int *p);
atomic_inc_int_nv(volatile unsigned int *p);
atomic_inc_long(volatile unsigned long *p);
atomic_inc_long_nv(volatile unsigned long *p);
The atomic_inc set of functions provide an interface for atomically per-
forming increment and increment-and-fetch operations with respect to
interrupts and multiple processors in the system.
The value referenced by the pointer p is incremented by 1.
atomic_inc_int(), atomic_inc_int_nv(), atomic_inc_long(), and
atomic_inc_long_nv() can all be called during autoconf, from process con-
text, or from interrupt context.
atomic_inc_int and atomic_inc_long perform the increment without return-
ing any knowledge of the value at p.
atomic_inc_int_nv and atomic_inc_long_nv return the value at p after the
increment was performed.
The atomic_inc functions first appeared in NetBSD 5.0 and OpenBSD 5.5.
BSD February 13, 2014 BSD