|
libisdn
|
Go to the source code of this file.
Data Structures | |
| struct | refcnt |
Defines | |
| #define | refcnt_obj_ref(ptr, member) |
| #define | refcnt_obj_unref(ptr, member) |
| #define refcnt_obj_ref | ( | ptr, | |
| member | |||
| ) |
({ \
struct refcnt *__r = container_of(ptr, struct refcnt, member); \
ACCESS_ONCE(__r->nr_get)++; \
ptr; \
})
| #define refcnt_obj_unref | ( | ptr, | |
| member | |||
| ) |
({ \
struct refcnt *__r = container_of(ptr, struct refcnt, member); \
ACCESS_ONCE(__r->nr_get) - ++ACCESS_ONCE(__r->nr_put); \
})