Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/iommu/intel/iommu.c context_setup_pass_through() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 1
DATA_SOURCE 1 bus $1
DATA_SOURCE 2 devfn $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 bus 0-255[c]
HOST_DATA 2 devfn 0-255[c]
UNITS 1 bus unit_byte
LOCK2 0 &iommu->lock
TYPE_LOCK (struct intel_iommu)->lock

drivers/iommu/intel/iommu.c dmar_fault_dump_ptes() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->register_lock.dep_map->name 0-255
PARAM_VALUE 0 iommu->register_lock.owner (-1)
PARAM_VALUE 0 iommu->register_lock.owner_cpu u32max
PARAM_VALUE 0 iommu->root_entry 4096-ptr_max
PARAM_VALUE 3 alloc 0
DATA_SOURCE 0 iommu $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 bus 0-255
HOST_DATA 2 devfn 0-255
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags

drivers/iommu/intel/iommu.c domain_context_clear_one() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 0
DATA_SOURCE 1 bus $1
DATA_SOURCE 2 devfn $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 bus 0-255[c]
HOST_DATA 2 devfn 0-255[c]
UNITS 1 bus unit_byte
LOCK2 0 &iommu->lock
TYPE_LOCK (struct intel_iommu)->lock

drivers/iommu/intel/iommu.c domain_context_mapping_one() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 1
DATA_SOURCE 0 iommu $1
DATA_SOURCE 1 bus $2
DATA_SOURCE 2 devfn $3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 bus 0-255[c]
HOST_DATA 2 devfn 0-255[c]
UNITS 1 bus unit_byte
LOCK2 0 &iommu->lock
HALF_LOCKED2 &group->mutex
TYPE_LOCK (struct intel_iommu)->lock

drivers/iommu/intel/iommu.c free_context_table() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->copied_tables 0
PARAM_VALUE 0 iommu->root_entry 1-u64max
PARAM_VALUE 2 devfn 0
PARAM_VALUE 3 alloc 0
DATA_SOURCE 0 iommu $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &dmar_global_lock

drivers/iommu/intel/iommu.c free_context_table() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->copied_tables 0
PARAM_VALUE 0 iommu->root_entry 1-u64max
PARAM_VALUE 2 devfn 128
PARAM_VALUE 3 alloc 0
DATA_SOURCE 0 iommu $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &dmar_global_lock

drivers/iommu/intel/debugfs.c ctx_tbl_walk() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 0
CAPPED_DATA 0 iommu->root_entry 1
DATA_SOURCE 0 iommu $1
DATA_SOURCE 1 bus $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
LOCK2 rcu_read
LOCK2 0 &iommu->lock
TYPE_LOCK (struct intel_iommu)->lock
TYPE_LOCK (struct seq_file)->lock

drivers/iommu/intel/debugfs.c domain_translation_struct_show() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 0
CAPPED_DATA 0 iommu->segment 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 bus unit_byte
LOCK2 &m->lock
LOCK2 rcu_read
LOCK2 0 &iommu->lock
TYPE_LOCK (struct intel_iommu)->lock
TYPE_LOCK (struct seq_file)->lock

drivers/iommu/intel/pasid.c device_pasid_table_setup() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 1
DATA_SOURCE 1 bus $1
DATA_SOURCE 2 devfn $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 bus 0-255[c]
HOST_DATA 2 devfn 0-255[c]
LOCK2 0 &iommu->lock
TYPE_LOCK (struct intel_iommu)->lock

drivers/iommu/intel/pasid.c device_pasid_table_teardown() -> iommu_context_addr()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 alloc 0
DATA_SOURCE 1 bus $1
DATA_SOURCE 2 devfn $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 bus 0-255[c]
HOST_DATA 2 devfn 0-255[c]
LOCK2 0 &iommu->lock
HALF_LOCKED2 &group->mutex
TYPE_LOCK (struct intel_iommu)->lock