Home
last modified time | relevance | path

Searched refs:resv (Results 1 – 25 of 182) sorted by relevance

12345678

/linux/drivers/dma-buf/
H A Dst-dma-resv.c40 struct dma_resv resv; in sanitycheck() local
53 dma_resv_init(&resv); in sanitycheck()
54 r = dma_resv_lock(&resv, NULL); in sanitycheck()
58 dma_resv_unlock(&resv); in sanitycheck()
59 dma_resv_fini(&resv); in sanitycheck()
66 struct dma_resv resv; in test_signaling() local
76 dma_resv_init(&resv); in test_signaling()
77 r = dma_resv_lock(&resv, NULL); in test_signaling()
83 r = dma_resv_reserve_fences(&resv, 1); in test_signaling()
89 dma_resv_add_fence(&resv, f, usage); in test_signaling()
[all …]
H A Ddma-buf.c185 if (dmabuf->resv == (struct dma_resv *)&dmabuf[1]) in dma_buf_release()
186 dma_resv_fini(dmabuf->resv); in dma_buf_release()
318 static bool dma_buf_poll_add_cb(struct dma_resv *resv, bool write, in dma_buf_poll_add_cb() argument
325 dma_resv_for_each_fence(&cursor, resv, dma_resv_usage_rw(write), in dma_buf_poll_add_cb()
340 struct dma_resv *resv; in dma_buf_poll() local
344 if (!dmabuf || !dmabuf->resv) in dma_buf_poll()
347 resv = dmabuf->resv; in dma_buf_poll()
355 dma_resv_lock(resv, NULL); in dma_buf_poll()
372 if (!dma_buf_poll_add_cb(resv, true, dcb)) in dma_buf_poll()
395 if (!dma_buf_poll_add_cb(resv, false, dcb)) in dma_buf_poll()
[all …]
/linux/fs/xfs/scrub/
H A Dnewbt.c100 enum xfs_ag_resv_type resv) in xrep_newbt_init_ag() argument
106 xnr->resv = resv; in xrep_newbt_init_ag()
195 struct xrep_newbt_resv *resv; in xrep_newbt_add_blocks() local
198 resv = kmalloc_obj(struct xrep_newbt_resv, XCHK_GFP_FLAGS); in xrep_newbt_add_blocks()
199 if (!resv) in xrep_newbt_add_blocks()
202 INIT_LIST_HEAD(&resv->list); in xrep_newbt_add_blocks()
203 resv->agbno = XFS_FSB_TO_AGBNO(mp, args->fsbno); in xrep_newbt_add_blocks()
204 resv->len = args->len; in xrep_newbt_add_blocks()
205 resv->used = 0; in xrep_newbt_add_blocks()
206 resv->pag = xfs_perag_hold(pag); in xrep_newbt_add_blocks()
[all …]
H A Dalloc_repair.c533 struct xrep_newbt_resv *resv) in xrep_abt_dispose_one() argument
537 xfs_agblock_t free_agbno = resv->agbno + resv->used; in xrep_abt_dispose_one()
538 xfs_extlen_t free_aglen = resv->len - resv->used; in xrep_abt_dispose_one()
541 ASSERT(pag == resv->pag); in xrep_abt_dispose_one()
544 if (resv->used > 0) in xrep_abt_dispose_one()
546 xfs_agbno_to_fsb(pag, resv->agbno), resv->used, in xrep_abt_dispose_one()
557 trace_xrep_newbt_free_blocks(resv->pag, free_agbno, free_aglen, in xrep_abt_dispose_one()
560 error = __xfs_free_extent(sc->tp, resv->pag, free_agbno, free_aglen, in xrep_abt_dispose_one()
579 struct xrep_newbt_resv *resv, *n; in xrep_abt_dispose_reservations() local
584 list_for_each_entry_safe(resv, n, &ra->new_bnobt.resv_list, list) { in xrep_abt_dispose_reservations()
[all …]
/linux/drivers/gpu/drm/ttm/tests/
H A Dttm_bo_test.c70 dma_resv_unlock(bo->base.resv); in ttm_bo_reserve_optimistic_no_ticket()
83 dma_resv_lock(bo->base.resv, NULL); in ttm_bo_reserve_locked_no_sleep()
86 dma_resv_unlock(bo->base.resv); in ttm_bo_reserve_locked_no_sleep()
126 dma_resv_unlock(bo->base.resv); in ttm_bo_reserve_double_resv()
151 ww_mutex_base_lock(&bo2->base.resv->lock.base); in ttm_bo_reserve_deadlock()
154 lock_release(&bo2->base.resv->lock.base.dep_map, 1); in ttm_bo_reserve_deadlock()
156 bo2->base.resv->lock.ctx = &ctx2; in ttm_bo_reserve_deadlock()
166 dma_resv_unlock(bo1->base.resv); in ttm_bo_reserve_deadlock()
225 dma_resv_lock(bo->base.resv, NULL); in ttm_bo_reserve_interrupted()
231 dma_resv_unlock(bo->base.resv); in ttm_bo_reserve_interrupted()
[all …]
H A Dttm_tt_test.c161 dma_resv_lock(bo->base.resv, NULL); in ttm_tt_create_basic()
163 dma_resv_unlock(bo->base.resv); in ttm_tt_create_basic()
180 dma_resv_lock(bo->base.resv, NULL); in ttm_tt_create_invalid_bo_type()
182 dma_resv_unlock(bo->base.resv); in ttm_tt_create_invalid_bo_type()
204 dma_resv_lock(bo->base.resv, NULL); in ttm_tt_create_ttm_exists()
206 dma_resv_unlock(bo->base.resv); in ttm_tt_create_ttm_exists()
234 dma_resv_lock(bo->base.resv, NULL); in ttm_tt_create_failed()
236 dma_resv_unlock(bo->base.resv); in ttm_tt_create_failed()
249 dma_resv_lock(bo->base.resv, NULL); in ttm_tt_destroy_basic()
251 dma_resv_unlock(bo->base.resv); in ttm_tt_destroy_basic()
/linux/drivers/gpu/drm/
H A Ddrm_gem_shmem_helper.c175 dma_resv_lock(shmem->base.resv, NULL); in drm_gem_shmem_release()
191 dma_resv_unlock(shmem->base.resv); in drm_gem_shmem_release()
217 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_get_pages_locked()
256 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_put_pages_locked()
278 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_pin_locked()
295 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_unpin_locked()
322 ret = dma_resv_lock_interruptible(shmem->base.resv, NULL); in drm_gem_shmem_pin()
326 dma_resv_unlock(shmem->base.resv); in drm_gem_shmem_pin()
348 dma_resv_lock(shmem->base.resv, NULL); in drm_gem_shmem_unpin()
350 dma_resv_unlock(shmem->base.resv); in drm_gem_shmem_unpin()
[all …]
H A Ddrm_gem.c232 if (!obj->resv) in drm_gem_private_object_init()
233 obj->resv = &obj->_resv; in drm_gem_private_object_init()
917 ret = dma_resv_wait_timeout(obj->resv, dma_resv_usage_rw(wait_all), in drm_gem_dma_resv_wait()
1420 dma_resv_assert_held(obj->resv); in drm_gem_vmap_locked()
1437 dma_resv_assert_held(obj->resv); in drm_gem_vunmap_locked()
1452 dma_resv_lock(obj->resv, NULL); in drm_gem_lock()
1458 dma_resv_unlock(obj->resv); in drm_gem_unlock()
1466 dma_resv_lock(obj->resv, NULL); in drm_gem_vmap()
1468 dma_resv_unlock(obj->resv); in drm_gem_vmap()
1476 dma_resv_lock(obj->resv, NULL); in drm_gem_vunmap()
[all …]
/linux/drivers/gpu/drm/ttm/
H A Dttm_bo.c82 dma_resv_assert_held(bo->base.resv); in ttm_bo_move_to_lru_tail()
106 dma_resv_assert_held(bo->base.resv); in ttm_bo_set_bulk_move()
154 ret = dma_resv_reserve_fences(bo->base.resv, 1); in ttm_bo_handle_move_mem()
196 if (bo->base.resv == &bo->base._resv) in ttm_bo_individualize_resv()
201 r = dma_resv_copy_fences(&bo->base._resv, bo->base.resv); in ttm_bo_individualize_resv()
212 bo->base.resv = &bo->base._resv; in ttm_bo_individualize_resv()
221 struct dma_resv *resv = &bo->base._resv; in ttm_bo_flush_all_fences() local
225 dma_resv_iter_begin(&cursor, resv, DMA_RESV_USAGE_BOOKKEEP); in ttm_bo_flush_all_fences()
243 dma_resv_lock(bo->base.resv, NULL); in ttm_bo_delayed_delete()
245 dma_resv_unlock(bo->base.resv); in ttm_bo_delayed_delete()
[all …]
H A Dttm_bo_util.c254 fbo->base.base.resv = &fbo->base.base._resv; in ttm_buffer_object_transfer()
503 dma_resv_assert_held(bo->base.resv); in ttm_bo_vmap()
568 dma_resv_assert_held(bo->base.resv); in ttm_bo_vunmap()
588 ret = dma_resv_wait_timeout(bo->base.resv, DMA_RESV_USAGE_BOOKKEEP, in ttm_bo_wait_free_node()
711 dma_resv_add_fence(bo->base.resv, fence, DMA_RESV_USAGE_KERNEL); in ttm_bo_move_accel_cleanup()
770 if (dma_resv_test_signaled(bo->base.resv, DMA_RESV_USAGE_BOOKKEEP)) { in ttm_bo_pipeline_gutting()
804 ret = dma_resv_copy_fences(&ghost->base._resv, bo->base.resv); in ttm_bo_pipeline_gutting()
807 dma_resv_wait_timeout(bo->base.resv, DMA_RESV_USAGE_BOOKKEEP, in ttm_bo_pipeline_gutting()
828 if (dma_resv_trylock(bo->base.resv)) { in ttm_lru_walk_trylock()
833 if (bo->base.resv == ctx->resv && ctx->allow_res_evict) { in ttm_lru_walk_trylock()
[all …]
/linux/drivers/gpu/drm/vgem/
H A Dvgem_fence.c116 struct dma_resv *resv; in vgem_fence_attach_ioctl() local
139 resv = obj->resv; in vgem_fence_attach_ioctl()
141 if (!dma_resv_test_signaled(resv, usage)) { in vgem_fence_attach_ioctl()
147 dma_resv_lock(resv, NULL); in vgem_fence_attach_ioctl()
148 ret = dma_resv_reserve_fences(resv, 1); in vgem_fence_attach_ioctl()
150 dma_resv_add_fence(resv, fence, arg->flags & VGEM_FENCE_WRITE ? in vgem_fence_attach_ioctl()
152 dma_resv_unlock(resv); in vgem_fence_attach_ioctl()
/linux/drivers/infiniband/core/
H A Dumem_dmabuf.c24 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_map_pages()
75 ret = dma_resv_wait_timeout(umem_dmabuf->attach->dmabuf->resv, in ib_umem_dmabuf_map_pages()
88 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_unmap_pages()
192 dma_resv_assert_held(attach->dmabuf->resv); in ib_umem_dmabuf_revoke_locked()
229 dma_resv_lock(umem_dmabuf->attach->dmabuf->resv, NULL); in ib_umem_dmabuf_get_pinned_and_lock()
242 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_get_pinned_and_lock()
260 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_get_pinned_with_dma_device()
310 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_set_revoke_locked()
331 dma_resv_lock(dmabuf->resv, NULL); in ib_umem_dmabuf_revoke_lock()
339 dma_resv_unlock(dmabuf->resv); in ib_umem_dmabuf_revoke_unlock()
[all …]
H A Duverbs_std_types_dmabuf.c31 dma_resv_assert_held(priv->dmabuf->resv); in uverbs_dmabuf_map()
52 dma_resv_assert_held(priv->dmabuf->resv); in uverbs_dmabuf_unmap()
168 dma_resv_lock(uverbs_dmabuf->dmabuf->resv, NULL); in uverbs_dmabuf_fd_destroy_uobj()
173 dma_resv_wait_timeout(uverbs_dmabuf->dmabuf->resv, in uverbs_dmabuf_fd_destroy_uobj()
178 dma_resv_unlock(uverbs_dmabuf->dmabuf->resv); in uverbs_dmabuf_fd_destroy_uobj()
/linux/include/uapi/linux/
H A Dio_uring.h622 __u32 resv[3]; member
742 __u32 resv; member
787 __u32 resv; member
793 __u32 resv; member
807 __u8 resv; member
815 __u16 resv; member
827 __u8 resv; member
834 __u32 resv[3]; member
861 __u16 resv; member
909 __u32 resv[5]; member
[all …]
/linux/tools/include/uapi/linux/
H A Dio_uring.h493 __u32 resv[3]; member
577 __u32 resv; member
597 __u32 resv; member
603 __u32 resv; member
617 __u8 resv; member
625 __u16 resv; member
637 __u8 resv; member
645 __u16 resv; member
684 __u64 resv[3]; member
733 __u64 resv; member
/linux/drivers/gpu/drm/radeon/
H A Dradeon_prime.c49 struct dma_resv *resv = attach->dmabuf->resv; in radeon_gem_prime_import_sg_table() local
54 dma_resv_lock(resv, NULL); in radeon_gem_prime_import_sg_table()
56 RADEON_GEM_DOMAIN_GTT, 0, sg, resv, &bo); in radeon_gem_prime_import_sg_table()
57 dma_resv_unlock(resv); in radeon_gem_prime_import_sg_table()
H A Dradeon_benchmark.c38 struct dma_resv *resv) in radeon_benchmark_do_move() argument
51 resv); in radeon_benchmark_do_move()
56 resv); in radeon_benchmark_do_move()
125 dobj->tbo.base.resv); in radeon_benchmark_move()
136 dobj->tbo.base.resv); in radeon_benchmark_move()
/linux/drivers/vfio/pci/
H A Dvfio_pci_dmabuf.c57 dma_resv_assert_held(priv->dmabuf->resv); in vfio_pci_dma_buf_map()
78 dma_resv_assert_held(priv->dmabuf->resv); in vfio_pci_dma_buf_unmap()
125 dma_resv_assert_held(attachment->dmabuf->resv); in vfio_pci_dma_buf_iommufd_map()
309 dma_resv_lock(priv->dmabuf->resv, NULL); in vfio_pci_core_feature_dma_buf()
312 dma_resv_unlock(priv->dmabuf->resv); in vfio_pci_core_feature_dma_buf()
348 dma_resv_lock(priv->dmabuf->resv, NULL); in vfio_pci_dma_buf_move()
352 dma_resv_wait_timeout(priv->dmabuf->resv, in vfio_pci_dma_buf_move()
355 dma_resv_unlock(priv->dmabuf->resv); in vfio_pci_dma_buf_move()
371 dma_resv_lock(priv->dmabuf->resv, NULL); in vfio_pci_dma_buf_move()
373 dma_resv_unlock(priv->dmabuf->resv); in vfio_pci_dma_buf_move()
/linux/mm/
H A Dhugetlb.c460 get_file_region_entry_from_cache(struct resv_map *resv, long from, long to) in get_file_region_entry_from_cache() argument
464 VM_BUG_ON(resv->region_cache_count <= 0); in get_file_region_entry_from_cache()
466 resv->region_cache_count--; in get_file_region_entry_from_cache()
467 nrg = list_first_entry(&resv->region_cache, struct file_region, link); in get_file_region_entry_from_cache()
490 struct resv_map *resv, in record_hugetlb_cgroup_uncharge_info() argument
509 if (!resv->pages_per_hpage) in record_hugetlb_cgroup_uncharge_info()
510 resv->pages_per_hpage = pages_per_huge_page(h); in record_hugetlb_cgroup_uncharge_info()
514 VM_BUG_ON(resv->pages_per_hpage != pages_per_huge_page(h)); in record_hugetlb_cgroup_uncharge_info()
542 static void coalesce_file_region(struct resv_map *resv, struct file_region *rg) in coalesce_file_region() argument
547 if (&prg->link != &resv->regions && prg->to == rg->from && in coalesce_file_region()
[all …]
H A Dhugetlb_cgroup.c412 void hugetlb_cgroup_uncharge_counter(struct resv_map *resv, unsigned long start, in hugetlb_cgroup_uncharge_counter() argument
415 if (hugetlb_cgroup_disabled() || !resv || !resv->reservation_counter || in hugetlb_cgroup_uncharge_counter()
416 !resv->css) in hugetlb_cgroup_uncharge_counter()
419 page_counter_uncharge(resv->reservation_counter, in hugetlb_cgroup_uncharge_counter()
420 (end - start) * resv->pages_per_hpage); in hugetlb_cgroup_uncharge_counter()
421 css_put(resv->css); in hugetlb_cgroup_uncharge_counter()
424 void hugetlb_cgroup_uncharge_file_region(struct resv_map *resv, in hugetlb_cgroup_uncharge_file_region() argument
429 if (hugetlb_cgroup_disabled() || !resv || !rg || !nr_pages) in hugetlb_cgroup_uncharge_file_region()
432 if (rg->reservation_counter && resv->pages_per_hpage && in hugetlb_cgroup_uncharge_file_region()
433 !resv->reservation_counter) { in hugetlb_cgroup_uncharge_file_region()
[all …]
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_ttm.c302 struct dma_resv *resv, in amdgpu_ttm_copy_mem_to_mem() argument
363 r = amdgpu_copy_buffer(adev, entity, from, to, cur_size, resv, in amdgpu_ttm_copy_mem_to_mem()
415 bo->base.resv, &fence); in amdgpu_move_blit()
1488 dma_resv_for_each_fence(&resv_cursor, bo->base.resv, in amdgpu_ttm_bo_eviction_valuable()
1682 struct amdgpu_vram_resv *resv; in amdgpu_ttm_init_vram_resv() local
1687 resv = &adev->mman.resv_region[id]; in amdgpu_ttm_init_vram_resv()
1688 resv->offset = offset; in amdgpu_ttm_init_vram_resv()
1689 resv->size = size; in amdgpu_ttm_init_vram_resv()
1690 resv->needs_cpu_map = needs_cpu_map; in amdgpu_ttm_init_vram_resv()
1775 struct amdgpu_vram_resv *resv; in amdgpu_ttm_mark_vram_reserved() local
[all …]
/linux/Documentation/gpu/
H A Ddrm-vm-bind-locking.rst96 * The ``gpu_vm->resv`` lock. Protects the gpu_vm's list of gpu_vmas needing
166 dma_resv_lock(gpu_vm->resv);
186 add_dependencies(&gpu_job, &gpu_vm->resv);
189 add_dma_fence(job_dma_fence, &gpu_vm->resv);
190 dma_resv_unlock(gpu_vm->resv);
206 dma_resv_lock(obj->resv);
210 add_dependencies(&eviction_job, &obj->resv);
212 add_dma_fence(&obj->resv, job_dma_fence);
214 dma_resv_unlock(&obj->resv);
218 dma_resv lock such that ``obj->resv == gpu_vm->resv``.
[all …]
/linux/drivers/gpu/drm/virtio/
H A Dvirtgpu_plane.c315 struct dma_resv *resv = attach->dmabuf->resv; in virtio_gpu_prepare_imported_obj() local
320 dma_resv_lock(resv, NULL); in virtio_gpu_prepare_imported_obj()
324 dma_resv_unlock(resv); in virtio_gpu_prepare_imported_obj()
337 dma_resv_unlock(resv); in virtio_gpu_prepare_imported_obj()
342 dma_resv_unlock(resv); in virtio_gpu_prepare_imported_obj()
398 struct dma_resv *resv = attach->dmabuf->resv; in virtio_gpu_cleanup_imported_obj() local
400 dma_resv_lock(resv, NULL); in virtio_gpu_cleanup_imported_obj()
402 dma_resv_unlock(resv); in virtio_gpu_cleanup_imported_obj()
/linux/drivers/gpu/drm/panthor/
H A Dpanthor_gem.c202 bo->base.base.resv = bo->exclusive_vm_root_gem->resv; in panthor_kernel_bo_create()
269 dma_resv_lock(obj->resv, NULL); in panthor_gem_prime_begin_cpu_access()
282 dma_resv_unlock(obj->resv); in panthor_gem_prime_begin_cpu_access()
296 dma_resv_lock(obj->resv, NULL); in panthor_gem_prime_end_cpu_access()
310 dma_resv_unlock(obj->resv); in panthor_gem_prime_end_cpu_access()
338 .resv = obj->resv, in panthor_gem_prime_export()
446 bo->base.base.resv = bo->exclusive_vm_root_gem->resv; in panthor_gem_create_with_handle()
/linux/include/linux/
H A Dhugetlb_cgroup.h146 extern void hugetlb_cgroup_uncharge_counter(struct resv_map *resv,
150 extern void hugetlb_cgroup_uncharge_file_region(struct resv_map *resv,
160 static inline void hugetlb_cgroup_uncharge_file_region(struct resv_map *resv, in hugetlb_cgroup_uncharge_file_region() argument
255 static inline void hugetlb_cgroup_uncharge_counter(struct resv_map *resv, in hugetlb_cgroup_uncharge_counter() argument

12345678