Lines Matching refs:ucmd

37 int iommufd_ioas_alloc_ioctl(struct iommufd_ucmd *ucmd)  in iommufd_ioas_alloc_ioctl()  argument
39 struct iommu_ioas_alloc *cmd = ucmd->cmd; in iommufd_ioas_alloc_ioctl()
46 ioas = iommufd_ioas_alloc(ucmd->ictx); in iommufd_ioas_alloc_ioctl()
51 rc = iommufd_ucmd_respond(ucmd, sizeof(*cmd)); in iommufd_ioas_alloc_ioctl()
54 iommufd_object_finalize(ucmd->ictx, &ioas->obj); in iommufd_ioas_alloc_ioctl()
58 iommufd_object_abort_and_destroy(ucmd->ictx, &ioas->obj); in iommufd_ioas_alloc_ioctl()
62 int iommufd_ioas_iova_ranges(struct iommufd_ucmd *ucmd) in iommufd_ioas_iova_ranges() argument
65 struct iommu_ioas_iova_ranges *cmd = ucmd->cmd; in iommufd_ioas_iova_ranges()
74 ioas = iommufd_get_ioas(ucmd->ictx, cmd->ioas_id); in iommufd_ioas_iova_ranges()
101 rc = iommufd_ucmd_respond(ucmd, sizeof(*cmd)); in iommufd_ioas_iova_ranges()
108 iommufd_put_object(ucmd->ictx, &ioas->obj); in iommufd_ioas_iova_ranges()
142 int iommufd_ioas_allow_iovas(struct iommufd_ucmd *ucmd) in iommufd_ioas_allow_iovas() argument
144 struct iommu_ioas_allow_iovas *cmd = ucmd->cmd; in iommufd_ioas_allow_iovas()
154 ioas = iommufd_get_ioas(ucmd->ictx, cmd->ioas_id); in iommufd_ioas_allow_iovas()
178 iommufd_put_object(ucmd->ictx, &ioas->obj); in iommufd_ioas_allow_iovas()
200 int iommufd_ioas_map(struct iommufd_ucmd *ucmd) in iommufd_ioas_map() argument
202 struct iommu_ioas_map *cmd = ucmd->cmd; in iommufd_ioas_map()
220 ioas = iommufd_get_ioas(ucmd->ictx, cmd->ioas_id); in iommufd_ioas_map()
226 rc = iopt_map_user_pages(ucmd->ictx, &ioas->iopt, &iova, in iommufd_ioas_map()
233 rc = iommufd_ucmd_respond(ucmd, sizeof(*cmd)); in iommufd_ioas_map()
235 iommufd_put_object(ucmd->ictx, &ioas->obj); in iommufd_ioas_map()
239 int iommufd_ioas_copy(struct iommufd_ucmd *ucmd) in iommufd_ioas_copy() argument
241 struct iommu_ioas_copy *cmd = ucmd->cmd; in iommufd_ioas_copy()
249 iommufd_test_syz_conv_iova_id(ucmd, cmd->src_ioas_id, &cmd->src_iova, in iommufd_ioas_copy()
264 src_ioas = iommufd_get_ioas(ucmd->ictx, cmd->src_ioas_id); in iommufd_ioas_copy()
269 iommufd_put_object(ucmd->ictx, &src_ioas->obj); in iommufd_ioas_copy()
273 dst_ioas = iommufd_get_ioas(ucmd->ictx, cmd->dst_ioas_id); in iommufd_ioas_copy()
288 rc = iommufd_ucmd_respond(ucmd, sizeof(*cmd)); in iommufd_ioas_copy()
290 iommufd_put_object(ucmd->ictx, &dst_ioas->obj); in iommufd_ioas_copy()
296 int iommufd_ioas_unmap(struct iommufd_ucmd *ucmd) in iommufd_ioas_unmap() argument
298 struct iommu_ioas_unmap *cmd = ucmd->cmd; in iommufd_ioas_unmap()
303 ioas = iommufd_get_ioas(ucmd->ictx, cmd->ioas_id); in iommufd_ioas_unmap()
323 rc = iommufd_ucmd_respond(ucmd, sizeof(*cmd)); in iommufd_ioas_unmap()
326 iommufd_put_object(ucmd->ictx, &ioas->obj); in iommufd_ioas_unmap()
383 int iommufd_ioas_option(struct iommufd_ucmd *ucmd) in iommufd_ioas_option() argument
385 struct iommu_option *cmd = ucmd->cmd; in iommufd_ioas_option()
392 ioas = iommufd_get_ioas(ucmd->ictx, cmd->object_id); in iommufd_ioas_option()
404 iommufd_put_object(ucmd->ictx, &ioas->obj); in iommufd_ioas_option()