Lines Matching full:active

23 static void __live_get(struct live_active *active)  in __live_get()  argument
25 kref_get(&active->ref); in __live_get()
28 static void __live_free(struct live_active *active) in __live_free() argument
30 i915_active_fini(&active->base); in __live_free()
31 kfree(active); in __live_free()
36 struct live_active *active = container_of(ref, typeof(*active), ref); in __live_release() local
38 __live_free(active); in __live_release()
41 static void __live_put(struct live_active *active) in __live_put() argument
43 kref_put(&active->ref, __live_release); in __live_put()
48 struct live_active *active = container_of(base, typeof(*active), base); in __live_active() local
50 __live_get(active); in __live_active()
56 struct live_active *active = container_of(base, typeof(*active), base); in __live_retire() local
58 active->retired = true; in __live_retire()
59 __live_put(active); in __live_retire()
64 struct live_active *active; in __live_alloc() local
66 active = kzalloc(sizeof(*active), GFP_KERNEL); in __live_alloc()
67 if (!active) in __live_alloc()
70 kref_init(&active->ref); in __live_alloc()
71 i915_active_init(i915, &active->base, __live_active, __live_retire); in __live_alloc()
73 return active; in __live_alloc()
81 struct live_active *active; in __live_active_setup() local
86 active = __live_alloc(i915); in __live_active_setup()
87 if (!active) in __live_active_setup()
92 kfree(active); in __live_active_setup()
96 err = i915_active_acquire(&active->base); in __live_active_setup()
113 err = i915_active_ref(&active->base, rq->timeline, rq); in __live_active_setup()
116 pr_err("Failed to track active ref!\n"); in __live_active_setup()
123 i915_active_release(&active->base); in __live_active_setup()
124 if (active->retired && count) { in __live_active_setup()
128 if (atomic_read(&active->base.count) != count) { in __live_active_setup()
130 atomic_read(&active->base.count), count); in __live_active_setup()
138 __live_put(active); in __live_active_setup()
139 active = ERR_PTR(err); in __live_active_setup()
142 return active; in __live_active_setup()
148 struct live_active *active; in live_active_wait() local
157 active = __live_active_setup(i915); in live_active_wait()
158 if (IS_ERR(active)) { in live_active_wait()
159 err = PTR_ERR(active); in live_active_wait()
163 i915_active_wait(&active->base); in live_active_wait()
164 if (!active->retired) { in live_active_wait()
169 __live_put(active); in live_active_wait()
184 struct live_active *active; in live_active_retire() local
193 active = __live_active_setup(i915); in live_active_retire()
194 if (IS_ERR(active)) { in live_active_retire()
195 err = PTR_ERR(active); in live_active_retire()
203 if (!active->retired) { in live_active_retire()
208 __live_put(active); in live_active_retire()