| /linux/drivers/gpu/drm/ |
| H A D | drm_exec.c | 52 static void drm_exec_unlock_all(struct drm_exec *exec) in drm_exec_unlock_all() argument 56 drm_exec_for_each_locked_object_reverse(exec, obj) { in drm_exec_unlock_all() 61 drm_gem_object_put(exec->prelocked); in drm_exec_unlock_all() 62 exec->prelocked = NULL; in drm_exec_unlock_all() 76 void drm_exec_init(struct drm_exec *exec, u32 flags, unsigned nr) in drm_exec_init() argument 81 exec->flags = flags; in drm_exec_init() 82 exec->objects = kvmalloc_objs(*exec->objects, nr); in drm_exec_init() 85 exec->max_objects = exec->objects ? nr : 0; in drm_exec_init() 86 exec->num_objects = 0; in drm_exec_init() 87 exec->contended = DRM_EXEC_DUMMY; in drm_exec_init() [all …]
|
| /linux/drivers/gpu/drm/tests/ |
| H A D | drm_exec_test.c | 45 struct drm_exec exec; in sanitycheck() local 47 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in sanitycheck() 48 drm_exec_fini(&exec); in sanitycheck() 56 struct drm_exec exec; in test_lock() local 61 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in test_lock() 62 drm_exec_until_all_locked(&exec) { in test_lock() 63 ret = drm_exec_lock_obj(&exec, &gobj); in test_lock() 64 drm_exec_retry_on_contention(&exec); in test_lock() 69 drm_exec_fini(&exec); in test_lock() 76 struct drm_exec exec; in test_lock_unlock() local [all …]
|
| /linux/include/drm/ |
| H A D | drm_exec.h | 69 drm_exec_obj(struct drm_exec *exec, unsigned long index) in drm_exec_obj() argument 71 return index < exec->num_objects ? exec->objects[index] : NULL; in drm_exec_obj() 75 #define __drm_exec_for_each_locked_object(exec, obj, __index) \ argument 76 for (unsigned long __index = 0; ((obj) = drm_exec_obj(exec, __index)); ++__index) 84 #define drm_exec_for_each_locked_object(exec, obj) \ argument 85 __drm_exec_for_each_locked_object(exec, obj, __UNIQUE_ID(drm_exec)) 88 #define __drm_exec_for_each_locked_object_reverse(exec, obj, __index) \ argument 89 for (unsigned long __index = (exec)->num_objects - 1; \ 90 ((obj) = drm_exec_obj(exec, __index)); --__index) 101 #define drm_exec_for_each_locked_object_reverse(exec, obj) \ argument [all …]
|
| /linux/drivers/gpu/drm/vc4/ |
| H A D | vc4_validate.c | 52 struct vc4_exec_info *exec, \ 107 vc4_use_bo(struct vc4_exec_info *exec, uint32_t hindex) in vc4_use_bo() argument 109 struct vc4_dev *vc4 = exec->dev; in vc4_use_bo() 116 if (hindex >= exec->bo_count) { in vc4_use_bo() 118 hindex, exec->bo_count); in vc4_use_bo() 121 obj = to_drm_gem_dma_obj(exec->bo[hindex]); in vc4_use_bo() 134 vc4_use_handle(struct vc4_exec_info *exec, uint32_t gem_handles_packet_index) in vc4_use_handle() argument 136 return vc4_use_bo(exec, exec->bo_index[gem_handles_packet_index]); in vc4_use_handle() 140 validate_bin_pos(struct vc4_exec_info *exec, void *untrusted, uint32_t pos) in validate_bin_pos() argument 145 return (untrusted - 1 == exec->bin_u + pos); in validate_bin_pos() [all …]
|
| H A D | vc4_irq.c | 67 struct vc4_exec_info *exec; in vc4_overflow_mem_work() local 92 exec = vc4_first_bin_job(vc4); in vc4_overflow_mem_work() 93 if (!exec) in vc4_overflow_mem_work() 94 exec = vc4_last_render_job(vc4); in vc4_overflow_mem_work() 95 if (exec) { in vc4_overflow_mem_work() 96 exec->bin_slots |= vc4->bin_alloc_overflow; in vc4_overflow_mem_work() 120 struct vc4_exec_info *next, *exec = vc4_first_bin_job(vc4); in vc4_irq_finish_bin_job() local 122 if (!exec) in vc4_irq_finish_bin_job() 125 trace_vc4_bcl_end_irq(dev, exec->seqno); in vc4_irq_finish_bin_job() 127 vc4_move_job_to_render(dev, exec); in vc4_irq_finish_bin_job() [all …]
|
| /linux/include/uapi/linux/ |
| H A D | a.out.h | 44 #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 D | amdgpu_seq64.c | 71 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 D | amdgpu_userq_fence.c | 372 struct drm_exec exec; in amdgpu_userq_fence_read_wptr() local 379 drm_exec_init(&exec, DRM_EXEC_IGNORE_DUPLICATES, 2); in amdgpu_userq_fence_read_wptr() 380 drm_exec_until_all_locked(&exec) { in amdgpu_userq_fence_read_wptr() 381 ret = amdgpu_vm_lock_pd(queue->vm, &exec, 1); in amdgpu_userq_fence_read_wptr() 382 drm_exec_retry_on_contention(&exec); in amdgpu_userq_fence_read_wptr() 392 ret = drm_exec_lock_obj(&exec, &mapping->bo_va->base.bo->tbo.base); in amdgpu_userq_fence_read_wptr() 393 drm_exec_retry_on_contention(&exec); in amdgpu_userq_fence_read_wptr() 408 drm_exec_fini(&exec); in amdgpu_userq_fence_read_wptr() 412 drm_exec_fini(&exec); in amdgpu_userq_fence_read_wptr() 470 struct drm_exec exec; in amdgpu_userq_signal_ioctl() local [all …]
|
| H A D | amdgpu_gem.c | 239 struct drm_exec exec; in amdgpu_gem_object_open() local 250 drm_exec_init(&exec, DRM_EXEC_IGNORE_DUPLICATES, 0); in amdgpu_gem_object_open() 251 drm_exec_until_all_locked(&exec) { in amdgpu_gem_object_open() 252 r = drm_exec_prepare_obj(&exec, &abo->tbo.base, TTM_NUM_MOVE_FENCES + 1); in amdgpu_gem_object_open() 253 drm_exec_retry_on_contention(&exec); in amdgpu_gem_object_open() 257 r = amdgpu_vm_lock_pd(vm, &exec, 0); in amdgpu_gem_object_open() 258 drm_exec_retry_on_contention(&exec); in amdgpu_gem_object_open() 274 drm_exec_fini(&exec); in amdgpu_gem_object_open() 310 drm_exec_fini(&exec); in amdgpu_gem_object_open() 324 struct drm_exec exec; in amdgpu_gem_object_close() local [all …]
|
| H A D | amdgpu_amdkfd_gpuvm.c | 881 struct drm_exec exec; in kfd_mem_attach() local 962 drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in kfd_mem_attach() 963 drm_exec_until_all_locked(&exec) { in kfd_mem_attach() 964 ret = amdgpu_vm_lock_pd(vm, &exec, 0); in kfd_mem_attach() 965 drm_exec_retry_on_contention(&exec); in kfd_mem_attach() 968 ret = drm_exec_lock_obj(&exec, &bo[i]->tbo.base); in kfd_mem_attach() 969 drm_exec_retry_on_contention(&exec); in kfd_mem_attach() 980 drm_exec_fini(&exec); in kfd_mem_attach() 1146 struct drm_exec exec; member 1176 drm_exec_init(&ctx->exec, DRM_EXEC_INTERRUPTIBLE_WAIT, 0); in reserve_bo_and_vm() [all …]
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_dma_buf.c | 55 struct drm_exec *exec = XE_VALIDATION_UNSUPPORTED; in xe_dma_buf_pin() local 73 ret = xe_bo_migrate(bo, XE_PL_TT, NULL, exec); in xe_dma_buf_pin() 83 ret = xe_bo_pin_external(bo, !allow_vram, exec); in xe_dma_buf_pin() 103 struct drm_exec *exec = XE_VALIDATION_UNSUPPORTED; in xe_dma_buf_map() local 112 r = xe_bo_migrate(bo, XE_PL_TT, NULL, exec); in xe_dma_buf_map() 114 r = xe_bo_validate(bo, NULL, false, exec); in xe_dma_buf_map() 174 struct drm_exec exec; in xe_dma_buf_begin_cpu_access() local 181 xe_validation_guard(&ctx, &xe_bo_device(bo)->val, &exec, (struct xe_val_flags) {}, ret) { in xe_dma_buf_begin_cpu_access() 182 ret = drm_exec_lock_obj(&exec, &bo->ttm.base); in xe_dma_buf_begin_cpu_access() 183 drm_exec_retry_on_contention(&exec); in xe_dma_buf_begin_cpu_access() [all …]
|
| H A D | xe_bo.c | 1356 struct drm_exec exec; in xe_bo_notifier_prepare_pinned() local 1360 xe_validation_guard(&ctx, &xe->val, &exec, (struct xe_val_flags) {.exclusive = true}, ret) { in xe_bo_notifier_prepare_pinned() 1361 ret = drm_exec_lock_obj(&exec, &bo->ttm.base); in xe_bo_notifier_prepare_pinned() 1362 drm_exec_retry_on_contention(&exec); in xe_bo_notifier_prepare_pinned() 1383 XE_BO_FLAG_PINNED, NULL, &exec); in xe_bo_notifier_prepare_pinned() 1385 drm_exec_retry_on_contention(&exec); in xe_bo_notifier_prepare_pinned() 1493 struct drm_exec exec; in xe_bo_evict_pinned() local 1498 xe_validation_guard(&ctx, &xe->val, &exec, (struct xe_val_flags) {.exclusive = true}, ret) { in xe_bo_evict_pinned() 1499 ret = drm_exec_lock_obj(&exec, &bo->ttm.base); in xe_bo_evict_pinned() 1500 drm_exec_retry_on_contention(&exec); in xe_bo_evict_pinned() [all …]
|
| H A D | xe_pagefault.c | 49 static int xe_pagefault_begin(struct drm_exec *exec, struct xe_vma *vma, in xe_pagefault_begin() argument 56 err = xe_vm_lock_vma(exec, vma); in xe_pagefault_begin() 76 return need_vram_move ? xe_bo_migrate(bo, vram->placement, NULL, exec) : in xe_pagefault_begin() 77 xe_bo_validate(bo, vm, true, exec); in xe_pagefault_begin() 86 struct drm_exec exec; in xe_pagefault_handle_vma() local 118 xe_validation_ctx_init(&ctx, &vm->xe->val, &exec, (struct xe_val_flags) {}); in xe_pagefault_handle_vma() 119 drm_exec_until_all_locked(&exec) { in xe_pagefault_handle_vma() 120 err = xe_pagefault_begin(&exec, vma, tile->mem.vram, in xe_pagefault_handle_vma() 122 drm_exec_retry_on_contention(&exec); in xe_pagefault_handle_vma() 129 xe_vm_set_validation_exec(vm, &exec); in xe_pagefault_handle_vma()
|
| H A D | xe_bo.h | 126 struct drm_exec *exec); 130 struct drm_exec *exec); 132 u16 cpu_caching, u32 flags, struct drm_exec *exec); 136 struct drm_exec *exec); 228 int xe_bo_pin_external(struct xe_bo *bo, bool in_place, struct drm_exec *exec); 229 int xe_bo_pin(struct xe_bo *bo, struct drm_exec *exec); 233 struct drm_exec *exec); 437 struct drm_exec *exec); 438 int xe_bo_evict(struct xe_bo *bo, struct drm_exec *exec);
|
| /linux/drivers/gpu/drm/xe/tests/ |
| H A D | xe_migrate.c | 74 struct kunit *test, u32 region, struct drm_exec *exec) in test_copy() argument 89 exec); in test_copy() 96 err = xe_bo_validate(remote, NULL, false, exec); in test_copy() 166 struct drm_exec *exec, struct kunit *test) in test_copy_sysmem() argument 168 test_copy(m, bo, test, XE_BO_FLAG_SYSTEM, exec); in test_copy_sysmem() 172 struct drm_exec *exec, struct kunit *test) in test_copy_vram() argument 183 test_copy(m, bo, test, region, exec); in test_copy_vram() 187 struct drm_exec *exec) in xe_migrate_sanity_test() argument 208 exec); in xe_migrate_sanity_test() 217 exec); in xe_migrate_sanity_test() [all …]
|
| /linux/tools/testing/selftests/exec/ |
| H A D | check-exec.c | 269 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 D | null-argv.c | 10 #define FORK(exec) \ argument 15 exec; /* Some kind of exec */ \ 16 perror("# " #exec); \ 19 check_result(pid, #exec); \
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/timer/ |
| H A D | base.c | 73 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/drivers/sbus/char/ |
| H A D | oradax.c | 860 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/msm/ |
| H A D | msm_gem_submit.c | 272 struct drm_exec *exec = &submit->exec; in submit_lock_objects_vmbind() local 275 drm_exec_init(&submit->exec, flags, submit->nr_bos); in submit_lock_objects_vmbind() 278 drm_exec_until_all_locked (&submit->exec) { in submit_lock_objects_vmbind() 279 ret = drm_gpuvm_prepare_vm(submit->vm, exec, 1); in submit_lock_objects_vmbind() 280 drm_exec_retry_on_contention(exec); in submit_lock_objects_vmbind() 284 ret = drm_gpuvm_prepare_objects(submit->vm, exec, 1); in submit_lock_objects_vmbind() 285 drm_exec_retry_on_contention(exec); in submit_lock_objects_vmbind() 302 drm_exec_init(&submit->exec, flags, submit->nr_bos); in submit_lock_objects() 305 drm_exec_until_all_locked (&submit->exec) { in submit_lock_objects() 306 ret = drm_exec_lock_obj(&submit->exec, in submit_lock_objects() [all …]
|
| H A D | msm_gem.c | 56 struct drm_exec exec; in msm_gem_close() local 84 msm_gem_lock_vm_and_obj(&exec, obj, ctx->vm); in msm_gem_close() 86 drm_exec_fini(&exec); /* drop locks */ in msm_gem_close() 109 struct drm_exec exec; in msm_gem_vma_put() local 111 msm_gem_lock_vm_and_obj(&exec, obj, priv->kms->vm); in msm_gem_vma_put() 113 drm_exec_fini(&exec); /* drop locks */ in msm_gem_vma_put() 560 struct drm_exec exec; in msm_gem_get_and_pin_iova_range() local 563 msm_gem_lock_vm_and_obj(&exec, obj, vm); in msm_gem_get_and_pin_iova_range() 565 drm_exec_fini(&exec); /* drop locks */ in msm_gem_get_and_pin_iova_range() 585 struct drm_exec exec; in msm_gem_get_iova() local [all …]
|
| H A D | msm_gem.h | 362 msm_gem_lock_vm_and_obj(struct drm_exec *exec, in msm_gem_lock_vm_and_obj() argument 368 drm_exec_init(exec, 0, 2); in msm_gem_lock_vm_and_obj() 369 drm_exec_until_all_locked (exec) { in msm_gem_lock_vm_and_obj() 370 ret = drm_exec_lock_obj(exec, drm_gpuvm_resv_obj(vm)); in msm_gem_lock_vm_and_obj() 372 ret = drm_exec_lock_obj(exec, obj); in msm_gem_lock_vm_and_obj() 373 drm_exec_retry_on_contention(exec); in msm_gem_lock_vm_and_obj() 440 struct drm_exec exec; member
|
| /linux/tools/perf/util/ |
| H A D | comm.h | 15 bool exec; member 23 struct comm *comm__new(const char *str, u64 timestamp, bool exec); 26 bool exec);
|
| H A D | comm.c | 192 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()
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | test_overhead.c | 10 int BPF_KPROBE(prog1, struct task_struct *tsk, const char *buf, bool exec) 28 int BPF_PROG(prog4, struct task_struct *tsk, const char *buf, bool exec) in prog3() 34 int BPF_PROG(prog5, struct task_struct *tsk, const char *buf, bool exec) in BPF_PROG() 13 BPF_KPROBE(prog1,struct task_struct * tsk,const char * buf,bool exec) BPF_KPROBE() argument 31 BPF_PROG(prog4,struct task_struct * tsk,const char * buf,bool exec) BPF_PROG() argument 37 BPF_PROG(prog5,struct task_struct * tsk,const char * buf,bool exec) BPF_PROG() argument
|