summarylogtreecommitdiffstats
path: root/0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch
diff options
context:
space:
mode:
authorJarkko Sakkinen2022-03-11 17:28:30 +0200
committerJarkko Sakkinen2022-03-11 17:42:24 +0200
commit126c8eac9f839cef29c96d9e0db11192ad6713f8 (patch)
treefa4ebec9dad95123dfc50fe7757056fa0f66c12a /0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch
downloadaur-126c8eac9f839cef29c96d9e0db11192ad6713f8.tar.gz
Epoch
Signed-off-by: Jarkko Sakkinen <jarkko@profian.com>
Diffstat (limited to '0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch')
-rw-r--r--0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch b/0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch
new file mode 100644
index 000000000000..85c89d635708
--- /dev/null
+++ b/0012-x86-sgx-Make-sgx_ipi_cb-available-internally.patch
@@ -0,0 +1,46 @@
+From ef7d7909abfc46b2a8b3aaa0ab5375033688123e Mon Sep 17 00:00:00 2001
+From: Reinette Chatre <reinette.chatre@intel.com>
+Date: Mon, 7 Feb 2022 16:45:34 -0800
+Subject: [PATCH 12/34] x86/sgx: Make sgx_ipi_cb() available internally
+
+The ETRACK function followed by an IPI to all CPUs within an enclave
+is a common pattern with more frequent use in support of SGX2.
+
+Make the (empty) IPI callback function available internally in
+preparation for usage by SGX2.
+
+Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
+---
+ arch/x86/kernel/cpu/sgx/main.c | 2 +-
+ arch/x86/kernel/cpu/sgx/sgx.h | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/arch/x86/kernel/cpu/sgx/main.c b/arch/x86/kernel/cpu/sgx/main.c
+index 06492dcffcf1..1a3014aec490 100644
+--- a/arch/x86/kernel/cpu/sgx/main.c
++++ b/arch/x86/kernel/cpu/sgx/main.c
+@@ -172,7 +172,7 @@ static int __sgx_encl_ewb(struct sgx_epc_page *epc_page, void *va_slot,
+ return ret;
+ }
+
+-static void sgx_ipi_cb(void *info)
++void sgx_ipi_cb(void *info)
+ {
+ }
+
+diff --git a/arch/x86/kernel/cpu/sgx/sgx.h b/arch/x86/kernel/cpu/sgx/sgx.h
+index 0f17def9fe6f..b30cee4de903 100644
+--- a/arch/x86/kernel/cpu/sgx/sgx.h
++++ b/arch/x86/kernel/cpu/sgx/sgx.h
+@@ -90,6 +90,8 @@ void sgx_mark_page_reclaimable(struct sgx_epc_page *page);
+ int sgx_unmark_page_reclaimable(struct sgx_epc_page *page);
+ struct sgx_epc_page *sgx_alloc_epc_page(void *owner, bool reclaim);
+
++void sgx_ipi_cb(void *info);
++
+ #ifdef CONFIG_X86_SGX_KVM
+ int __init sgx_vepc_init(void);
+ #else
+--
+2.35.1
+