Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/iommu/iommufd/viommu.c iommufd_object_destroy_user() -> iommufd_object_remove()

Type Parameter Key Value
PARAM_VALUE 1 to_destroy 4096-ptr_max
PARAM_VALUE 3 flags 1
DATA_SOURCE 0 ictx $0
DATA_SOURCE 1 to_destroy $1
RX_PATH
TASK_NOT_RUNNING

drivers/iommu/iommufd/device.c iommufd_object_destroy_user() -> iommufd_object_remove()

Type Parameter Key Value
PARAM_VALUE 1 to_destroy 4096-ptr_max
PARAM_VALUE 3 flags 1
BUF_SIZE 0 ictx s32min-(-1),1-s32max
BUF_SIZE 0 ictx s32min-(-1),1-s32max
DATA_SOURCE 0 ictx $0
DATA_SOURCE 1 to_destroy $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &device->dev_set->lock

drivers/iommu/iommufd/device.c iommufd_object_put_and_try_destroy() -> iommufd_object_remove()

Type Parameter Key Value
PARAM_VALUE 1 to_destroy 4096-ptr_max
PARAM_VALUE 1 to_destroy->type 2
PARAM_VALUE 3 flags 0
BUF_SIZE 0 ictx s32min-(-1),1-s32max
BUF_SIZE 0 ictx s32min-(-1),1-s32max
DATA_SOURCE 0 ictx $0
DATA_SOURCE 1 to_destroy $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &vdev->dev_set->lock

drivers/iommu/iommufd/device.c iommufd_object_tombstone_user() -> iommufd_object_remove()

Type Parameter Key Value
PARAM_VALUE 0 ictx 4096-ptr_max
PARAM_VALUE 1 to_destroy 4096-ptr_max
PARAM_VALUE 3 flags 3
DATA_SOURCE 0 ictx $0
DATA_SOURCE 1 to_destroy $1
RX_PATH
TASK_NOT_RUNNING

drivers/iommu/iommufd/main.c iommufd_destroy() -> iommufd_object_remove()

Type Parameter Key Value
PARAM_VALUE 1 to_destroy 0
PARAM_VALUE 3 flags 0
USER_DATA 2 id 0-u32max[u]