This series is intended to be included in v21 of Jarkko's SGX series and applies on Jarkko's current master: dfc89a83b5bc ("docs: x86/sgx: Document the enclave API") The primary goal of the series is to tweak the ioctl for adding pages to an enclave so that it is somewhat extensible, e.g. add a flags field that can be reused for access control integration and SGX2/EAUG, and add a size field so that multiple pages can be added in a single call (batching EADD has been mentioned at various times in the past). The secondary goal is to improve the performance of building enclaves. Handling multiple pages in a single call helps somewhat, but the real win (for some enclaves) is using the kernel's zero page as the source for EADD when possible. Sean Christopherson (7): x86/sgx: Remove dead code to handle non-existent IOR ioctl x86/sgx: Remove unnecessary @cmd parameter from ioctl helpers x86/sgx: Let ioctl helpers do copy to/from user x86/sgx: Allow userspace to add multiple pages in single ioctl() x86/sgx: Add flag to zero added region instead of copying from source x86/sgx: Use the actual zero page as the source when adding zero pages x86/sgx: Add a reserved field to sgx_enclave_add_region to drop 'packed' Documentation/x86/sgx/3.API.rst | 2 +- arch/x86/include/uapi/asm/sgx.h | 30 +-- arch/x86/kernel/cpu/sgx/driver/ioctl.c | 252 +++++++++++++++---------- 3 files changed, 171 insertions(+), 113 deletions(-) -- 2.21.0