Defined in 1 files as a function:

Referenced in 11 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/amdgpu_dev_coredump.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
LOCK2 &pool->lock
HALF_LOCKED2 abo->tbo.base.resv

drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 0,4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mgr->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bo->base.resv

drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vm->eviction_lock
LOCK2 global &drm_unplug_srcu
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &prange->lock
HALF_LOCKED2 &prange->migrate_mutex
HALF_LOCKED2 &svms->lock
TYPE_LOCK (struct amdgpu_vm)->eviction_lock

drivers/gpu/drm/xe/xe_migrate.c xe_res_first() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_migrate.c xe_res_next() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/buddy.c __alloc_contig_try_harder() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block r rbtree_get_free_block
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bman->lock
HALF_LOCKED2 &manager->lock
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c __alloc_range() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c __alloc_range_bias() -> gpu_buddy_block_offset()

Type Parameter Key Value
BUF_SIZE 0 block 0
BIT_INFO 0 block 0x0,0x0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bman->lock
HALF_LOCKED2 &manager->lock
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c __force_merge() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block r rbtree_get_free_block
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c get_maxblock() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block r rbtree_last_free_block
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bman->lock
HALF_LOCKED2 &manager->lock
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c get_maxblock() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bman->lock
HALF_LOCKED2 &manager->lock
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c gpu_buddy_allocated_addr_to_block() -> gpu_buddy_block_offset()

Type Parameter Key Value
BUF_SIZE 0 block 0
BIT_INFO 0 block 0x0,0x0

drivers/gpu/buddy.c gpu_buddy_block_offset_alignment() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 block->header 0,2048-u64max[c]
UNITS 0 block unit_byte

drivers/gpu/buddy.c gpu_buddy_block_print() -> gpu_buddy_block_offset()

Type Parameter Key Value
DATA_SOURCE 0 block $1

drivers/gpu/buddy.c gpu_buddy_block_trim() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c gpu_buddy_fini() -> gpu_buddy_block_offset()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bman->lock
HALF_LOCKED2 &mgr->lock
HALF_LOCKED2 &mock_man->lock

drivers/gpu/buddy.c gpu_buddy_reset_clear() -> gpu_buddy_block_offset()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mgr->lock

drivers/gpu/buddy.c rbtree_insert() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $1
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 block->header 0,2048-u64max[c]

drivers/gpu/buddy.c rbtree_insert() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block r rbtree_get_free_block
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 block->subtree_max_alignment 4096-u32max[c]

drivers/gpu/buddy.c split_block() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mgr->lock

drivers/gpu/drm/xe/xe_lmtt.c xe_res_first() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_lmtt.c xe_res_next() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_ggtt.c xe_res_first() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ggtt->lock
TYPE_LOCK (struct xe_ggtt)->lock

drivers/gpu/drm/xe/xe_ggtt.c xe_res_next() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ggtt->lock
TYPE_LOCK (struct xe_ggtt)->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &prange->migrate_mutex
LOCK2 &svms->lock
HALF_LOCKED2 &process_info->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct svm_range)->migrate_mutex
TYPE_LOCK (struct svm_range_list)->lock

drivers/gpu/drm/xe/xe_bo.c xe_res_first() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 ttm_bo->base.resv

drivers/gpu/drm/xe/xe_bo.c xe_res_next() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 ttm_bo->base.resv
HALF_LOCKED2 &pool->lock

drivers/gpu/drm/i915/i915_ttm_buddy_manager.c i915_ttm_buddy_man_alloc() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bman->lock
TYPE_LOCK (struct i915_ttm_buddy_manager)->lock

drivers/gpu/drm/i915/i915_ttm_buddy_manager.c i915_ttm_buddy_man_compatible() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev_priv->cmdbuf_mutex
HALF_LOCKED2 &gobj->dev->object_name_lock
HALF_LOCKED2 &overlay->mutex
HALF_LOCKED2 &p->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &rdev->exclusive_lock
HALF_LOCKED2 &rdev->pm.mclk_lock
HALF_LOCKED2 bo->base.resv
HALF_LOCKED2 bo->tbo.base.resv
HALF_LOCKED2 bo->ttm.base.resv
HALF_LOCKED2 gbo->bo.base.resv
HALF_LOCKED2 global &drm_unplug_srcu
HALF_LOCKED2 obj->base.resv
HALF_LOCKED2 qobj->tbo.base.resv
HALF_LOCKED2 vbo->tbo.base.resv

