Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/accel/habanalabs/gaudi2/gaudi2.c gaudi2_debugfs_read_dma() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->hdev 4096-ptr_max
PARAM_VALUE 0 ctx->refcount.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 1 virt_addr 1-18446744073709551614
PARAM_VALUE 2 size 2097152
CAPPED_DATA 0 ctx->hdev->asic_prop.dmmu.start_addr 1
CAPPED_DATA 1 virt_addr 1
CAPPED_DATA 1 virt_addr 1
DATA_SOURCE 0 ctx r hl_get_compute_ctx
DATA_SOURCE 1 virt_addr r hl_reserve_va_block
NOCHECK_CALL
LOCK2 &hdev->mmu_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/gaudi2/gaudi2.c gaudi2_debugfs_read_dma() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->hdev 4096-ptr_max
PARAM_VALUE 0 ctx->refcount.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 1 virt_addr 1-18446744073709551614
PARAM_VALUE 2 size 2097152
CAPPED_DATA 0 ctx->hdev->asic_prop.dmmu.start_addr 1
CAPPED_DATA 1 virt_addr 1
CAPPED_DATA 1 virt_addr 1
DATA_SOURCE 0 ctx r hl_get_compute_ctx
DATA_SOURCE 1 virt_addr r hl_reserve_va_block
LOCK2 &hdev->mmu_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/gaudi2/gaudi2.c gaudi2_internal_cb_pool_fini() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->asid 1-u32max
PARAM_VALUE 0 ctx->hdev->asic_funcs 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs->rreg 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs->wreg 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_list_lock.magic 0,4096-ptr_max
PARAM_VALUE 2 size 2097152
BUF_SIZE 0 ctx->cs_pending (-1)-s32max
CAPPED_DATA 0 ctx->asid 1
CAPPED_DATA 0 ctx->cs_pending 1
DATA_SOURCE 0 ctx $1
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hdev->mmu_lock
HALF_LOCKED2 &hdev->fpriv_list_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/gaudi2/gaudi2.c gaudi2_internal_cb_pool_init() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->asid 1-64
PARAM_VALUE 0 ctx->cs_pending 16,4096-ptr_max
PARAM_VALUE 0 ctx->cs_sequence 1
PARAM_VALUE 0 ctx->dram_phys_mem.counter 0
PARAM_VALUE 0 ctx->handle 0-s32max
PARAM_VALUE 0 ctx->hdev 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs->rreg 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs->wreg 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->compute_ctx_in_release 0
PARAM_VALUE 0 ctx->hdev->device_fini_pending 0
PARAM_VALUE 0 ctx->hdev->disabled 0
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.wait_lock.owner (-1)
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ctx->hdev->is_compute_ctx_active 0
PARAM_VALUE 0 ctx->hdev->is_in_dram_scrub 0
PARAM_VALUE 0 ctx->hdev->reset_info.in_reset 0
PARAM_VALUE 0 ctx->hdev->reset_info.needs_reset 0
PARAM_VALUE 0 ctx->hw_block_list_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->hw_block_list_lock.first_waiter 0
PARAM_VALUE 0 ctx->hw_block_list_lock.magic 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_list_lock.owner.counter 0
PARAM_VALUE 0 ctx->hw_block_mem_list.next 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.next->next 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.prev 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.next->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.nodes_pool 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.outcome_map 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.next->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctx->refcount.refcount.refs.counter 1
PARAM_VALUE 0 ctx->thread_ctx_switch_token.counter 1
PARAM_VALUE 0 ctx->thread_ctx_switch_wait_token 0
PARAM_VALUE 1 virt_addr 1-18446744073709551614
PARAM_VALUE 2 size 2097152
BUF_SIZE 0 ctx->cs_pending 0-s32max
CAPPED_DATA 0 ctx->asid 1
CAPPED_DATA 0 ctx->hdev->asic_prop.dmmu.start_addr 1
CAPPED_DATA 1 virt_addr 1
CAPPED_DATA 1 virt_addr 1
DATA_SOURCE 0 ctx $1
DATA_SOURCE 1 virt_addr r hl_reserve_va_block
CAPABLE 0 21
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hdev->fpriv_list_lock
LOCK2 &hdev->mmu_lock
TYPE_LOCK (struct hl_device)->fpriv_list_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/common/command_buffer.c cb_map_mem() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->asid 1-u32max
PARAM_VALUE 0 ctx->cb_va_pool 4096-ptr_max
PARAM_VALUE 0 ctx->hdev 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_funcs->mmu_invalidate_cache 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->asic_specific->mmu_cache_inv_pi 0-255
PARAM_VALUE 0 ctx->hdev->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->hdev->mmu_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->hdev->mmu_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctx->hdev->mmu_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->hdev->mmu_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->hdev->mmu_lock.wait_lock.owner (-1)
PARAM_VALUE 0 ctx->hdev->mmu_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ctx->hdev->supports_cb_mapping 1-255
PARAM_VALUE 1 virt_addr 1-18446744073709551614
CAPPED_DATA 0 ctx->hdev->asic_prop.dmmu.start_addr 1
CAPPED_DATA 1 virt_addr 1
CAPPED_DATA 1 virt_addr 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 ctx $0
DATA_SOURCE 1 virt_addr r gen_pool_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hdev->mmu_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/common/command_buffer.c cb_unmap_mem() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->hdev->mmu_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->hdev->mmu_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ctx->hdev->mmu_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->hdev->mmu_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->hdev->mmu_lock.wait_lock.owner (-1)
PARAM_VALUE 0 ctx->hdev->mmu_lock.wait_lock.owner_cpu u32max
DATA_SOURCE 0 ctx $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hdev->mmu_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/gaudi/gaudi.c gaudi_internal_cb_pool_fini() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->asid 1-u32max
PARAM_VALUE 0 ctx->hdev->pdev->dev.cma_area->available_count 0-s64max
PARAM_VALUE 0 ctx->hw_block_list_lock.magic 0,4096-ptr_max
PARAM_VALUE 2 size 2097152
BUF_SIZE 0 ctx->cs_pending (-1)-s32max
CAPPED_DATA 0 ctx->asid 1
CAPPED_DATA 0 ctx->cs_pending 1
DATA_SOURCE 0 ctx $1
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hdev->mmu_lock
HALF_LOCKED2 &hdev->fpriv_list_lock
TYPE_LOCK (struct hl_device)->mmu_lock

