Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/accel/habanalabs/gaudi/gaudi.c gaudi_pin_memory_before_cs() -> hl_unpin_host_memory()

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->dma_map_sgtable 4096-ptr_max
PARAM_VALUE 0 hdev->asic_prop.max_queues 1-u32max
PARAM_VALUE 0 hdev->asic_specific 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 0 hdev->device_fini_pending 0
PARAM_VALUE 0 hdev->disabled 0
PARAM_VALUE 0 hdev->hl_debugfs.cs_job_list.next 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->reset_info.in_reset 0
PARAM_VALUE 0 hdev->reset_info.needs_reset 0
PARAM_VALUE 1 userptr 4096-ptr_max
PARAM_VALUE 1 userptr->debugfs_list.next 4096-ptr_max
PARAM_VALUE 1 userptr->debugfs_list.prev 4096-ptr_max
PARAM_VALUE 1 userptr->dma_mapped 0
PARAM_VALUE 1 userptr->job_node.next->next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev->next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev->prev 4096-ptr_max
PARAM_VALUE 1 userptr->pages 16,4096-ptr_max
PARAM_VALUE 1 userptr->sgt 4096-ptr_max
PARAM_VALUE 1 userptr->sgt->sgl 0,16,4096-ptr_max
PARAM_VALUE 1 userptr->sgt->sgl->dma_address u64max
PARAM_VALUE 1 userptr->size 1-u32max
BUF_SIZE 1 userptr 104
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 userptr r _kzalloc_noprof
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 userptr->addr
NO_OVERFLOW_SIMPLE 1 userptr->size
HALF_LOCKED2 &hpriv->restore_phase_mutex

drivers/accel/habanalabs/common/memory.c dma_map_host_va() -> hl_unpin_host_memory()

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->dma_map_sgtable 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 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 1 userptr 4096-ptr_max
PARAM_VALUE 1 userptr->debugfs_list.next 4096-ptr_max
PARAM_VALUE 1 userptr->debugfs_list.prev 4096-ptr_max
PARAM_VALUE 1 userptr->dir 0
PARAM_VALUE 1 userptr->dma_mapped 1
PARAM_VALUE 1 userptr->job_node.next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.next->next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev->next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev->prev 4096-ptr_max
PARAM_VALUE 1 userptr->pages 16,4096-ptr_max
PARAM_VALUE 1 userptr->sgt 4096-ptr_max
PARAM_VALUE 1 userptr->sgt->sgl 0,16,4096-ptr_max
PARAM_VALUE 1 userptr->sgt->sgl->dma_address u64max
PARAM_VALUE 1 userptr->size 1-u64max
PARAM_VALUE 1 userptr->vm_type 1
BUF_SIZE 1 userptr 104
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 userptr r _kzalloc_noprof
NOSPEC 1 userptr->addr
NOCHECK_CALL
USER_DATA 1 userptr->addr 0-s32max[c]
USER_DATA 1 userptr->npages 0-u32max[c]
USER_DATA 1 userptr->size 1-u64max[u]
NO_OVERFLOW_SIMPLE 1 userptr->addr
NO_OVERFLOW_SIMPLE 1 userptr->size
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/common/memory.c dma_unmap_host_va() -> hl_unpin_host_memory()

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 userptr 4096-ptr_max
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 userptr $1
NOSPEC 1 userptr->addr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 userptr->addr 0-s32max[c]
USER_DATA 1 userptr->npages 0-u32max[c]
USER_DATA 1 userptr->size 0-u64max[u]
NO_OVERFLOW_SIMPLE 0 hdev->asic_prop.completion_queues_count
NO_OVERFLOW_SIMPLE 0 hdev->asic_prop.max_pending_cs
NO_OVERFLOW_SIMPLE 1 userptr->addr
NO_OVERFLOW_SIMPLE 1 userptr->size
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/common/memory.c hl_userptr_delete_list() -> hl_unpin_host_memory()

