GNUmifluz: SH_TAILQ_INSERT_HEAD

shqueue.h
#define SH_TAILQ_INSERT_HEAD ( head,
elm,
field,
type )

Value:

do { \
 if ((head)->stqh_first != -1) { \
 (elm)->field.stqe_next = \
 (head)->stqh_first - SH_PTR_TO_OFF(head, elm); \
 SH_TAILQ_FIRSTP(head, type)->field.stqe_prev = \
 SH_TAILQ_NEXT_TO_PREV(elm, field); \
 } else { \
 (elm)->field.stqe_next = -1; \
 (head)->stqh_last = \
 SH_PTR_TO_OFF(head, &(elm)->field.stqe_next); \
 } \
 (head)->stqh_first = SH_PTR_TO_OFF(head, elm); \
 (elm)->field.stqe_prev = \
 SH_PTR_TO_OFF(elm, &(head)->stqh_first); \
} while (0)

Definition at line 162 of file shqueue.h.

Referenced by __lock_checklocker(), __lock_get_internal(), __lock_init(), __lock_put_internal(), __memp_mf_open(), __txn_begin(), CDB___lock_freelocker(), CDB_log_register(), CDB_memp_fget(), and CDB_memp_fput().


Generated on Sun Jun 8 10:56:56 2008 for GNUmifluz by doxygen 1.5.5

AltStyle によって変換されたページ (->オリジナル) /