RE: [RFC PATCH v3 08/27] x86/sgx: Initialize virtual EPC driver even when SGX driver is disabled

Huang, Kai
2021-02-05T03:01:41Z

> On Thu, Feb 04, 2021 at 02:41:57PM -0800, Dave Hansen wrote:
> > On 2/4/21 6:51 AM, Jarkko Sakkinen wrote:
> > >>> A: ret == -ENODEV
> > >>> B: ret == 0
> > >>> C: ret != 0 && ret != -ENODEV
> > >> Let me try again:
> > >>
> > >> Why A and C should be treated differently? What will behave
> > >> incorrectly, in case of C?
> > > So you don't know what different error codes mean?
> >
> > How about we just leave the check in place as Sean wrote it, and add a
> > nice comment to explain what it is doing:
> >
> > /*
> > * Always try to initialize the native *and* KVM drivers.
> > * The KVM driver is less picky than the native one and
> > * can function if the native one is not supported on the
> > * current system or fails to initialize.
> > *
> > * Error out only if both fail to initialize.
> > */
> > ret = !!sgx_drv_init() & !!sgx_vepc_init();
> > if (ret)
> > goto err_kthread;
>
> WFM, I can go along, as long as there is a remark. There is a semantical
> difference between "not supported" and "failure to initialize". The driving point
> is that this should not be hidden. I was first thinking a note in the commit
> message, but inline comment is actually a better idea. Thanks!
>
> I can ack the next version, as long as this comment is included.

Sure. Thanks Dave and Jarkko.

>
> /Jarkko