Type Parameter Key Value
PARAM_VALUE 0 hdev->asic_funcs->hw_queues_lock 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->hw_queues_unlock 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->late_init 1059418375852154880,5934430288487329792,8517031099994304512
PARAM_VALUE 0 hdev->asic_funcs->rreg 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->send_cpu_message 4096-ptr_max
PARAM_VALUE 0 hdev->asic_funcs->wreg 4096-ptr_max
PARAM_VALUE 0 hdev->hwmon_dev->kobj.parent->sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 hdev->hwmon_dev->kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 hdev->hwmon_dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 1 userptr 4096-ptr_max
BUF_SIZE 0 hdev s32min-(-1),1-s32max
BUF_SIZE 0 hdev s32min-(-1),1-s32max
CAPPED_DATA 1 &userptr->job_node 1
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 hdev->asic_prop.dynamic_fw_load 0
HOST_DATA 0 hdev->asic_prop.faulty_dram_cluster_map 1-u32max[c]
HOST_DATA 0 hdev->asic_prop.fw_app_cpu_boot_dev_sts0 0-u32max
HOST_DATA 0 hdev->asic_prop.fw_app_cpu_boot_dev_sts1 0-u32max
HOST_DATA 0 hdev->asic_prop.fw_bootfit_cpu_boot_dev_sts0 0-u32max
HOST_DATA 0 hdev->asic_prop.fw_bootfit_cpu_boot_dev_sts1 0-u32max
HOST_DATA 0 hdev->asic_prop.fw_preboot_cpu_boot_dev_sts0 0-u32max
HOST_DATA 0 hdev->asic_prop.fw_preboot_cpu_boot_dev_sts1 0-u32max
HOST_DATA 0 hdev->asic_prop.fw_security_enabled 0-1
HOST_DATA 0 hdev->asic_prop.hard_reset_done_by_fw 0-1
HOST_DATA 0 hdev->asic_prop.psoc_pci_pll_div_factor 0-u32max
HOST_DATA 0 hdev->asic_prop.psoc_pci_pll_nf 0-u32max
HOST_DATA 0 hdev->asic_prop.psoc_pci_pll_nr 0-u32max
HOST_DATA 0 hdev->asic_prop.psoc_pci_pll_od 0-u32max
HOST_DATA 0 hdev->asic_prop.psoc_timestamp_frequency 50[c]
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_boot_dev_sts0 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_boot_dev_sts1 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_boot_err0 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_boot_err1 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_boot_status 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_cmd_status_to_host 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_cq_base_addr_high 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_cq_base_addr_low 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_cq_length 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_eq_base_addr_high 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_eq_base_addr_low 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_eq_ci 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_eq_length 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_pf_pq_pi 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_pq_base_addr_high 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_pq_base_addr_low 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_pq_init_status 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.cpu_pq_length 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.eng_arc_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.fuse_ver_offset 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.fw_upd_cmd 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.fw_upd_pending_sts 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.fw_upd_sts 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_dma_core_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_dma_qm_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_host_halt_irq 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_host_ints_irq 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_host_pi_upd_irq 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_mme_qm_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_nic_qm_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_rot_qm_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.gic_tpc_qm_irq_ctrl 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.hw_state 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.kmd_msg_to_cpu 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.preboot_ver_offset 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.reserved0 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.reserved1 0-u32max
HOST_DATA 0 hdev->fw_loader.dynamic_loader.comm_desc.cpu_dyn_regs.uboot_ver_offset 0-u32max
HOST_DATA 0 hdev->pdev->acs_capabilities 0-u16max
HOST_DATA 0 hdev->pdev->class 0-16777215
HOST_DATA 0 hdev->pdev->devcap 0-u32max
HOST_DATA 0 hdev->pdev->devfn 1-503[c]
HOST_DATA 0 hdev->pdev->device 0-u16max
HOST_DATA 0 hdev->pdev->eetlp_prefix_max 0-7[c]
HOST_DATA 0 hdev->pdev->fm_enabled 0-1[c]
HOST_DATA 0 hdev->pdev->hdr_type 0-255[c]
HOST_DATA 0 hdev->pdev->ide_cfg 0-1[c]
HOST_DATA 0 hdev->pdev->ide_tee_limit 0-1[c]
HOST_DATA 0 hdev->pdev->irq 0-255
HOST_DATA 0 hdev->pdev->is_cxl 0-1
HOST_DATA 0 hdev->pdev->multifunction 0-1[c]
HOST_DATA 0 hdev->pdev->nr_ide_mem 0-255[c]
HOST_DATA 0 hdev->pdev->pcie_mpss 0-7[c]
HOST_DATA 0 hdev->pdev->pin 0
HOST_DATA 0 hdev->pdev->pme_support 0-31[c]
HOST_DATA 0 hdev->pdev->ptm_granularity 0-255[c]
HOST_DATA 0 hdev->pdev->revision 0-255
HOST_DATA 0 hdev->pdev->subsystem_device 0-u16max
HOST_DATA 0 hdev->pdev->subsystem_vendor 0-u16max
HOST_DATA 0 hdev->pdev->supported_speeds 0,2-254[c]
HOST_DATA 0 hdev->pdev->transparent 0[c]
HOST_DATA 0 hdev->pdev->vendor 0-u16max
NO_OVERFLOW_SIMPLE 0 hdev->asic_prop.max_queues
UNITS 0 hdev unit_byte

drivers/accel/habanalabs/goya/goya.c goya_pin_memory_before_cs() -> hl_unpin_host_memory()

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->dma_map_sgtable 4096-ptr_max
PARAM_VALUE 0 hdev->asic_prop.max_queues 1-u32max
PARAM_VALUE 0 hdev->asic_specific 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 0 hdev->device_fini_pending 0
PARAM_VALUE 0 hdev->disabled 0
PARAM_VALUE 0 hdev->hl_debugfs.cs_job_list.next 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->reset_info.in_reset 0
PARAM_VALUE 0 hdev->reset_info.needs_reset 0
PARAM_VALUE 1 userptr 4096-ptr_max
PARAM_VALUE 1 userptr->debugfs_list.next 4096-ptr_max
PARAM_VALUE 1 userptr->debugfs_list.prev 4096-ptr_max
PARAM_VALUE 1 userptr->dma_mapped 0
PARAM_VALUE 1 userptr->job_node.next->next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev->next 4096-ptr_max
PARAM_VALUE 1 userptr->job_node.prev->prev 4096-ptr_max
PARAM_VALUE 1 userptr->pages 16,4096-ptr_max
PARAM_VALUE 1 userptr->sgt 4096-ptr_max
PARAM_VALUE 1 userptr->sgt->sgl 0,16,4096-ptr_max
PARAM_VALUE 1 userptr->sgt->sgl->dma_address u64max
PARAM_VALUE 1 userptr->size 1-u32max
BUF_SIZE 1 userptr 104
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 userptr r _kzalloc_noprof
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 userptr->addr
NO_OVERFLOW_SIMPLE 1 userptr->size
HALF_LOCKED2 &hpriv->restore_phase_mutex