Re: [PATCH v6 2/5] userfaultfd: add /dev/userfaultfd for fine grained access control

From: Greg KH
Date: Thu Aug 18 2022 - 02:26:52 EST


On Wed, Aug 17, 2022 at 02:47:25PM -0700, Axel Rasmussen wrote:
> +static int userfaultfd_dev_open(struct inode *inode, struct file *file)
> +{
> + return 0;

If your open does nothing, no need to list it here at all, right?

> +}
> +
> +static long userfaultfd_dev_ioctl(struct file *file, unsigned int cmd, unsigned long flags)
> +{
> + if (cmd != USERFAULTFD_IOC_NEW)
> + return -EINVAL;
> +
> + return new_userfaultfd(flags);
> +}
> +
> +static const struct file_operations userfaultfd_dev_fops = {
> + .open = userfaultfd_dev_open,
> + .unlocked_ioctl = userfaultfd_dev_ioctl,
> + .compat_ioctl = userfaultfd_dev_ioctl,

Why do you need to set compat_ioctl? Shouldn't it just default to the
existing one?

And why is this a device node at all? Shouldn't the syscall handle all
of this (to be honest, I didn't read anything but the misc code, sorry.)

thanks,

greg k-h