[Intel-gfx] [PATCH v14 22/26] vfio: Add VFIO_DEVICE_BIND_IOMMUFD
Liu, Yi L
yi.l.liu at intel.com
Sat Jul 15 04:16:52 UTC 2023
> From: Jason Gunthorpe <jgg at nvidia.com>
> Sent: Friday, July 14, 2023 10:42 PM
>
> On Mon, Jul 10, 2023 at 07:59:24PM -0700, Yi Liu wrote:
>
> > +static inline long vfio_df_ioctl_bind_iommufd(struct vfio_device_file *df,
> > + struct vfio_device_bind_iommufd __user
> *arg)
> > +{
> > + return -EOPNOTSUPP;
> > +}
>
> This should be -ENOTTY
Okay. Since there are quite a few stub functions in the drivers/vfio/vfio.h.
Let me check the rule. All the stub functions should return -ENOTTY in
the !IS_ENABLED(CONFIG_XXX) case, if the function returns int., is it?
> > @@ -1149,6 +1151,9 @@ static long vfio_device_fops_unl_ioctl(struct file *filep,
> > void __user *uptr = (void __user *)arg;
> > int ret;
> >
> > + if (cmd == VFIO_DEVICE_BIND_IOMMUFD)
> > + return vfio_df_ioctl_bind_iommufd(df, uptr);
> > +
>
> And this function has a mistake too:
>
> default:
> if (unlikely(!device->ops->ioctl))
> ret = -EINVAL;
>
> Should also be -ENOTTY
>
> All the implementations of the ops already return -ENOTTY
>
> However, I think this is all slightly not quite right, the proper
> return code is supposed to be ENOIOCTLCMD which vfs_ioctl() then
> translates into ENOTTY for some reason..
>
> It looks Ok otherwise
This is not in the scope of this series. May need a separate fix patch. @Alex?
Regards,
Yi Liu
More information about the Intel-gfx
mailing list