/kernel/linux/linux-5.10/fs/ocfs2/ |
H A D | reservations.c | 42 struct ocfs2_alloc_reservation *resv) in ocfs2_resv_window_bits() 47 if (!(resv->r_flags & OCFS2_RESV_FLAG_DIR)) { in ocfs2_resv_window_bits() 56 static inline unsigned int ocfs2_resv_end(struct ocfs2_alloc_reservation *resv) in ocfs2_resv_end() argument 58 if (resv->r_len) in ocfs2_resv_end() 59 return resv->r_start + resv->r_len - 1; in ocfs2_resv_end() 60 return resv->r_start; in ocfs2_resv_end() 63 static inline int ocfs2_resv_empty(struct ocfs2_alloc_reservation *resv) in ocfs2_resv_empty() argument 65 return !!(resv->r_len == 0); in ocfs2_resv_empty() 79 struct ocfs2_alloc_reservation *resv; in ocfs2_dump_resv() local 41 ocfs2_resv_window_bits(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_window_bits() argument 112 ocfs2_validate_resmap_bits(struct ocfs2_reservation_map *resmap, int i, struct ocfs2_alloc_reservation *resv) ocfs2_validate_resmap_bits() argument 138 struct ocfs2_alloc_reservation *resv; ocfs2_check_resmap() local 189 ocfs2_resv_init_once(struct ocfs2_alloc_reservation *resv) ocfs2_resv_init_once() argument 195 ocfs2_resv_set_type(struct ocfs2_alloc_reservation *resv, unsigned int flags) ocfs2_resv_set_type() argument 216 ocfs2_resv_mark_lru(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_mark_lru() argument 227 __ocfs2_resv_trunc(struct ocfs2_alloc_reservation *resv) __ocfs2_resv_trunc() argument 233 ocfs2_resv_remove(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_remove() argument 243 __ocfs2_resv_discard(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) __ocfs2_resv_discard() argument 259 ocfs2_resv_discard(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_discard() argument 272 struct ocfs2_alloc_reservation *resv; ocfs2_resmap_clear_all_resv() local 358 struct ocfs2_alloc_reservation *resv = NULL; ocfs2_find_resv_lhs() local 459 __ocfs2_resv_find_window(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int goal, unsigned int wanted) __ocfs2_resv_find_window() argument 619 ocfs2_cannibalize_resv(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int wanted) ocfs2_cannibalize_resv() argument 680 ocfs2_resv_find_window(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int wanted) ocfs2_resv_find_window() argument 716 ocfs2_resmap_resv_bits(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, int *cstart, int *clen) ocfs2_resmap_resv_bits() argument 757 ocfs2_adjust_resv_from_alloc(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int start, unsigned int end) ocfs2_adjust_resv_from_alloc() argument 785 ocfs2_resmap_claimed_bits(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, u32 cstart, u32 clen) ocfs2_resmap_claimed_bits() argument [all...] |
H A D | reservations.h | 56 void ocfs2_resv_init_once(struct ocfs2_alloc_reservation *resv); 59 void ocfs2_resv_set_type(struct ocfs2_alloc_reservation *resv, 67 * @resv: the reservation to truncate. 73 struct ocfs2_alloc_reservation *resv); 114 * @resv: reservation to base search from 118 * Using the reservation data from resv, this function will compare 120 * the reservation window is still clear to use. If resv is empty, 129 struct ocfs2_alloc_reservation *resv, 135 * @resv: optional reservation to recalulate based on new bitmap 143 * reservations bitmap. If resv i [all...] |
/kernel/linux/linux-6.6/fs/ocfs2/ |
H A D | reservations.c | 40 struct ocfs2_alloc_reservation *resv) in ocfs2_resv_window_bits() 45 if (!(resv->r_flags & OCFS2_RESV_FLAG_DIR)) { in ocfs2_resv_window_bits() 54 static inline unsigned int ocfs2_resv_end(struct ocfs2_alloc_reservation *resv) in ocfs2_resv_end() argument 56 if (resv->r_len) in ocfs2_resv_end() 57 return resv->r_start + resv->r_len - 1; in ocfs2_resv_end() 58 return resv->r_start; in ocfs2_resv_end() 61 static inline int ocfs2_resv_empty(struct ocfs2_alloc_reservation *resv) in ocfs2_resv_empty() argument 63 return !!(resv->r_len == 0); in ocfs2_resv_empty() 77 struct ocfs2_alloc_reservation *resv; in ocfs2_dump_resv() local 39 ocfs2_resv_window_bits(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_window_bits() argument 110 ocfs2_validate_resmap_bits(struct ocfs2_reservation_map *resmap, int i, struct ocfs2_alloc_reservation *resv) ocfs2_validate_resmap_bits() argument 136 struct ocfs2_alloc_reservation *resv; ocfs2_check_resmap() local 187 ocfs2_resv_init_once(struct ocfs2_alloc_reservation *resv) ocfs2_resv_init_once() argument 193 ocfs2_resv_set_type(struct ocfs2_alloc_reservation *resv, unsigned int flags) ocfs2_resv_set_type() argument 212 ocfs2_resv_mark_lru(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_mark_lru() argument 223 __ocfs2_resv_trunc(struct ocfs2_alloc_reservation *resv) __ocfs2_resv_trunc() argument 229 ocfs2_resv_remove(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_remove() argument 239 __ocfs2_resv_discard(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) __ocfs2_resv_discard() argument 255 ocfs2_resv_discard(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv) ocfs2_resv_discard() argument 268 struct ocfs2_alloc_reservation *resv; ocfs2_resmap_clear_all_resv() local 354 struct ocfs2_alloc_reservation *resv = NULL; ocfs2_find_resv_lhs() local 455 __ocfs2_resv_find_window(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int goal, unsigned int wanted) __ocfs2_resv_find_window() argument 615 ocfs2_cannibalize_resv(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int wanted) ocfs2_cannibalize_resv() argument 676 ocfs2_resv_find_window(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int wanted) ocfs2_resv_find_window() argument 712 ocfs2_resmap_resv_bits(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, int *cstart, int *clen) ocfs2_resmap_resv_bits() argument 753 ocfs2_adjust_resv_from_alloc(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, unsigned int start, unsigned int end) ocfs2_adjust_resv_from_alloc() argument 781 ocfs2_resmap_claimed_bits(struct ocfs2_reservation_map *resmap, struct ocfs2_alloc_reservation *resv, u32 cstart, u32 clen) ocfs2_resmap_claimed_bits() argument [all...] |
H A D | reservations.h | 54 void ocfs2_resv_init_once(struct ocfs2_alloc_reservation *resv); 57 void ocfs2_resv_set_type(struct ocfs2_alloc_reservation *resv, 65 * @resv: the reservation to truncate. 71 struct ocfs2_alloc_reservation *resv); 107 * @resv: reservation to base search from 111 * Using the reservation data from resv, this function will compare 113 * the reservation window is still clear to use. If resv is empty, 122 struct ocfs2_alloc_reservation *resv, 128 * @resv: optional reservation to recalulate based on new bitmap 136 * reservations bitmap. If resv i [all...] |
/kernel/linux/linux-6.6/drivers/dma-buf/ |
H A D | st-dma-resv.c | 10 #include <linux/dma-resv.h> 40 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, in test_signaling() 114 struct dma_resv resv; test_for_each() local 175 struct dma_resv resv; test_for_each_unlocked() local 248 struct dma_resv resv; test_get_fences() local [all...] |
H A D | dma-buf.c | 26 #include <linux/dma-resv.h> 82 if (dmabuf->resv == (struct dma_resv *)&dmabuf[1]) in dma_buf_release() 83 dma_resv_fini(dmabuf->resv); in dma_buf_release() 219 static bool dma_buf_poll_add_cb(struct dma_resv *resv, bool write, in dma_buf_poll_add_cb() argument 226 dma_resv_for_each_fence(&cursor, resv, dma_resv_usage_rw(write), in dma_buf_poll_add_cb() 241 struct dma_resv *resv; in dma_buf_poll() local 245 if (!dmabuf || !dmabuf->resv) in dma_buf_poll() 248 resv = dmabuf->resv; in dma_buf_poll() 256 dma_resv_lock(resv, NUL in dma_buf_poll() 612 struct dma_resv *resv = exp_info->resv; dma_buf_export() local 1361 struct dma_resv *resv = dmabuf->resv; __dma_buf_begin_cpu_access() local [all...] |
/kernel/linux/linux-6.6/fs/xfs/libxfs/ |
H A D | xfs_log_rlimit.c | 47 struct xfs_trans_resv *resv) in xfs_log_calc_trans_resv_for_minlogblocks() 62 xfs_trans_resv_calc(mp, resv); in xfs_log_calc_trans_resv_for_minlogblocks() 69 resv->tr_write.tr_logcount = XFS_WRITE_LOG_COUNT_REFLINK; in xfs_log_calc_trans_resv_for_minlogblocks() 70 resv->tr_itruncate.tr_logcount = in xfs_log_calc_trans_resv_for_minlogblocks() 72 resv->tr_qm_dqalloc.tr_logcount = XFS_WRITE_LOG_COUNT_REFLINK; in xfs_log_calc_trans_resv_for_minlogblocks() 78 resv->tr_write.tr_logcount = XFS_WRITE_LOG_COUNT; in xfs_log_calc_trans_resv_for_minlogblocks() 79 resv->tr_itruncate.tr_logcount = XFS_ITRUNCATE_LOG_COUNT; in xfs_log_calc_trans_resv_for_minlogblocks() 80 resv->tr_qm_dqalloc.tr_logcount = XFS_WRITE_LOG_COUNT; in xfs_log_calc_trans_resv_for_minlogblocks() 88 resv->tr_write.tr_logres = in xfs_log_calc_trans_resv_for_minlogblocks() 90 resv in xfs_log_calc_trans_resv_for_minlogblocks() 45 xfs_log_calc_trans_resv_for_minlogblocks( struct xfs_mount *mp, struct xfs_trans_resv *resv) xfs_log_calc_trans_resv_for_minlogblocks() argument 109 struct xfs_trans_resv resv = {}; xfs_log_get_max_trans_res() local [all...] |
H A D | xfs_ag_resv.c | 134 struct xfs_ag_resv *resv; in __xfs_ag_resv_free() local 140 resv = xfs_perag_resv(pag, type); in __xfs_ag_resv_free() 142 pag->pag_mount->m_ag_max_usable += resv->ar_asked; in __xfs_ag_resv_free() 149 oldresv = resv->ar_orig_reserved; in __xfs_ag_resv_free() 151 oldresv = resv->ar_reserved; in __xfs_ag_resv_free() 153 resv->ar_reserved = 0; in __xfs_ag_resv_free() 154 resv->ar_asked = 0; in __xfs_ag_resv_free() 155 resv->ar_orig_reserved = 0; in __xfs_ag_resv_free() 186 struct xfs_ag_resv *resv; in __xfs_ag_resv_init() local 238 resv in __xfs_ag_resv_init() 354 struct xfs_ag_resv *resv; xfs_ag_resv_alloc_extent() local 398 struct xfs_ag_resv *resv; xfs_ag_resv_free_extent() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/ttm/ |
H A D | ttm_bo.c | 45 #include <linux/dma-resv.h> 76 dma_resv_assert_held(bo->base.resv); in ttm_bo_move_to_lru_tail() 100 dma_resv_assert_held(bo->base.resv); in ttm_bo_set_bulk_move() 148 ret = dma_resv_reserve_fences(bo->base.resv, 1); in ttm_bo_handle_move_mem() 190 if (bo->base.resv == &bo->base._resv) in ttm_bo_individualize_resv() 195 r = dma_resv_copy_fences(&bo->base._resv, bo->base.resv); in ttm_bo_individualize_resv() 203 * the resv object while holding the lru_lock. in ttm_bo_individualize_resv() 206 bo->base.resv = &bo->base._resv; in ttm_bo_individualize_resv() 215 struct dma_resv *resv = &bo->base._resv; in ttm_bo_flush_all_fences() local 219 dma_resv_iter_begin(&cursor, resv, DMA_RESV_USAGE_BOOKKEE in ttm_bo_flush_all_fences() 245 struct dma_resv *resv = &bo->base._resv; ttm_bo_cleanup_refs() local 961 ttm_bo_init_reserved(struct ttm_device *bdev, struct ttm_buffer_object *bo, enum ttm_bo_type type, struct ttm_placement *placement, uint32_t alignment, struct ttm_operation_ctx *ctx, struct sg_table *sg, struct dma_resv *resv, void (*destroy) (struct ttm_buffer_object *)) ttm_bo_init_reserved() argument 1054 ttm_bo_init_validate(struct ttm_device *bdev, struct ttm_buffer_object *bo, enum ttm_bo_type type, struct ttm_placement *placement, uint32_t alignment, bool interruptible, struct sg_table *sg, struct dma_resv *resv, void (*destroy) (struct ttm_buffer_object *)) ttm_bo_init_validate() argument [all...] |
/kernel/linux/linux-5.10/fs/xfs/libxfs/ |
H A D | xfs_ag_resv.c | 133 struct xfs_ag_resv *resv; in __xfs_ag_resv_free() local 139 resv = xfs_perag_resv(pag, type); in __xfs_ag_resv_free() 141 pag->pag_mount->m_ag_max_usable += resv->ar_asked; in __xfs_ag_resv_free() 148 oldresv = resv->ar_orig_reserved; in __xfs_ag_resv_free() 150 oldresv = resv->ar_reserved; in __xfs_ag_resv_free() 152 resv->ar_reserved = 0; in __xfs_ag_resv_free() 153 resv->ar_asked = 0; in __xfs_ag_resv_free() 154 resv->ar_orig_reserved = 0; in __xfs_ag_resv_free() 185 struct xfs_ag_resv *resv; in __xfs_ag_resv_init() local 233 resv in __xfs_ag_resv_init() 326 struct xfs_ag_resv *resv; xfs_ag_resv_alloc_extent() local 370 struct xfs_ag_resv *resv; xfs_ag_resv_free_extent() local [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/ttm/ |
H A D | ttm_bo.c | 44 #include <linux/dma-resv.h> 163 dma_resv_assert_held(bo->base.resv); in ttm_bo_move_to_lru_tail() 197 dma_resv_assert_held(pos->first->base.resv); in ttm_bo_bulk_move_lru_tail() 198 dma_resv_assert_held(pos->last->base.resv); in ttm_bo_bulk_move_lru_tail() 212 dma_resv_assert_held(pos->first->base.resv); in ttm_bo_bulk_move_lru_tail() 213 dma_resv_assert_held(pos->last->base.resv); in ttm_bo_bulk_move_lru_tail() 227 dma_resv_assert_held(pos->first->base.resv); in ttm_bo_bulk_move_lru_tail() 228 dma_resv_assert_held(pos->last->base.resv); in ttm_bo_bulk_move_lru_tail() 334 if (bo->base.resv == &bo->base._resv) in ttm_bo_individualize_resv() 339 r = dma_resv_copy_fences(&bo->base._resv, bo->base.resv); in ttm_bo_individualize_resv() 359 struct dma_resv *resv = &bo->base._resv; ttm_bo_flush_all_fences() local 396 struct dma_resv *resv = &bo->base._resv; ttm_bo_cleanup_refs() local 1130 ttm_bo_init_reserved(struct ttm_bo_device *bdev, struct ttm_buffer_object *bo, unsigned long size, enum ttm_bo_type type, struct ttm_placement *placement, uint32_t page_alignment, struct ttm_operation_ctx *ctx, size_t acc_size, struct sg_table *sg, struct dma_resv *resv, void (*destroy) (struct ttm_buffer_object *)) ttm_bo_init_reserved() argument 1238 ttm_bo_init(struct ttm_bo_device *bdev, struct ttm_buffer_object *bo, unsigned long size, enum ttm_bo_type type, struct ttm_placement *placement, uint32_t page_alignment, bool interruptible, size_t acc_size, struct sg_table *sg, struct dma_resv *resv, void (*destroy) (struct ttm_buffer_object *)) ttm_bo_init() argument [all...] |
H A D | ttm_execbuf_util.c | 42 dma_resv_unlock(bo->base.resv); in ttm_eu_backoff_reservation_reverse() 59 dma_resv_unlock(bo->base.resv); in ttm_eu_backoff_reservation() 109 ret = dma_resv_reserve_shared(bo->base.resv, in ttm_eu_reserve_buffers() 126 ret = dma_resv_reserve_shared(bo->base.resv, in ttm_eu_reserve_buffers() 162 dma_resv_add_shared_fence(bo->base.resv, fence); in ttm_eu_fence_buffer_objects() 164 dma_resv_add_excl_fence(bo->base.resv, fence); in ttm_eu_fence_buffer_objects() 166 dma_resv_unlock(bo->base.resv); in ttm_eu_fence_buffer_objects()
|
/kernel/linux/linux-5.10/drivers/dma-buf/ |
H A D | dma-buf.c | 24 #include <linux/dma-resv.h> 82 if (dmabuf->resv == (struct dma_resv *)&dmabuf[1]) in dma_buf_release() 83 dma_resv_fini(dmabuf->resv); in dma_buf_release() 215 struct dma_resv *resv; in dma_buf_poll() local 222 if (!dmabuf || !dmabuf->resv) in dma_buf_poll() 225 resv = dmabuf->resv; in dma_buf_poll() 234 seq = read_seqcount_begin(&resv->seq); in dma_buf_poll() 237 fobj = rcu_dereference(resv->fence); in dma_buf_poll() 242 fence_excl = rcu_dereference(resv in dma_buf_poll() 527 struct dma_resv *resv = exp_info->resv; dma_buf_export() local 1087 struct dma_resv *resv = dmabuf->resv; __dma_buf_begin_cpu_access() local [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_wait.c | 34 i915_gem_object_wait_reservation(struct dma_resv *resv, in i915_gem_object_wait_reservation() argument 46 ret = dma_resv_get_fences_rcu(resv, in i915_gem_object_wait_reservation() 75 excl = dma_resv_get_excl_rcu(resv); in i915_gem_object_wait_reservation() 87 if (prune_fences && dma_resv_trylock(resv)) { in i915_gem_object_wait_reservation() 88 if (dma_resv_test_signaled_rcu(resv, true)) in i915_gem_object_wait_reservation() 89 dma_resv_add_excl_fence(resv, NULL); in i915_gem_object_wait_reservation() 90 dma_resv_unlock(resv); in i915_gem_object_wait_reservation() 143 ret = dma_resv_get_fences_rcu(obj->base.resv, in i915_gem_object_wait_priority() 155 excl = dma_resv_get_excl_rcu(obj->base.resv); in i915_gem_object_wait_priority() 179 timeout = i915_gem_object_wait_reservation(obj->base.resv, in i915_gem_object_wait() [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/vgem/ |
H A D | vgem_fence.c | 24 #include <linux/dma-resv.h> 131 struct dma_resv *resv; in vgem_fence_attach_ioctl() local 153 resv = obj->resv; in vgem_fence_attach_ioctl() 154 if (!dma_resv_test_signaled_rcu(resv, in vgem_fence_attach_ioctl() 162 dma_resv_lock(resv, NULL); in vgem_fence_attach_ioctl() 164 dma_resv_add_excl_fence(resv, fence); in vgem_fence_attach_ioctl() 165 else if ((ret = dma_resv_reserve_shared(resv, 1)) == 0) in vgem_fence_attach_ioctl() 166 dma_resv_add_shared_fence(resv, fence); in vgem_fence_attach_ioctl() 167 dma_resv_unlock(resv); in vgem_fence_attach_ioctl() [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/vgem/ |
H A D | vgem_fence.c | 24 #include <linux/dma-resv.h> 131 struct dma_resv *resv; in vgem_fence_attach_ioctl() local 154 resv = obj->resv; in vgem_fence_attach_ioctl() 156 if (!dma_resv_test_signaled(resv, usage)) { in vgem_fence_attach_ioctl() 162 dma_resv_lock(resv, NULL); in vgem_fence_attach_ioctl() 163 ret = dma_resv_reserve_fences(resv, 1); in vgem_fence_attach_ioctl() 165 dma_resv_add_fence(resv, fence, arg->flags & VGEM_FENCE_WRITE ? in vgem_fence_attach_ioctl() 167 dma_resv_unlock(resv); in vgem_fence_attach_ioctl()
|
/kernel/linux/linux-6.6/drivers/gpu/drm/ |
H A D | drm_gem_shmem_helper.c | 145 dma_resv_lock(shmem->base.resv, NULL); in drm_gem_shmem_free() 160 dma_resv_unlock(shmem->base.resv); in drm_gem_shmem_free() 173 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_get_pages() 211 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_put_pages() 235 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_pin_locked() 244 dma_resv_assert_held(shmem->base.resv); in drm_gem_shmem_unpin_locked() 266 ret = dma_resv_lock_interruptible(shmem->base.resv, NULL); in drm_gem_shmem_pin() 270 dma_resv_unlock(shmem->base.resv); in drm_gem_shmem_pin() 289 dma_resv_lock(shmem->base.resv, NULL); in drm_gem_shmem_unpin() 291 dma_resv_unlock(shmem->base.resv); in drm_gem_shmem_unpin() [all...] |
H A D | drm_exec.c | 5 #include <linux/dma-resv.h> 42 * dma_resv_add_fence(obj->resv, fence, DMA_RESV_USAGE_READ); 60 dma_resv_unlock(obj->resv); in drm_exec_unlock_all() 167 ret = dma_resv_lock_slow_interruptible(obj->resv, in drm_exec_lock_contended() 172 dma_resv_lock_slow(obj->resv, &exec->ticket); in drm_exec_lock_contended() 183 dma_resv_unlock(obj->resv); in drm_exec_lock_contended() 216 ret = dma_resv_lock_interruptible(obj->resv, &exec->ticket); in drm_exec_lock_obj() 218 ret = dma_resv_lock(obj->resv, &exec->ticket); in drm_exec_lock_obj() 240 dma_resv_unlock(obj->resv); in drm_exec_lock_obj() 260 dma_resv_unlock(obj->resv); in drm_exec_unlock_obj() [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_dma_buf.c | 320 struct dma_resv *resv = dma_buf->resv; in amdgpu_dma_buf_create_obj() local 327 dma_resv_lock(resv, NULL); in amdgpu_dma_buf_create_obj() 339 ttm_bo_type_sg, resv, &gobj, 0); in amdgpu_dma_buf_create_obj() 347 dma_resv_unlock(resv); in amdgpu_dma_buf_create_obj() 351 dma_resv_unlock(resv); in amdgpu_dma_buf_create_obj() 367 struct ww_acquire_ctx *ticket = dma_resv_locking_ctx(obj->resv); in amdgpu_dma_buf_move_notify() 386 struct dma_resv *resv = vm->root.bo->tbo.base.resv; in amdgpu_dma_buf_move_notify() local 393 r = dma_resv_lock(resv, ticke in amdgpu_dma_buf_move_notify() [all...] |
H A D | amdgpu_vm.c | 320 if (bo->tbo.base.resv != vm->root.bo->tbo.base.resv) in amdgpu_vm_bo_base_init() 323 dma_resv_assert_held(vm->root.bo->tbo.base.resv); in amdgpu_vm_bo_base_init() 848 * @resv: fences we need to sync to 865 struct dma_resv *resv, uint64_t start, uint64_t last, in amdgpu_vm_update_range() 925 r = vm->update_funcs->prepare(¶ms, resv, sync_mode); in amdgpu_vm_update_range() 1020 if (bo->tbo.base.resv != vm->root.bo->tbo.base.resv && in amdgpu_vm_bo_get_memory() 1021 !dma_resv_trylock(bo->tbo.base.resv)) in amdgpu_vm_bo_get_memory() 1025 if (bo->tbo.base.resv ! in amdgpu_vm_bo_get_memory() 863 amdgpu_vm_update_range(struct amdgpu_device *adev, struct amdgpu_vm *vm, bool immediate, bool unlocked, bool flush_tlb, struct dma_resv *resv, uint64_t start, uint64_t last, uint64_t flags, uint64_t offset, uint64_t vram_base, struct ttm_resource *res, dma_addr_t *pages_addr, struct dma_fence **fence) amdgpu_vm_update_range() argument 1077 struct dma_resv *resv; amdgpu_vm_bo_update() local 1300 struct dma_resv *resv = vm->root.bo->tbo.base.resv; amdgpu_vm_prt_fini() local 1330 struct dma_resv *resv = vm->root.bo->tbo.base.resv; amdgpu_vm_clear_freed() local 1384 struct dma_resv *resv; amdgpu_vm_handle_moved() local [all...] |
/kernel/linux/linux-6.6/include/drm/ttm/ |
H A D | ttm_bo.h | 115 * Members protected by the bo::resv::reserved lock. 173 * @resv: Reservation object to allow reserved evictions with. 184 struct dma_resv *resv; member 250 success = dma_resv_trylock(bo->base.resv); in ttm_bo_reserve() 255 ret = dma_resv_lock_interruptible(bo->base.resv, ticket); in ttm_bo_reserve() 257 ret = dma_resv_lock(bo->base.resv, ticket); in ttm_bo_reserve() 278 int ret = dma_resv_lock_slow_interruptible(bo->base.resv, in ttm_bo_reserve_slowpath() 284 dma_resv_lock_slow(bo->base.resv, ticket); in ttm_bo_reserve_slowpath() 329 dma_resv_unlock(bo->base.resv); in ttm_bo_unreserve() 363 struct sg_table *sg, struct dma_resv *resv, [all...] |
/kernel/linux/linux-6.6/drivers/infiniband/core/ |
H A D | umem_dmabuf.c | 7 #include <linux/dma-resv.h> 24 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_map_pages() 72 ret = dma_resv_wait_timeout(umem_dmabuf->attach->dmabuf->resv, in ib_umem_dmabuf_map_pages() 85 dma_resv_assert_held(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_unmap_pages() 200 dma_resv_lock(umem_dmabuf->attach->dmabuf->resv, NULL); in ib_umem_dmabuf_get_pinned() 209 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_get_pinned() 216 dma_resv_unlock(umem_dmabuf->attach->dmabuf->resv); in ib_umem_dmabuf_get_pinned() 226 dma_resv_lock(dmabuf->resv, NULL); in ib_umem_dmabuf_release() 230 dma_resv_unlock(dmabuf->resv); in ib_umem_dmabuf_release()
|
/kernel/linux/linux-6.6/drivers/gpu/drm/radeon/ |
H A D | radeon_prime.c | 49 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()
|
/kernel/linux/linux-5.10/net/sunrpc/ |
H A D | svc.c | 1184 struct kvec *resv = &rqstp->rq_res.head[0]; in svc_generic_dispatch() local 1211 !procp->pc_encode(rqstp, resv->iov_base + resv->iov_len)) { in svc_generic_dispatch() 1276 svc_process_common(struct svc_rqst *rqstp, struct kvec *argv, struct kvec *resv) in svc_process_common() argument 1299 svc_putu32(resv, rqstp->rq_xid); in svc_process_common() 1304 svc_putnl(resv, 1); /* REPLY */ in svc_process_common() 1310 reply_statp = resv->iov_base + resv->iov_len; in svc_process_common() 1312 svc_putnl(resv, 0); /* ACCEPT */ in svc_process_common() 1378 statp = resv in svc_process_common() 1500 struct kvec *resv = &rqstp->rq_res.head[0]; svc_process() local 1547 struct kvec *resv = &rqstp->rq_res.head[0]; bc_svc_process() local [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_wait.c | 36 i915_gem_object_boost(struct dma_resv *resv, unsigned int flags) in i915_gem_object_boost() argument 45 * dma-resv contains a sequence such as 1:1, 1:2 instead of a reduced in i915_gem_object_boost() 57 dma_resv_iter_begin(&cursor, resv, in i915_gem_object_boost() 67 i915_gem_object_wait_reservation(struct dma_resv *resv, in i915_gem_object_wait_reservation() argument 75 i915_gem_object_boost(resv, flags); in i915_gem_object_wait_reservation() 77 dma_resv_iter_begin(&cursor, resv, in i915_gem_object_wait_reservation() 155 dma_resv_iter_begin(&cursor, obj->base.resv, in i915_gem_object_wait_priority() 177 timeout = i915_gem_object_wait_reservation(obj->base.resv, in i915_gem_object_wait()
|