drivers/accel/habanalabs/gaudi/gaudi.c gaudi_internal_cb_pool_init() -> hl_mmu_unmap_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->asid 1-64
PARAM_VALUE 0 ctx->cs_pending 16,4096-ptr_max
PARAM_VALUE 0 ctx->cs_sequence 1
PARAM_VALUE 0 ctx->dram_phys_mem.counter 0
PARAM_VALUE 0 ctx->handle 0-s32max
PARAM_VALUE 0 ctx->hdev 4096-ptr_max
PARAM_VALUE 0 ctx->hdev->compute_ctx_in_release 0
PARAM_VALUE 0 ctx->hdev->device_fini_pending 0
PARAM_VALUE 0 ctx->hdev->disabled 0
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.wait_lock.owner (-1)
PARAM_VALUE 0 ctx->hdev->fpriv_list_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 ctx->hdev->is_compute_ctx_active 0
PARAM_VALUE 0 ctx->hdev->is_in_dram_scrub 0
PARAM_VALUE 0 ctx->hdev->reset_info.in_reset 0
PARAM_VALUE 0 ctx->hdev->reset_info.needs_reset 0
PARAM_VALUE 0 ctx->hw_block_list_lock.dep_map->name 0-255
PARAM_VALUE 0 ctx->hw_block_list_lock.first_waiter 0
PARAM_VALUE 0 ctx->hw_block_list_lock.magic 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_list_lock.owner.counter 0
PARAM_VALUE 0 ctx->hw_block_mem_list.next 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.next->next 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.prev 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->hw_block_mem_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.next->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.free_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.nodes_pool 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.outcome_map 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.next->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.prev 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.prev->next 4096-ptr_max
PARAM_VALUE 0 ctx->outcome_store.used_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 ctx->refcount.refcount.refs.counter 1
PARAM_VALUE 0 ctx->thread_ctx_switch_token.counter 1
PARAM_VALUE 0 ctx->thread_ctx_switch_wait_token 0
PARAM_VALUE 1 virt_addr 1-18446744073709551614
PARAM_VALUE 2 size 2097152
BUF_SIZE 0 ctx->cs_pending 0-s32max
CAPPED_DATA 0 ctx->asid 1
CAPPED_DATA 0 ctx->hdev->asic_prop.dmmu.start_addr 1
CAPPED_DATA 1 virt_addr 1
CAPPED_DATA 1 virt_addr 1
DATA_SOURCE 0 ctx $1
DATA_SOURCE 1 virt_addr r hl_reserve_va_block
CAPABLE 0 21
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hdev->fpriv_list_lock
LOCK2 &hdev->mmu_lock
TYPE_LOCK (struct hl_device)->fpriv_list_lock
TYPE_LOCK (struct hl_device)->mmu_lock