RE: [PATCH v5 4/8] char: rpmb: provide a user space interface

From: Winkler, Tomas
Date: Sun Aug 07 2016 - 05:44:39 EST


>
> On Mon 2016-07-18 23:27:49, Tomas Winkler wrote:
> > The user space API is achieved via two synchronous IOCTL.
>
> IOCTLs?

Will fix

> > Simplified one, RPMB_IOC_REQ_CMD, were read result cycles is
> performed
> > by the framework on behalf the user and second, RPMB_IOC_SEQ_CMD
> where
> > the whole RPMB sequence including RESULT_READ is supplied by the caller.
> > The latter is intended for easier adjusting of the applications
> > that use MMC_IOC_MULTI_CMD ioctl.
>
> Why " "?
Not sure I there is enough clue in your question.
>
> >
> > Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
>
> > +
> > +static long rpmb_ioctl(struct file *fp, unsigned int cmd, unsigned
> > +long arg) {
> > + return __rpmb_ioctl(fp, cmd, (void __user *)arg); }
> > +
> > +#ifdef CONFIG_COMPAT
> > +static long rpmb_compat_ioctl(struct file *fp, unsigned int cmd,
> > + unsigned long arg)
> > +{
> > + return __rpmb_ioctl(fp, cmd, compat_ptr(arg));
> > +}
> > +#endif /* CONFIG_COMPAT */
>
> Description of the ioctl is missing,
Will add.

and it should certainly be designed in a way
> that it does not need compat support.

The compat_ioctl handler just casts the compat_ptr, I believe this should be done unless the ioctl is globaly registered in fs/compat_ioctl.c, but I might be wrong.
Tomas