Lines Matching refs:xef
47 if (q->xef) in __xe_exec_queue_free()
48 xe_file_put(q->xef); in __xe_exec_queue_free()
311 if (q->xef && atomic_dec_and_test(&q->xef->exec_queue.pending_removal)) in xe_exec_queue_fini()
312 wake_up_var(&q->xef->exec_queue.pending_removal); in xe_exec_queue_fini()
346 struct xe_exec_queue *xe_exec_queue_lookup(struct xe_file *xef, u32 id) in xe_exec_queue_lookup() argument
350 mutex_lock(&xef->exec_queue.lock); in xe_exec_queue_lookup()
351 q = xa_load(&xef->exec_queue.xa, id); in xe_exec_queue_lookup()
354 mutex_unlock(&xef->exec_queue.lock); in xe_exec_queue_lookup()
598 struct xe_file *xef = to_xe_file(file); in xe_exec_queue_create_ioctl() local
671 vm = xe_vm_lookup(xef, args->vm_id); in xe_exec_queue_create_ioctl()
710 q->xef = xe_file_get(xef); in xe_exec_queue_create_ioctl()
713 err = xa_alloc(&xef->exec_queue.xa, &id, q, xa_limit_32b, GFP_KERNEL); in xe_exec_queue_create_ioctl()
732 struct xe_file *xef = to_xe_file(file); in xe_exec_queue_get_property_ioctl() local
740 q = xe_exec_queue_lookup(xef, args->exec_queue_id); in xe_exec_queue_get_property_ioctl()
840 if (!q->xef) in xe_exec_queue_update_run_ticks()
856 q->xef->run_ticks[q->class] += (new_ts - old_ts) * q->width; in xe_exec_queue_update_run_ticks()
888 struct xe_file *xef = to_xe_file(file); in xe_exec_queue_destroy_ioctl() local
896 mutex_lock(&xef->exec_queue.lock); in xe_exec_queue_destroy_ioctl()
897 q = xa_erase(&xef->exec_queue.xa, args->exec_queue_id); in xe_exec_queue_destroy_ioctl()
899 atomic_inc(&xef->exec_queue.pending_removal); in xe_exec_queue_destroy_ioctl()
900 mutex_unlock(&xef->exec_queue.lock); in xe_exec_queue_destroy_ioctl()