@@ -1948,20 +1948,6 @@ config INTEL_SGX
If unsure, say N.
-config INTEL_SGX_DRIVER
- bool "Intel(R) SGX Driver"
- depends on X86_64 && CPU_SUP_INTEL && INTEL_SGX
- select CRYPTO
- select CRYPTO_SHA256
- ---help---
- This options enables the kernel SGX driver that allows to construct
- enclaves to the process memory by using a device node (by default
- /dev/sgx) and a set of ioctls. The driver requires that the MSRs
- specifying the public key hash for the launch enclave are writable so
- that Linux has the full control to run enclaves.
-
- If unsure, say N.
-
config EFI
bool "EFI runtime service support"
depends on ACPI
@@ -1,2 +1,2 @@
obj-y += encl.o encls.o main.o reclaim.o
-obj-$(CONFIG_INTEL_SGX_DRIVER) += driver/
+obj-y += driver/
@@ -1,3 +1 @@
-obj-$(CONFIG_INTEL_SGX_DRIVER) += sgx.o
-sgx-$(CONFIG_INTEL_SGX_DRIVER) += ioctl.o
-sgx-$(CONFIG_INTEL_SGX_DRIVER) += main.o
+obj-y = ioctl.o main.o
@@ -344,11 +344,9 @@ static __init int sgx_init(void)
if (ret)
goto err_page_cache;
- if (IS_ENABLED(CONFIG_INTEL_SGX_DRIVER)) {
- ret = sgx_drv_init();
- if (ret)
- goto err_kthread;
- }
+ ret = sgx_drv_init();
+ if (ret)
+ goto err_kthread;
return 0;
As there are the SGX driver is the only SGX core user, remove INTEL_SGX_DRIVER config flag for now. When there are >= 2 in-kernel users, we can consider adding it back and make INTEL_SGX config depend on disjunction of its clients config flags. Reported-by: Sean Christopherson <sean.j.christopherson@intel.com> Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> --- arch/x86/Kconfig | 14 -------------- arch/x86/kernel/cpu/sgx/Makefile | 2 +- arch/x86/kernel/cpu/sgx/driver/Makefile | 4 +--- arch/x86/kernel/cpu/sgx/main.c | 8 +++----- 4 files changed, 5 insertions(+), 23 deletions(-)