On Fri, Sep 25, 2020 at 10:39:58AM +0200, Jethro Beekman wrote: > On 2020-09-25 03:00, Jarkko Sakkinen wrote: > > End result: > > > > https://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-sgx.git/tree/arch/x86/include/uapi/asm/sgx.h > > > > I'm wondering this sentence: > > > > "The calling convention is custom and does not follow System V x86-64 ABI." > > > > AFAIK, now the vDSO is fully C-callable but waiting for feedback before > > removing it. > > It's C-callable *iff your enclave follows the System V x86-64 ABI*. In > addition, all registers not clobbered by the SGX ISA are passed to the > enclave, not just those specified as parameter passing registers in > the ABI. This is intentional to make the vDSO function usable in > applications that use the current flexibility of ENCLU. Hold on, I really want to fix this bit of documentation before sending any new version, so I'll explain how I understand it. I think it is just SystemV ABI call with six parameters in the usual GPRs (rdi, rsi, rdx, rcx, r8, r9). I'm looking at vdso_sgx_enter_enclave. What I'm not getting? > -- > Jethro Beekman | Fortanix /Jarkko