Lines Matching refs:vfio_group
72 struct vfio_group { struct
93 struct vfio_group *group; argument
150 static int vfio_alloc_group_minor(struct vfio_group *group) in vfio_alloc_group_minor()
162 static void vfio_group_get(struct vfio_group *group);
188 static void vfio_group_unlock_and_free(struct vfio_group *group) in vfio_group_unlock_and_free()
202 static struct vfio_group *vfio_create_group(struct iommu_group *iommu_group) in vfio_create_group()
204 struct vfio_group *group, *tmp; in vfio_create_group()
259 return (struct vfio_group *)dev; /* ERR_PTR */ in vfio_create_group()
275 struct vfio_group *group = container_of(kref, struct vfio_group, kref); in vfio_group_release()
294 static void vfio_group_put(struct vfio_group *group) in vfio_group_put()
300 static void vfio_group_get(struct vfio_group *group) in vfio_group_get()
309 static struct vfio_group *vfio_group_try_get(struct vfio_group *group) in vfio_group_try_get()
311 struct vfio_group *target = group; in vfio_group_try_get()
327 struct vfio_group *vfio_group_get_from_iommu(struct iommu_group *iommu_group) in vfio_group_get_from_iommu()
329 struct vfio_group *group; in vfio_group_get_from_iommu()
344 static struct vfio_group *vfio_group_get_from_minor(int minor) in vfio_group_get_from_minor()
346 struct vfio_group *group; in vfio_group_get_from_minor()
364 struct vfio_device *vfio_group_create_device(struct vfio_group *group, in vfio_group_create_device()
396 struct vfio_group *group = device->group; in vfio_device_release()
412 struct vfio_group *group = device->group; in vfio_device_put()
424 static struct vfio_device *vfio_group_get_device(struct vfio_group *group, in vfio_group_get_device()
493 struct vfio_group *group = data; in vfio_dev_viable()
523 static int vfio_group_nb_add_dev(struct vfio_group *group, struct device *dev) in vfio_group_nb_add_dev()
545 static int vfio_group_nb_verify(struct vfio_group *group, struct device *dev) in vfio_group_nb_verify()
557 struct vfio_group *group = container_of(nb, struct vfio_group, nb); in vfio_iommu_group_notifier()
634 struct vfio_group *group; in vfio_add_group_dev()
692 struct vfio_group *group; in vfio_device_get_from_dev()
711 static struct vfio_device *vfio_device_get_from_name(struct vfio_group *group, in vfio_device_get_from_name()
739 static bool vfio_dev_present(struct vfio_group *group, struct device *dev) in vfio_dev_present()
757 struct vfio_group *group = device->group; in vfio_del_group_dev()
883 struct vfio_group *group; in __vfio_container_attach_groups()
1120 static void __vfio_group_unset_container(struct vfio_group *group) in __vfio_group_unset_container()
1154 static int vfio_group_unset_container(struct vfio_group *group) in vfio_group_unset_container()
1174 static void vfio_group_try_dissolve_container(struct vfio_group *group) in vfio_group_try_dissolve_container()
1180 static int vfio_group_set_container(struct vfio_group *group, int container_fd) in vfio_group_set_container()
1226 static bool vfio_group_viable(struct vfio_group *group) in vfio_group_viable()
1234 static int vfio_group_get_device_fd(struct vfio_group *group, char *buf) in vfio_group_get_device_fd()
1292 struct vfio_group *group = filep->private_data; in vfio_group_fops_unl_ioctl()
1367 struct vfio_group *group; in vfio_group_fops_open()
1395 struct vfio_group *group = filep->private_data; in vfio_group_fops_release()
1526 struct vfio_group *vfio_group_get_external_user(struct file *filep) in vfio_group_get_external_user()
1528 struct vfio_group *group = filep->private_data; in vfio_group_get_external_user()
1548 void vfio_group_put_external_user(struct vfio_group *group) in vfio_group_put_external_user()
1555 int vfio_external_user_iommu_id(struct vfio_group *group) in vfio_external_user_iommu_id()
1561 long vfio_external_check_extension(struct vfio_group *group, unsigned long arg) in vfio_external_check_extension()