On Thu, Jul 19, 2018 at 07:44:53PM -0700, Todd Poynor wrote:
> >>  /* Type of the ioctl permissions check callback. See below. */
> >>  typedef int (*gasket_ioctl_permissions_cb_t)(
> >> -     struct file *filp, uint cmd, ulong arg);
> >> +     struct file *filp, uint cmd, void __user *arg);
> >>
> >>  /*
> >>   * Device type descriptor.
> >> @@ -549,7 +549,7 @@ struct gasket_driver_desc {
> >>        * return -EINVAL. Should return an error status (either -EINVAL or
> >>        * the error result of the ioctl being handled).
> >>        */
> >> -     long (*ioctl_handler_cb)(struct file *filp, uint cmd, ulong arg);
> >> +     long (*ioctl_handler_cb)(struct file *filp, uint cmd, void __user 
> >> *arg);
> >
> > Why are you not using the typedef above?
> 
> There's a typedef for the permissions check callback, but not for the
> handler callback.  It's a bit confusing, so I tried adding a typedef
> for the handler, but now checkpatch is spanking me for adding new
> typedefs -- maybe I should drop the existing typedef?

No, typedefs for function pointers is just fine, checkpatch should not
be complaining about that.  And even if it is, it's just a guideline,
not a hard rule that you have to abide by everything it says :)

thanks,

greg k-h

Reply via email to