Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/iommu/exynos-iommu.c exynos_sysmmu_irq() -> sysmmu_unblock()

Type Parameter Key Value
PARAM_VALUE 0 data 4096-ptr_max
DATA_SOURCE 0 data $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 data->domain->domain.handler_token->base.arg->crashstate->fault_info.flags s32min-s32max
HOST_DATA 0 data->domain->domain.handler_token->base.arg->crashstate->fault_info.iova s64min-s64max
HOST_DATA 0 data->domain->domain.handler_token->base.arg->crashstate->rbbm_status 0-4294967295
LOCK2 0 &data->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct sysmmu_drvdata)->lock

drivers/iommu/exynos-iommu.c sysmmu_block() -> sysmmu_unblock()

Type Parameter Key Value
PARAM_VALUE 0 data 4096-ptr_max
DATA_SOURCE 0 data $0
PREEMPT_ADD
NOCHECK_CALL
LOCK2 &domain->lock
LOCK2 flags
LOCK2 0 &data->lock
HALF_LOCKED2 &domain->pgtablelock
TYPE_LOCK (struct exynos_iommu_domain)->lock
TYPE_LOCK (struct sysmmu_drvdata)->lock

drivers/iommu/exynos-iommu.c sysmmu_tlb_invalidate_entry() -> sysmmu_unblock()

Type Parameter Key Value
PARAM_VALUE 0 data 4096-ptr_max
DATA_SOURCE 0 data $0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &domain->lock
LOCK2 flags
LOCK2 flags
LOCK2 0 &data->lock
TYPE_LOCK (struct exynos_iommu_domain)->lock
TYPE_LOCK (struct sysmmu_drvdata)->lock

drivers/iommu/exynos-iommu.c sysmmu_tlb_invalidate_flpdcache() -> sysmmu_unblock()

Type Parameter Key Value
PARAM_VALUE 0 data 4096-ptr_max
DATA_SOURCE 0 data $0
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &domain->lock
LOCK2 &domain->pgtablelock
LOCK2 flags
LOCK2 flags
LOCK2 0 &data->lock
TYPE_LOCK (struct exynos_iommu_domain)->lock
TYPE_LOCK (struct exynos_iommu_domain)->pgtablelock
TYPE_LOCK (struct sysmmu_drvdata)->lock