Home
last modified time | relevance | path

Searched refs:exec (Results 1 – 25 of 265) sorted by relevance

1234567891011

/linux/drivers/gpu/drm/
H A Ddrm_exec.c56 static void drm_exec_unlock_all(struct drm_exec *exec) in drm_exec_unlock_all() argument
61 drm_exec_for_each_locked_object_reverse(exec, index, obj) { in drm_exec_unlock_all()
66 drm_gem_object_put(exec->prelocked); in drm_exec_unlock_all()
67 exec->prelocked = NULL; in drm_exec_unlock_all()
81 void drm_exec_init(struct drm_exec *exec, u32 flags, unsigned nr) in drm_exec_init() argument
86 exec->flags = flags; in drm_exec_init()
87 exec->objects = kvmalloc_array(nr, sizeof(void *), GFP_KERNEL); in drm_exec_init()
90 exec->max_objects = exec->objects ? nr : 0; in drm_exec_init()
91 exec->num_objects = 0; in drm_exec_init()
92 exec->contended = DRM_EXEC_DUMMY; in drm_exec_init()
[all …]
H A Ddrm_gpuvm.c1189 exec_prepare_obj(struct drm_exec *exec, struct drm_gem_object *obj, in exec_prepare_obj() argument
1192 return num_fences ? drm_exec_prepare_obj(exec, obj, num_fences) : in exec_prepare_obj()
1193 drm_exec_lock_obj(exec, obj); in exec_prepare_obj()
1212 struct drm_exec *exec, in drm_gpuvm_prepare_vm() argument
1215 return exec_prepare_obj(exec, gpuvm->r_obj, num_fences); in drm_gpuvm_prepare_vm()
1221 struct drm_exec *exec, in __drm_gpuvm_prepare_objects() argument
1229 ret = exec_prepare_obj(exec, vm_bo->obj, num_fences); in __drm_gpuvm_prepare_objects()
1242 struct drm_exec *exec, in drm_gpuvm_prepare_objects_locked() argument
1253 ret = exec_prepare_obj(exec, vm_bo->obj, num_fences); in drm_gpuvm_prepare_objects_locked()
1289 struct drm_exec *exec, in drm_gpuvm_prepare_objects() argument
[all …]
/linux/drivers/gpu/drm/tests/
H A Ddrm_exec_test.c47 struct drm_exec exec; in sanitycheck() local
49 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in sanitycheck()
50 drm_exec_fini(&exec); in sanitycheck()
58 struct drm_exec exec; in test_lock() local
63 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in test_lock()
64 drm_exec_until_all_locked(&exec) { in test_lock()
65 ret = drm_exec_lock_obj(&exec, &gobj); in test_lock()
66 drm_exec_retry_on_contention(&exec); in test_lock()
71 drm_exec_fini(&exec); in test_lock()
78 struct drm_exec exec; in test_lock_unlock() local
[all …]
/linux/drivers/gpu/drm/vc4/
H A Dvc4_gem.c159 struct vc4_exec_info *exec[2]; in vc4_save_hang_state() local
171 exec[0] = vc4_first_bin_job(vc4); in vc4_save_hang_state()
172 exec[1] = vc4_first_render_job(vc4); in vc4_save_hang_state()
173 if (!exec[0] && !exec[1]) { in vc4_save_hang_state()
181 if (!exec[i]) in vc4_save_hang_state()
185 list_for_each_entry(bo, &exec[i]->unref_list, unref_head) in vc4_save_hang_state()
187 state->bo_count += exec[i]->bo_count + unref_list_count; in vc4_save_hang_state()
200 if (!exec[i]) in vc4_save_hang_state()
203 for (j = 0; j < exec[i]->bo_count; j++) { in vc4_save_hang_state()
204 bo = to_vc4_bo(exec[i]->bo[j]); in vc4_save_hang_state()
[all …]
H A Dvc4_validate.c53 struct vc4_exec_info *exec, \
108 vc4_use_bo(struct vc4_exec_info *exec, uint32_t hindex) in vc4_use_bo() argument
110 struct vc4_dev *vc4 = exec->dev; in vc4_use_bo()
117 if (hindex >= exec->bo_count) { in vc4_use_bo()
119 hindex, exec->bo_count); in vc4_use_bo()
122 obj = to_drm_gem_dma_obj(exec->bo[hindex]); in vc4_use_bo()
135 vc4_use_handle(struct vc4_exec_info *exec, uint32_t gem_handles_packet_index) in vc4_use_handle() argument
137 return vc4_use_bo(exec, exec->bo_index[gem_handles_packet_index]); in vc4_use_handle()
141 validate_bin_pos(struct vc4_exec_info *exec, void *untrusted, uint32_t pos) in validate_bin_pos() argument
146 return (untrusted - 1 == exec->bin_u + pos); in validate_bin_pos()
[all …]
H A Dvc4_render_cl.c101 static uint32_t vc4_full_res_offset(struct vc4_exec_info *exec, in vc4_full_res_offset() argument
107 (DIV_ROUND_UP(exec->args->width, 32) * y + x); in vc4_full_res_offset()
125 static void emit_tile(struct vc4_exec_info *exec, in emit_tile() argument
129 struct drm_vc4_submit_cl *args = exec->args; in emit_tile()
141 vc4_full_res_offset(exec, setup->color_read, in emit_tile()
163 vc4_full_res_offset(exec, setup->zs_read, in emit_tile()
187 rcl_u32(setup, (exec->tile_alloc_offset + in emit_tile()
188 (y * exec->bin_tiles_x + x) * 32)); in emit_tile()
203 vc4_full_res_offset(exec, setup->msaa_color_write, in emit_tile()
221 vc4_full_res_offset(exec, setup->msaa_zs_write, in emit_tile()
[all …]
H A Dvc4_irq.c68 struct vc4_exec_info *exec; in vc4_overflow_mem_work() local
93 exec = vc4_first_bin_job(vc4); in vc4_overflow_mem_work()
94 if (!exec) in vc4_overflow_mem_work()
95 exec = vc4_last_render_job(vc4); in vc4_overflow_mem_work()
96 if (exec) { in vc4_overflow_mem_work()
97 exec->bin_slots |= vc4->bin_alloc_overflow; in vc4_overflow_mem_work()
121 struct vc4_exec_info *next, *exec = vc4_first_bin_job(vc4); in vc4_irq_finish_bin_job() local
123 if (!exec) in vc4_irq_finish_bin_job()
126 trace_vc4_bcl_end_irq(dev, exec->seqno); in vc4_irq_finish_bin_job()
128 vc4_move_job_to_render(dev, exec); in vc4_irq_finish_bin_job()
[all …]
/linux/include/drm/
H A Ddrm_exec.h63 drm_exec_obj(struct drm_exec *exec, unsigned long index) in drm_exec_obj() argument
65 return index < exec->num_objects ? exec->objects[index] : NULL; in drm_exec_obj()
76 #define drm_exec_for_each_locked_object(exec, index, obj) \ argument
77 for ((index) = 0; ((obj) = drm_exec_obj(exec, index)); ++(index))
90 #define drm_exec_for_each_locked_object_reverse(exec, index, obj) \ argument
91 for ((index) = (exec)->num_objects - 1; \
92 ((obj) = drm_exec_obj(exec, index)); --(index))
105 #define drm_exec_until_all_locked(exec) \ argument
110 drm_exec_cleanup(exec); \
120 #define drm_exec_retry_on_contention(exec) \ argument
[all …]
/linux/include/uapi/linux/
H A Da.out.h44 #define N_MAGIC(exec) ((exec).a_info & 0xffff) argument
46 #define N_MACHTYPE(exec) ((enum machine_type)(((exec).a_info >> 16) & 0xff)) argument
47 #define N_FLAGS(exec) (((exec).a_info >> 24) & 0xff) argument
48 #define N_SET_INFO(exec, magic, type, flags) \ argument
49 ((exec).a_info = ((magic) & 0xffff) \
52 #define N_SET_MAGIC(exec, magic) \ argument
53 ((exec).a_info = (((exec).a_info & 0xffff0000) | ((magic) & 0xffff)))
55 #define N_SET_MACHTYPE(exec, machtype) \ argument
56 ((exec).a_info = \
57 ((exec).a_info&0xff00ffff) | ((((int)(machtype))&0xff) << 16))
[all …]
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_seq64.c71 struct drm_exec exec; in amdgpu_seq64_map() local
79 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in amdgpu_seq64_map()
80 drm_exec_until_all_locked(&exec) { in amdgpu_seq64_map()
81 r = amdgpu_vm_lock_pd(vm, &exec, 0); in amdgpu_seq64_map()
83 r = drm_exec_lock_obj(&exec, &bo->tbo.base); in amdgpu_seq64_map()
84 drm_exec_retry_on_contention(&exec); in amdgpu_seq64_map()
114 drm_exec_fini(&exec); in amdgpu_seq64_map()
130 struct drm_exec exec; in amdgpu_seq64_unmap() local
142 drm_exec_init(&exec, 0, 0); in amdgpu_seq64_unmap()
143 drm_exec_until_all_locked(&exec) { in amdgpu_seq64_unmap()
[all …]
H A Damdgpu_gem.c235 struct drm_exec exec; in amdgpu_gem_object_open() local
246 drm_exec_init(&exec, DRM_EXEC_IGNORE_DUPLICATES, 0); in amdgpu_gem_object_open()
247 drm_exec_until_all_locked(&exec) { in amdgpu_gem_object_open()
248 r = drm_exec_prepare_obj(&exec, &abo->tbo.base, 1); in amdgpu_gem_object_open()
249 drm_exec_retry_on_contention(&exec); in amdgpu_gem_object_open()
253 r = amdgpu_vm_lock_pd(vm, &exec, 0); in amdgpu_gem_object_open()
254 drm_exec_retry_on_contention(&exec); in amdgpu_gem_object_open()
273 drm_exec_fini(&exec); in amdgpu_gem_object_open()
309 drm_exec_fini(&exec); in amdgpu_gem_object_open()
323 struct drm_exec exec; in amdgpu_gem_object_close() local
[all …]
H A Damdgpu_userq_fence.c477 struct drm_exec exec; in amdgpu_userq_signal_ioctl() local
586 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, in amdgpu_userq_signal_ioctl()
590 drm_exec_until_all_locked(&exec) { in amdgpu_userq_signal_ioctl()
591 r = drm_exec_prepare_array(&exec, gobj_read, num_read_bo_handles, 1); in amdgpu_userq_signal_ioctl()
592 drm_exec_retry_on_contention(&exec); in amdgpu_userq_signal_ioctl()
598 r = drm_exec_prepare_array(&exec, gobj_write, num_write_bo_handles, 1); in amdgpu_userq_signal_ioctl()
599 drm_exec_retry_on_contention(&exec); in amdgpu_userq_signal_ioctl()
630 drm_exec_fini(&exec); in amdgpu_userq_signal_ioctl()
672 struct drm_exec exec; in amdgpu_userq_wait_ioctl() local
747 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, in amdgpu_userq_wait_ioctl()
[all …]
/linux/drivers/gpu/drm/xe/
H A Dxe_dma_buf.c55 struct drm_exec *exec = XE_VALIDATION_UNSUPPORTED; in xe_dma_buf_pin() local
77 ret = xe_bo_migrate(bo, XE_PL_TT, NULL, exec); in xe_dma_buf_pin()
87 ret = xe_bo_pin_external(bo, !allow_vram, exec); in xe_dma_buf_pin()
107 struct drm_exec *exec = XE_VALIDATION_UNSUPPORTED; in xe_dma_buf_map() local
116 r = xe_bo_migrate(bo, XE_PL_TT, NULL, exec); in xe_dma_buf_map()
118 r = xe_bo_validate(bo, NULL, false, exec); in xe_dma_buf_map()
178 struct drm_exec exec; in xe_dma_buf_begin_cpu_access() local
185 xe_validation_guard(&ctx, &xe_bo_device(bo)->val, &exec, (struct xe_val_flags) {}, ret) { in xe_dma_buf_begin_cpu_access()
186 ret = drm_exec_lock_obj(&exec, &bo->ttm.base); in xe_dma_buf_begin_cpu_access()
187 drm_exec_retry_on_contention(&exec); in xe_dma_buf_begin_cpu_access()
[all …]
H A Dxe_bo.c1196 struct drm_exec exec; in xe_bo_notifier_prepare_pinned() local
1200 xe_validation_guard(&ctx, &xe->val, &exec, (struct xe_val_flags) {.exclusive = true}, ret) { in xe_bo_notifier_prepare_pinned()
1201 ret = drm_exec_lock_obj(&exec, &bo->ttm.base); in xe_bo_notifier_prepare_pinned()
1202 drm_exec_retry_on_contention(&exec); in xe_bo_notifier_prepare_pinned()
1223 XE_BO_FLAG_PINNED, &exec); in xe_bo_notifier_prepare_pinned()
1225 drm_exec_retry_on_contention(&exec); in xe_bo_notifier_prepare_pinned()
1333 struct drm_exec exec; in xe_bo_evict_pinned() local
1338 xe_validation_guard(&ctx, &xe->val, &exec, (struct xe_val_flags) {.exclusive = true}, ret) { in xe_bo_evict_pinned()
1339 ret = drm_exec_lock_obj(&exec, &bo->ttm.base); in xe_bo_evict_pinned()
1340 drm_exec_retry_on_contention(&exec); in xe_bo_evict_pinned()
[all …]
H A Dxe_pagefault.c48 static int xe_pagefault_begin(struct drm_exec *exec, struct xe_vma *vma, in xe_pagefault_begin() argument
55 err = xe_vm_lock_vma(exec, vma); in xe_pagefault_begin()
62 return need_vram_move ? xe_bo_migrate(bo, vram->placement, NULL, exec) : in xe_pagefault_begin()
63 xe_bo_validate(bo, vm, true, exec); in xe_pagefault_begin()
72 struct drm_exec exec; in xe_pagefault_handle_vma() local
104 xe_validation_ctx_init(&ctx, &vm->xe->val, &exec, (struct xe_val_flags) {}); in xe_pagefault_handle_vma()
105 drm_exec_until_all_locked(&exec) { in xe_pagefault_handle_vma()
106 err = xe_pagefault_begin(&exec, vma, tile->mem.vram, in xe_pagefault_handle_vma()
108 drm_exec_retry_on_contention(&exec); in xe_pagefault_handle_vma()
115 xe_vm_set_validation_exec(vm, &exec); in xe_pagefault_handle_vma()
/linux/tools/testing/selftests/exec/
H A Dcheck-exec.c269 const int exec = variant->mount_exec && variant->file_exec; in TEST_F() local
271 test_exec_path(_metadata, reg_file_path, exec ? 0 : EACCES); in TEST_F()
274 test_exec_path(_metadata, reg_file_path, exec ? 0 : EACCES); in TEST_F()
279 const int exec = variant->mount_exec && variant->file_exec; in TEST_F() local
283 test_exec_path(_metadata, reg_file_path, exec ? 0 : EACCES); in TEST_F()
286 test_exec_path(_metadata, reg_file_path, exec ? 0 : EACCES); in TEST_F()
292 const int exec = variant->file_exec; in TEST_F() local
294 test_exec_fd(_metadata, self->memfd, exec ? 0 : EACCES); in TEST_F()
297 test_exec_fd(_metadata, self->memfd, exec ? 0 : EACCES); in TEST_F()
302 const int exec = variant->file_exec; in TEST_F() local
[all …]
H A Dnull-argv.c10 #define FORK(exec) \ argument
15 exec; /* Some kind of exec */ \
16 perror("# " #exec); \
19 check_result(pid, #exec); \
/linux/drivers/gpu/drm/msm/
H A Dmsm_gem_submit.c277 struct drm_exec *exec = &submit->exec; in submit_lock_objects_vmbind() local
280 drm_exec_init(&submit->exec, flags, submit->nr_bos); in submit_lock_objects_vmbind()
282 drm_exec_until_all_locked (&submit->exec) { in submit_lock_objects_vmbind()
283 ret = drm_gpuvm_prepare_vm(submit->vm, exec, 1); in submit_lock_objects_vmbind()
284 drm_exec_retry_on_contention(exec); in submit_lock_objects_vmbind()
288 ret = drm_gpuvm_prepare_objects(submit->vm, exec, 1); in submit_lock_objects_vmbind()
289 drm_exec_retry_on_contention(exec); in submit_lock_objects_vmbind()
306 drm_exec_init(&submit->exec, flags, submit->nr_bos); in submit_lock_objects()
308 drm_exec_until_all_locked (&submit->exec) { in submit_lock_objects()
309 ret = drm_exec_lock_obj(&submit->exec, in submit_lock_objects()
[all …]
H A Dmsm_gem.c55 struct drm_exec exec; in msm_gem_close() local
83 msm_gem_lock_vm_and_obj(&exec, obj, ctx->vm); in msm_gem_close()
85 drm_exec_fini(&exec); /* drop locks */ in msm_gem_close()
108 struct drm_exec exec; in msm_gem_vma_put() local
110 msm_gem_lock_vm_and_obj(&exec, obj, priv->kms->vm); in msm_gem_vma_put()
112 drm_exec_fini(&exec); /* drop locks */ in msm_gem_vma_put()
556 struct drm_exec exec; in msm_gem_get_and_pin_iova_range() local
559 msm_gem_lock_vm_and_obj(&exec, obj, vm); in msm_gem_get_and_pin_iova_range()
561 drm_exec_fini(&exec); /* drop locks */ in msm_gem_get_and_pin_iova_range()
581 struct drm_exec exec; in msm_gem_get_iova() local
[all …]
/linux/drivers/sbus/char/
H A Doradax.c860 ctx->result.exec.status = DAX_SUBMIT_ERR_THR_INIT; in dax_ccb_exec()
867 ctx->result.exec.status = DAX_SUBMIT_ERR_NO_CA_AVAIL; in dax_ccb_exec()
877 ctx->result.exec.status = DAX_SUBMIT_ERR_CCB_ARR_MMU_MISS; in dax_ccb_exec()
885 ctx->result.exec.status = DAX_SUBMIT_ERR_NO_CA_AVAIL; in dax_ccb_exec()
891 ctx->result.exec.status = dax_preprocess_usr_ccbs(ctx, idx, nccbs); in dax_ccb_exec()
892 if (ctx->result.exec.status != DAX_SUBMIT_OK) in dax_ccb_exec()
895 ctx->result.exec.status = dax_lock_pages(ctx, idx, nccbs, in dax_ccb_exec()
896 &ctx->result.exec.status_data); in dax_ccb_exec()
897 if (ctx->result.exec.status != DAX_SUBMIT_OK) in dax_ccb_exec()
905 &accepted_len, &ctx->result.exec.status_data); in dax_ccb_exec()
[all …]
/linux/drivers/gpu/drm/xe/tests/
H A Dxe_bo.c27 struct kunit *test, struct drm_exec *exec) in ccs_test_migrate() argument
39 ret = xe_bo_validate(bo, NULL, false, exec); in ccs_test_migrate()
64 ret = xe_bo_evict(bo, exec); in ccs_test_migrate()
136 struct drm_exec *exec = XE_VALIDATION_OPT_OUT; in ccs_test_run_tile() local
144 bo_flags, exec); in ccs_test_run_tile()
154 test, exec); in ccs_test_run_tile()
160 0xdeadbeefdeadbeefULL, test, exec); in ccs_test_run_tile()
165 ret = ccs_test_migrate(tile, bo, true, 0ULL, 0ULL, test, exec); in ccs_test_run_tile()
212 struct drm_exec *exec = XE_VALIDATION_OPT_OUT; in evict_test_run_tile() local
223 bo_flags, exec); in evict_test_run_tile()
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/timer/
H A Dbase.c73 LIST_HEAD(exec); in nvkm_timer_alarm_trigger()
90 list_add(&alarm->exec, &exec); in nvkm_timer_alarm_trigger()
99 list_for_each_entry_safe(alarm, atemp, &exec, exec) { in nvkm_timer_alarm_trigger()
100 list_del(&alarm->exec); in nvkm_timer_alarm_trigger()
/linux/arch/sparc/mm/
H A Dtlb.c79 bool exec, unsigned int hugepage_shift) in tlb_batch_add_one() argument
85 if (exec) in tlb_batch_add_one()
168 bool exec = pte_exec(*pte); in tlb_batch_pmd_scan() local
170 tlb_batch_add_one(mm, vaddr, exec, PAGE_SHIFT); in tlb_batch_pmd_scan()
220 bool exec = pte_exec(orig_pte); in __set_pmd_acct() local
222 tlb_batch_add_one(mm, addr, exec, REAL_HPAGE_SHIFT); in __set_pmd_acct()
223 tlb_batch_add_one(mm, addr + REAL_HPAGE_SIZE, exec, in __set_pmd_acct()
/linux/drivers/gpu/drm/imagination/
H A Dpvr_job.c531 prepare_fw_obj_resv(struct drm_exec *exec, struct pvr_fw_object *fw_obj) in prepare_fw_obj_resv() argument
533 return drm_exec_prepare_obj(exec, gem_from_pvr_gem(fw_obj->gem), 1); in prepare_fw_obj_resv()
537 jobs_lock_all_objs(struct drm_exec *exec, struct pvr_job_data *job_data, in jobs_lock_all_objs() argument
546 int err = drm_exec_lock_obj(exec, in jobs_lock_all_objs()
553 err = prepare_fw_obj_resv(exec, in jobs_lock_all_objs()
564 prepare_job_resvs_for_each(struct drm_exec *exec, struct pvr_job_data *job_data, in prepare_job_resvs_for_each() argument
567 drm_exec_until_all_locked(exec) { in prepare_job_resvs_for_each()
568 int err = jobs_lock_all_objs(exec, job_data, job_count); in prepare_job_resvs_for_each()
570 drm_exec_retry_on_contention(exec); in prepare_job_resvs_for_each()
711 struct drm_exec exec; in pvr_submit_jobs() local
[all …]
/linux/tools/perf/util/
H A Dcomm.c192 struct comm *comm__new(const char *str, u64 timestamp, bool exec) in comm__new() argument
200 comm->exec = exec; in comm__new()
211 int comm__override(struct comm *comm, const char *str, u64 timestamp, bool exec) in comm__override() argument
222 if (exec) in comm__override()
223 comm->exec = true; in comm__override()

1234567891011