> 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