On Mon, Apr 22, 2019 at 5:37 PM Cedric Xing <cedric.xing@xxxxxxxxx> wrote: > > Given the changes to __vdso_sgx_enter_enclave(), the selftest is augmented to > test the newly added callback interface. This addtional test marks the whole > enclave range as PROT_READ, and calls mprotect() upon #PFs to add necessary PTE > permissions per PFEC (#PF Error Code) until the enclave finishes. Nifty. What's not tested here is running this code with EFLAGS.TF set and making sure that it unwinds correctly. Also, Jarkko, unless I missed something, the vDSO extable code likely has a bug. If you run the instruction right before ENCLU with EFLAGS.TF set, then do_debug() will eat the SIGTRAP and skip to the exception handler. Similarly, if you put an instruction breakpoint on ENCLU, it'll get skipped. Or is the code actually correct and am I just remembering wrong? --Andy