drivers/gpu/drm/i915/i915_ttm_buddy_manager.c i915_ttm_buddy_man_intersects() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/amd/amdgpu/amdgpu_display.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &(plane->dev)->mode_config.panic_lock
HALF_LOCKED2 flags

drivers/gpu/drm/drm_buddy.c drm_buddy_block_print() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bman->lock
HALF_LOCKED2 &m->lock
TYPE_LOCK (struct i915_ttm_buddy_manager)->lock

drivers/gpu/drm/xe/xe_pt.c xe_res_first() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/xe/xe_pt.c xe_res_next() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_is_vram_mgr_blocks_contiguous() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_is_vram_mgr_blocks_contiguous() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_res_first() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bo->lock
HALF_LOCKED2 &dbc->ch_lock
HALF_LOCKED2 &qdev->dev_lock
HALF_LOCKED2 &usr->qddev_lock
HALF_LOCKED2 attach->dmabuf->resv
HALF_LOCKED2 bo->base.base.resv
HALF_LOCKED2 dmabuf->resv
HALF_LOCKED2 resv

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_res_next() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bo->lock
HALF_LOCKED2 &dbc->ch_lock
HALF_LOCKED2 &qdev->dev_lock
HALF_LOCKED2 &usr->qddev_lock
HALF_LOCKED2 attach->dmabuf->resv
HALF_LOCKED2 bo->base.base.resv
HALF_LOCKED2 dmabuf->resv
HALF_LOCKED2 resv

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_ttm_vram_mgr_compatible() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev_priv->cmdbuf_mutex
HALF_LOCKED2 &gobj->dev->object_name_lock
HALF_LOCKED2 &overlay->mutex
HALF_LOCKED2 &p->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &rdev->exclusive_lock
HALF_LOCKED2 &rdev->pm.mclk_lock
HALF_LOCKED2 bo->base.resv
HALF_LOCKED2 bo->tbo.base.resv
HALF_LOCKED2 bo->ttm.base.resv
HALF_LOCKED2 gbo->bo.base.resv
HALF_LOCKED2 global &drm_unplug_srcu
HALF_LOCKED2 obj->base.resv
HALF_LOCKED2 qobj->tbo.base.resv
HALF_LOCKED2 vbo->tbo.base.resv

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_ttm_vram_mgr_intersects() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_ttm_vram_mgr_new() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mgr->lock
TYPE_LOCK (struct xe_ttm_vram_mgr)->lock

drivers/gpu/drm/xe/xe_ttm_vram_mgr.c xe_ttm_vram_mgr_new() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c amdgpu_vram_mgr_block_start() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
DATA_SOURCE 0 block $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &con->critical_region_lock
TYPE_LOCK (struct amdgpu_ras)->critical_region_lock

drivers/gpu/drm/i915/intel_memory_region.c igt_object_mappable_total() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1

drivers/gpu/drm/xe/xe_svm.c xe_svm_populate_devmem_pfn() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &driver_migrate_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 global &drm_unplug_srcu

drivers/gpu/drm/i915/i915_scatterlist.c i915_rsgt_from_buddy_resource() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max
CAPPED_DATA 0 &block->link 1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 obj->base.resv

drivers/gpu/tests/gpu_buddy_test.c gpu_test_buddy_addr_to_block() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max

drivers/gpu/tests/gpu_buddy_test.c gpu_test_buddy_alloc_range() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max

drivers/gpu/tests/gpu_buddy_test.c gpu_test_buddy_alloc_range() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max

drivers/gpu/tests/gpu_buddy_test.c gpu_test_buddy_offset_aligned_allocation() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max

drivers/gpu/tests/gpu_buddy_test.c gpu_test_buddy_offset_aligned_allocation() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max

drivers/gpu/tests/gpu_buddy_test.c gpu_test_buddy_subtree_offset_alignment_stress() -> gpu_buddy_block_offset()

Type Parameter Key Value
PARAM_VALUE 0 block 4096-ptr_max