active_node
slab_cache = KMEM_CACHE(active_node, SLAB_HWCACHE_ALIGN);
pool_init(&slab_cache, sizeof(struct active_node),
struct active_node *it, *n;
active_retire(container_of(cb, struct active_node, base.cb)->ref);
static struct active_node *__active_lookup(struct i915_active *ref, u64 idx)
struct active_node *it;
struct active_node *node;
node = rb_entry(parent, struct active_node, node);
#define fetch_node(x) rb_entry(READ_ONCE(x), typeof(struct active_node), node)
static inline struct active_node *
struct active_node *node,
return container_of(active, struct active_node, base);
__active_del_barrier(struct i915_active *ref, struct active_node *node)
static inline struct llist_node *barrier_to_ll(struct active_node *node)
__barrier_to_engine(struct active_node *node)
static int flush_barrier(struct active_node *it)
struct active_node *it, *n;
barrier_to_engine(struct active_node *node)
static inline struct active_node *barrier_from_ll(struct llist_node *x)
struct active_node, base.cb.node);
struct active_node *it, *n;
static inline bool is_idle_barrier(struct active_node *node, u64 idx)
static struct active_node *reuse_idle_barrier(struct i915_active *ref, u64 idx)
struct active_node *node =
rb_entry(p, struct active_node, node);
struct active_node *node =
rb_entry(p, struct active_node, node);
return rb_entry(p, struct active_node, node);
struct active_node *node;
struct active_node *node = barrier_from_ll(first);
struct active_node *node = barrier_from_ll(pos);
struct active_node *it;
it = rb_entry(parent, struct active_node, node);
struct active_node;
struct active_node *cache;
static struct intel_engine_cs *node_to_barrier(struct active_node *it)
struct active_node *it, *n;
struct active_node *it, *n;