Lines Matching refs:dev_set

106 	struct vfio_device_set *dev_set;  in vfio_assign_device_set()  local
115 dev_set = xa_load(&vfio_device_set_xa, idx); in vfio_assign_device_set()
116 if (dev_set) in vfio_assign_device_set()
128 dev_set = __xa_cmpxchg(&vfio_device_set_xa, idx, NULL, new_dev_set, in vfio_assign_device_set()
130 if (!dev_set) { in vfio_assign_device_set()
131 dev_set = new_dev_set; in vfio_assign_device_set()
136 if (xa_is_err(dev_set)) { in vfio_assign_device_set()
138 return xa_err(dev_set); in vfio_assign_device_set()
142 dev_set->device_count++; in vfio_assign_device_set()
144 mutex_lock(&dev_set->lock); in vfio_assign_device_set()
145 device->dev_set = dev_set; in vfio_assign_device_set()
146 list_add_tail(&device->dev_set_list, &dev_set->device_list); in vfio_assign_device_set()
147 mutex_unlock(&dev_set->lock); in vfio_assign_device_set()
154 struct vfio_device_set *dev_set = device->dev_set; in vfio_release_device_set() local
156 if (!dev_set) in vfio_release_device_set()
159 mutex_lock(&dev_set->lock); in vfio_release_device_set()
161 mutex_unlock(&dev_set->lock); in vfio_release_device_set()
164 if (!--dev_set->device_count) { in vfio_release_device_set()
166 (unsigned long)dev_set->set_id); in vfio_release_device_set()
167 mutex_destroy(&dev_set->lock); in vfio_release_device_set()
168 kfree(dev_set); in vfio_release_device_set()
787 if (!device->dev_set) in __vfio_register_dev()
1356 mutex_lock(&device->dev_set->lock); in vfio_group_get_device_fd()
1363 mutex_unlock(&device->dev_set->lock); in vfio_group_get_device_fd()
1399 mutex_lock(&device->dev_set->lock); in vfio_group_get_device_fd()
1404 mutex_unlock(&device->dev_set->lock); in vfio_group_get_device_fd()
1546 mutex_lock(&device->dev_set->lock); in vfio_device_fops_release()
1549 mutex_unlock(&device->dev_set->lock); in vfio_device_fops_release()