Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/accel/habanalabs/common/memory.c free_device_memory() -> free_phys_pg_pack()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->vm.idr_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 phys_pg_pack 4096-ptr_max
PARAM_VALUE 1 phys_pg_pack->mapping_cnt.counter s32min-0
DATA_SOURCE 1 phys_pg_pack r idr_find
NOCHECK_CALL
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/common/memory.c hl_vm_ctx_fini() -> free_phys_pg_pack()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->mmu_invalidate_cache 4096-ptr_max
PARAM_VALUE 0 hdev->asic_specific->mmu_cache_inv_pi 0-255
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.dep_map->name 0-255
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->hl_debugfs.ctx_mem_hash_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->mmu_disable 0
PARAM_VALUE 0 hdev->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->mmu_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->vm.idr_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 phys_pg_pack 4096-ptr_max
CAPPED_DATA 0 &hdev->mmu_lock 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 hdev unit_byte
HALF_LOCKED2 &hdev->fpriv_list_lock

drivers/accel/habanalabs/common/memory.c map_device_va() -> free_phys_pg_pack()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->mmu_invalidate_cache_range 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_list.next 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_list.next->next 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_list.next->prev 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_spinlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->mmu_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->pdev->dev.iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hdev->vm.idr_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 phys_pg_pack 4096-ptr_max
PARAM_VALUE 1 phys_pg_pack->created_from_userptr 1
PARAM_VALUE 1 phys_pg_pack->mapping_cnt.counter 1
CAPPED_DATA 0 hdev->asic_prop.dmmu.start_addr 1
CAPPED_DATA 0 &hdev->mmu_lock 1
CAPPED_DATA 1 phys_pg_pack->npages 1
CAPPED_DATA 1 phys_pg_pack->total_size 1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 phys_pg_pack->npages
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/common/memory.c map_device_va() -> free_phys_pg_pack()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->mmu_invalidate_cache_range 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_list.next 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_list.next->next 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_list.next->prev 4096-ptr_max
PARAM_VALUE 0 hdev->hl_debugfs.userptr_spinlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->mmu_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->pdev->dev.iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hdev->vm.idr_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 phys_pg_pack 4096-ptr_max
PARAM_VALUE 1 phys_pg_pack->created_from_userptr 1
CAPPED_DATA 0 &hdev->mmu_lock 1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 phys_pg_pack->npages
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/common/memory.c unmap_device_va() -> free_phys_pg_pack()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->mmu_invalidate_cache_range 4096-ptr_max
PARAM_VALUE 0 hdev->mmu_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->mmu_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->mmu_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 phys_pg_pack 4096-ptr_max
PARAM_VALUE 1 phys_pg_pack->created_from_userptr 1
CAPPED_DATA 0 &hdev->mmu_lock 1
CAPPED_DATA 1 phys_pg_pack->npages 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 phys_pg_pack->npages
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/common/memory.c unmap_device_va() -> free_phys_pg_pack()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev 0,4096-ptr_max
PARAM_VALUE 0 hdev->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 hdev->dev->class 0,4096-ptr_max
PARAM_VALUE 0 hdev->dev->driver 0,4096-ptr_max
PARAM_VALUE 1 phys_pg_pack 4096-ptr_max
PARAM_VALUE 1 phys_pg_pack->created_from_userptr 1
PARAM_VALUE 1 phys_pg_pack->mapping_cnt.counter 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 phys_pg_pack->npages
UNITS 0 hdev unit_byte