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_present_cache_flush() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->copied_tables 0,4096-ptr_max
PARAM_VALUE 0 iommu->ecap 1-u64max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
DATA_SOURCE 0 iommu $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &iommu->lock
TYPE_LOCK (struct intel_iommu)->lock

drivers/iommu/intel/iommu.c init_dmars() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu->flush.flush_context 4787425453190803456,9146843436912906240
PARAM_VALUE 0 iommu->flush.flush_iotlb 2159419087576428544,7596027993176621056
PARAM_VALUE 0 iommu->qi 0,4096-ptr_max
PARAM_VALUE 0 iommu->qi->desc 18379471554275704832,18446612682070032384
PARAM_VALUE 0 iommu->qi->desc_status 4096-ptr_max
PARAM_VALUE 0 iommu->root_entry 18379471554275704832,18446612682070032384
NOCHECK_CALL
LOCK2 global &dmar_global_lock

drivers/iommu/intel/iommu.c init_dmars() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu->flush.flush_context 4787425453190803456,9146843436912906240
PARAM_VALUE 0 iommu->flush.flush_iotlb 2159419087576428544,7596027993176621056
PARAM_VALUE 0 iommu->irq 1-u32max
PARAM_VALUE 0 iommu->qi 0,4096-ptr_max
PARAM_VALUE 0 iommu->qi->desc 18379471554275704832,18446612682070032384
PARAM_VALUE 0 iommu->qi->desc_status 4096-ptr_max
PARAM_VALUE 0 iommu->root_entry 18379471554275704832,18446612682070032384
NOCHECK_CALL
LOCK2 global &dmar_global_lock

drivers/iommu/intel/iommu.c init_iommu_hw() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu->qi 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &acpi_scan_lock
HALF_LOCKED2 global &device_hotplug_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 irq

drivers/iommu/intel/iommu.c intel_iommu_add() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->flush.flush_context 4787425453190803456,9146843436912906240
PARAM_VALUE 0 iommu->flush.flush_iotlb 2159419087576428544,7596027993176621056
PARAM_VALUE 0 iommu->qi 0,4096-ptr_max
PARAM_VALUE 0 iommu->qi->desc 18379471554275704832,18446612682070032384
PARAM_VALUE 0 iommu->qi->desc_status 4096-ptr_max
PARAM_VALUE 0 iommu->qi->free_cnt 256
PARAM_VALUE 0 iommu->qi->free_head 0
PARAM_VALUE 0 iommu->qi->free_tail 0
PARAM_VALUE 0 iommu->qi->q_lock.magic 3735899821
PARAM_VALUE 0 iommu->qi->q_lock.owner (-1)
PARAM_VALUE 0 iommu->qi->q_lock.owner_cpu u32max
PARAM_VALUE 0 iommu->root_entry 18379471554275704832,18446612682070032384
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &dmar_global_lock

drivers/iommu/intel/cache.c cache_tag_flush_range_np() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &domain->cache_lock
LOCK2 flags
TYPE_LOCK (struct dmar_domain)->cache_lock

drivers/iommu/intel/pasid.c pasid_flush_caches() -> iommu_flush_write_buffer()

Type Parameter Key Value
PARAM_VALUE 0 iommu 4096-ptr_max
PARAM_VALUE 0 iommu->ecap 1-u64max
PARAM_VALUE 0 iommu->lock.rlock.dep_map->name 0-255
DATA_SOURCE 0 iommu $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL