cond_expr
#define smp_cond_load_relaxed(ptr, cond_expr) \
if (cond_expr) \
#define smp_cond_load_acquire(ptr, cond_expr) \
if (cond_expr) \
#define __smp_cond_load_relaxed_spinwait(ptr, cond_expr, time_expr_ns, \
if (cond_expr) \
#define __smp_cond_load_acquire_timewait(ptr, cond_expr, \
if (cond_expr) \
#define smp_cond_load_acquire_timewait(ptr, cond_expr, \
_val = __smp_cond_load_acquire_timewait(ptr, cond_expr, \
_val = __smp_cond_load_relaxed_spinwait(ptr, cond_expr, \
#define smp_cond_load_relaxed(ptr, cond_expr) ({ \
if (cond_expr) \
#define smp_cond_load_relaxed(ptr, cond_expr) ({ \
if (cond_expr) \
#define smp_cond_load_acquire(ptr, cond_expr) ({ \
_val = smp_cond_load_relaxed(ptr, cond_expr); \
static int cond_evaluate_expr(struct policydb *p, struct cond_expr *expr)
struct cond_expr expr;
#define smp_cond_load_relaxed_label(p, cond_expr, label) \
if (cond_expr) \
#define smp_cond_load_acquire_label(p, cond_expr, label) \
smp_cond_load_relaxed_label(p, cond_expr, label); \
#define atomic_cond_read_relaxed_label(p, cond_expr, label) \
smp_cond_load_relaxed_label(&(p)->counter, cond_expr, label)
#define atomic_cond_read_acquire_label(p, cond_expr, label) \
smp_cond_load_acquire_label(&(p)->counter, cond_expr, label)