diff for duplicates of <cover.1555965327.git.cedric.xing@intel.com> diff --git a/a/1.txt b/N1/1.txt index 6e922bb..173a161 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,8 +1,30 @@ -The current proposed __vdso_sgx_enter_enclave() requires enclaves to preserve %rsp, which prohibits enclaves from allocating space on the untrusted stack. However, there are existing enclaves (e.g. those built with current Intel SGX SDK libraries) relying on the untrusted stack for passing parameters to untrusted functions (aka. o-calls), which requires allocating space on the untrusted stack by enclaves. And given its simplicity and convenience, it could be desired by future SGX applications as well. +The current proposed __vdso_sgx_enter_enclave() requires enclaves to preserve +%rsp, which prohibits enclaves from allocating space on the untrusted stack. +However, there are existing enclaves (e.g. those built with current Intel SGX +SDK libraries) relying on the untrusted stack for passing parameters to +untrusted functions (aka. o-calls), which requires allocating space on the +untrusted stack by enclaves. And given its simplicity and convenience, it could +be desired by future SGX applications as well. -This patchset introduces a new ABI for __vdso_sgx_enter_enclave() to anchor its stack frame on %rbp (instead of %rsp), so as to allow enclaves to "push" onto the untrusted stack by decrementing the untrusted %rsp. Additionally, this new __vdso_sgx_enter_enclave() will take one more parameter - a callback function, to be invoked upon all enclave exits (both AEX and normal exits). The callback function will be given the value of %rsp left off by the enclave, so that data "pushed" by the enclave (if any) could be addressed/accessed. Please note that the callback function is optional, and if not supplied (i.e. null), __vdso_sgx_enter_enclave() will just return (i.e. behave the same as the current implementation) after the enclave exits (or AEX due to exceptions). +This patchset introduces a new ABI for __vdso_sgx_enter_enclave() to anchor its +stack frame on %rbp (instead of %rsp), so as to allow enclaves to "push" onto +the untrusted stack by decrementing the untrusted %rsp. Additionally, this new +__vdso_sgx_enter_enclave() will take one more parameter - a callback function, +to be invoked upon all enclave exits (both AEX and normal exits). The +callback function will be given the value of %rsp left off by the enclave, +so that data "pushed" by the enclave (if any) could be addressed/accessed. +Please note that the callback function is optional, and if not supplied +(i.e. null), __vdso_sgx_enter_enclave() will just return (i.e. behave the +same as the current implementation) after the enclave exits (or AEX +due to exceptions). -The SGX selftest is augmented to test out the new callback interface, and to serve as a simple example to showcase how to use the callback interface in practice. +The SGX selftest is augmented to test out the new callback interface, and to +serve as a simple example to showcase how to use the callback interface in +practice. + +Reference: +* This patchset is based upon SGX1 patch v20 + (https://lkml.org/lkml/2019/4/17/344) by Jarkko Sakkinen Cedric Xing (3): selftests/x86: Fixed Makefile for SGX selftest diff --git a/a/content_digest b/N1/content_digest index 882720b..d74aa1d 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,16 +1,63 @@ "ref\020190417103938.7762-1-jarkko.sakkinen@linux.intel.com\0" "From\0Cedric Xing <cedric.xing@intel.com>\0" "Subject\0[RFC PATCH v1 0/3] An alternative __vdso_sgx_enter_enclave() to allow enclave/host parameter passing using untrusted stack\0" - "Date\0Mon, 22 Apr 2019 13:42:56 -0700\0" - "To\0linux-sgx@vger.kernel.org\0" - "Cc\0cedric.xing@intel.com\0" + "Date\0Mon, 22 Apr 2019 17:37:22 -0700\0" + "To\0linux-kernel@vger.kernel.org" + x86@kernel.org + " linux-sgx@vger.kernel.org\0" + "Cc\0akpm@linux-foundation.org" + Hansen@vger.kernel.org + Dave <dave.hansen@intel.com> + Christopherson@vger.kernel.org + Sean J <sean.j.christopherson@intel.com> + nhorman@redhat.com + npmccallum@redhat.com + Ayoun@vger.kernel.org + Serge <serge.ayoun@intel.com> + Katz-zamir@vger.kernel.org + Shay <shay.katz-zamir@intel.com> + Huang@vger.kernel.org + Haitao <haitao.huang@intel.com> + andriy.shevchenko@linux.intel.com + tglx@linutronix.de + Svahn@vger.kernel.org + Kai <kai.svahn@intel.com> + bp@alien8.de + josh@joshtriplett.org + luto@kernel.org + Kai <kai.huang@intel.com> + rientjes@google.com + Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> + " Cedric Xing <cedric.xing@intel.com>\0" "\00:1\0" "b\0" - "The current proposed __vdso_sgx_enter_enclave() requires enclaves to preserve %rsp, which prohibits enclaves from allocating space on the untrusted stack. However, there are existing enclaves (e.g. those built with current Intel SGX SDK libraries) relying on the untrusted stack for passing parameters to untrusted functions (aka. o-calls), which requires allocating space on the untrusted stack by enclaves. And given its simplicity and convenience, it could be desired by future SGX applications as well.\n" + "The current proposed __vdso_sgx_enter_enclave() requires enclaves to preserve\n" + "%rsp, which prohibits enclaves from allocating space on the untrusted stack.\n" + "However, there are existing enclaves (e.g. those built with current Intel SGX\n" + "SDK libraries) relying on the untrusted stack for passing parameters to\n" + "untrusted functions (aka. o-calls), which requires allocating space on the\n" + "untrusted stack by enclaves. And given its simplicity and convenience, it could\n" + "be desired by future SGX applications as well.\n" "\n" - "This patchset introduces a new ABI for __vdso_sgx_enter_enclave() to anchor its stack frame on %rbp (instead of %rsp), so as to allow enclaves to \"push\" onto the untrusted stack by decrementing the untrusted %rsp. Additionally, this new __vdso_sgx_enter_enclave() will take one more parameter - a callback function, to be invoked upon all enclave exits (both AEX and normal exits). The callback function will be given the value of %rsp left off by the enclave, so that data \"pushed\" by the enclave (if any) could be addressed/accessed. Please note that the callback function is optional, and if not supplied (i.e. null), __vdso_sgx_enter_enclave() will just return (i.e. behave the same as the current implementation) after the enclave exits (or AEX due to exceptions).\n" + "This patchset introduces a new ABI for __vdso_sgx_enter_enclave() to anchor its\n" + "stack frame on %rbp (instead of %rsp), so as to allow enclaves to \"push\" onto\n" + "the untrusted stack by decrementing the untrusted %rsp. Additionally, this new\n" + "__vdso_sgx_enter_enclave() will take one more parameter - a callback function,\n" + "to be invoked upon all enclave exits (both AEX and normal exits). The\n" + "callback function will be given the value of %rsp left off by the enclave,\n" + "so that data \"pushed\" by the enclave (if any) could be addressed/accessed.\n" + "Please note that the callback function is optional, and if not supplied\n" + "(i.e. null), __vdso_sgx_enter_enclave() will just return (i.e. behave the\n" + "same as the current implementation) after the enclave exits (or AEX\n" + "due to exceptions).\n" "\n" - "The SGX selftest is augmented to test out the new callback interface, and to serve as a simple example to showcase how to use the callback interface in practice.\n" + "The SGX selftest is augmented to test out the new callback interface, and to\n" + "serve as a simple example to showcase how to use the callback interface in\n" + "practice.\n" + "\n" + "Reference:\n" + "* This patchset is based upon SGX1 patch v20\n" + " (https://lkml.org/lkml/2019/4/17/344) by Jarkko Sakkinen\n" "\n" "Cedric Xing (3):\n" " selftests/x86: Fixed Makefile for SGX selftest\n" @@ -30,4 +77,4 @@ "-- \n" 2.17.1 -c33af1e4a02d323f7176f1231c70b7105b874f026861a960f27378194146bdfd +a22821f18cb8e44333f8dc93f90c5c1520f2f05795d47e4c7d722177e03884d2
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.