Re: [PATCH v3 01/18] nitro_enclaves: Add ioctl interface definition

From: Stefan Hajnoczi
Date: Fri Jun 05 2020 - 04:15:09 EST


On Mon, Jun 01, 2020 at 10:20:18AM +0300, Paraschiv, Andra-Irina wrote:
>
>
> On 01/06/2020 06:02, Benjamin Herrenschmidt wrote:
> > On Wed, 2020-05-27 at 09:49 +0100, Stefan Hajnoczi wrote:
> > > What about feature bits or a API version number field? If you add
> > > features to the NE driver, how will userspace detect them?
> > >
> > > Even if you intend to always compile userspace against the exact kernel
> > > headers that the program will run on, it can still be useful to have an
> > > API version for informational purposes and to easily prevent user
> > > errors (running a new userspace binary on an old kernel where the API is
> > > different).
> > >
> > > Finally, reserved struct fields may come in handy in the future. That
> > > way userspace and the kernel don't need to explicitly handle multiple
> > > struct sizes.
> > Beware, Greg might disagree :)
> >
> > That said, yes, at least a way to query the API version would be
> > useful.
>
> I see there are several thoughts with regard to extensions possibilities. :)
>
> I added an ioctl for getting the API version, we have now a way to query
> that info. Also, I updated the sample in this patch series to check for the
> API version.

Great. The ideas are orthogonal and not all of them need to be used
together. As long as their is a way of extending the API cleanly in the
future then extensions can be made without breaking userspace.

Stefan

Attachment: signature.asc
Description: PGP signature