Re: [PATCH v13 08/13] x86/sgx: Add wrappers for ENCLS leaf functions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 27, 2018 at 9:58 PM Jarkko Sakkinen
<jarkko.sakkinen@xxxxxxxxxxxxxxx> wrote:
>
> Add wrappers for Intel(R) SGX ENCLS opcode leaf functions except
> ENCLS(EINIT). ENCLS invokes privileged functions for managing (creation,
> initialization and swapping) and debugging enclaves.

> +#define ENCLS_FAULT_FLAG 0x40000000UL
> +#define ENCLS_FAULT_FLAG_ASM "$0x40000000"

Hmm... Why it can't have same name?

See, how _AC() macro is defined and being used.

> +#define ENCLS_TRAPNR(r) ((r) & ~ENCLS_FAULT_FLAG)

If result of macro is assigned to some variable and (r) by some reason
is 32-bit type
and you compile as 64-bit object, compiler will warn here.
Please, check this is not the case in any of use of this macro.
Otherwise you need a type casting, like

foo = bar & (u32)~BAR;

(or using typeof() might work)

-- 
With Best Regards,
Andy Shevchenko



[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux