On Tue, Feb 01 2022, Jason Gunthorpe <jgg@xxxxxxxxxx> wrote: > On Tue, Feb 01, 2022 at 01:06:51PM +0100, Cornelia Huck wrote: >> On Sun, Jan 30 2022, Yishai Hadas <yishaih@xxxxxxxxxx> wrote: >> >> > @@ -1582,6 +1760,10 @@ static int vfio_ioctl_device_feature(struct vfio_device *device, >> > return -EINVAL; >> > >> > switch (feature.flags & VFIO_DEVICE_FEATURE_MASK) { >> > + case VFIO_DEVICE_FEATURE_MIGRATION: >> > + return vfio_ioctl_device_feature_migration( >> > + device, feature.flags, arg->data, >> > + feature.argsz - minsz); >> > default: >> > if (unlikely(!device->ops->device_feature)) >> > return -EINVAL; >> > @@ -1597,6 +1779,8 @@ static long vfio_device_fops_unl_ioctl(struct file *filep, >> > struct vfio_device *device = filep->private_data; >> > >> > switch (cmd) { >> > + case VFIO_DEVICE_MIG_SET_STATE: >> > + return vfio_ioctl_mig_set_state(device, (void __user *)arg); >> > case VFIO_DEVICE_FEATURE: >> > return vfio_ioctl_device_feature(device, (void __user *)arg); >> > default: >> >> Not really a critique of this patch, but have we considered how mediated >> devices will implement migration? > > Yes > >> I.e. what parts of the ops will need to be looped through the mdev >> ops? > > I've deleted mdev ops in every driver except the intel vgpu, once > Christoph's patch there is merged mdev ops will be almost gone > completely. Ok, if there's nothing left to do, that's fine. (I'm assuming that the Intel vgpu patch is on its way in? I usually don't keep track of things I'm not directly involved with.)