Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/iommu/iommufd/io_pagetable.c iopt_destroy_table() -> iopt_remove_reserved_iova()

Type Parameter Key Value
PARAM_VALUE 0 iopt 4096-ptr_max
PARAM_VALUE 1 owner 0
DATA_SOURCE 0 iopt $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/iommu/iommufd/device.c iommufd_device_attach_reserved_iova() -> iopt_remove_reserved_iova()

Type Parameter Key Value
PARAM_VALUE 0 iopt 4096-ptr_max
PARAM_VALUE 0 iopt->iova_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 iopt->reserved_itree.rb_root.rb_node 4096-ptr_max
BUF_SIZE 1 owner (-1),1616
NOCHECK_CALL
LOCK2 &igroup->lock
HALF_LOCKED2 &ioas->mutex
HALF_LOCKED2 &vdev->dev_set->lock
TYPE_LOCK (struct iommufd_group)->lock

drivers/iommu/iommufd/device.c iommufd_group_remove_reserved_iova() -> iopt_remove_reserved_iova()

Type Parameter Key Value
PARAM_VALUE 0 iopt 4096-ptr_max
NOCHECK_CALL
LOCK2 &igroup->lock
HALF_LOCKED2 &ioas->mutex
HALF_LOCKED2 &vdev->dev_set->lock
TYPE_LOCK (struct iommufd_group)->lock

drivers/iommu/iommufd/device.c iommufd_hw_pagetable_attach() -> iopt_remove_reserved_iova()

Type Parameter Key Value
PARAM_VALUE 0 iopt 4096-ptr_max
PARAM_VALUE 0 iopt->iova_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 iopt->reserved_itree.rb_root.rb_node 4096-ptr_max
BUF_SIZE 1 owner (-1),1616
NOCHECK_CALL
LOCK2 &igroup->lock
HALF_LOCKED2 &ioas->mutex
HALF_LOCKED2 &vdev->dev_set->lock
TYPE_LOCK (struct iommufd_group)->lock

drivers/iommu/iommufd/device.c iommufd_hw_pagetable_detach() -> iopt_remove_reserved_iova()

Type Parameter Key Value
PARAM_VALUE 0 iopt 4096-ptr_max
BUF_SIZE 1 owner (-1),1616
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &igroup->lock
HALF_LOCKED2 &ioas->mutex
HALF_LOCKED2 &vdev->dev_set->lock
TYPE_LOCK (struct iommufd_group)->lock