[PATCH 0/6] Intel Secure Guard Extensions

Jarkko Sakkinen jarkko.sakkinen at linux.intel.com
Mon Apr 25 17:34:07 UTC 2016


Intel(R) SGX is a set of CPU instructions that can be used by
applications to set aside private regions of code and data.  The code
outside the enclave is disallowed to access the memory inside the
enclave by the CPU access control.

The firmware uses PRMRR registers to reserve an area of physical memory
called Enclave Page Cache (EPC). There is a hardware unit in the
processor called Memory Encryption Engine. The MEE encrypts and decrypts
the EPC pages as they enter and leave the processor package.

Jarkko Sakkinen (5):
  x86, sgx:  common macros and definitions
  intel_sgx: driver for Intel Secure Guard eXtensions
  intel_sgx: ptrace() support for the driver
  intel_sgx: driver documentation
  intel_sgx: TODO file for the staging area

Kai Huang (1):
  x86: add SGX definition to cpufeature

 Documentation/x86/intel_sgx.txt               |  86 +++
 arch/x86/include/asm/cpufeature.h             |   1 +
 arch/x86/include/asm/sgx.h                    | 253 +++++++
 drivers/staging/Kconfig                       |   2 +
 drivers/staging/Makefile                      |   1 +
 drivers/staging/intel_sgx/Kconfig             |  13 +
 drivers/staging/intel_sgx/Makefile            |  12 +
 drivers/staging/intel_sgx/TODO                |  25 +
 drivers/staging/intel_sgx/isgx.h              | 238 +++++++
 drivers/staging/intel_sgx/isgx_compat_ioctl.c | 179 +++++
 drivers/staging/intel_sgx/isgx_ioctl.c        | 926 ++++++++++++++++++++++++++
 drivers/staging/intel_sgx/isgx_main.c         | 369 ++++++++++
 drivers/staging/intel_sgx/isgx_page_cache.c   | 485 ++++++++++++++
 drivers/staging/intel_sgx/isgx_user.h         | 113 ++++
 drivers/staging/intel_sgx/isgx_util.c         | 334 ++++++++++
 drivers/staging/intel_sgx/isgx_vma.c          | 400 +++++++++++
 16 files changed, 3437 insertions(+)
 create mode 100644 Documentation/x86/intel_sgx.txt
 create mode 100644 arch/x86/include/asm/sgx.h
 create mode 100644 drivers/staging/intel_sgx/Kconfig
 create mode 100644 drivers/staging/intel_sgx/Makefile
 create mode 100644 drivers/staging/intel_sgx/TODO
 create mode 100644 drivers/staging/intel_sgx/isgx.h
 create mode 100644 drivers/staging/intel_sgx/isgx_compat_ioctl.c
 create mode 100644 drivers/staging/intel_sgx/isgx_ioctl.c
 create mode 100644 drivers/staging/intel_sgx/isgx_main.c
 create mode 100644 drivers/staging/intel_sgx/isgx_page_cache.c
 create mode 100644 drivers/staging/intel_sgx/isgx_user.h
 create mode 100644 drivers/staging/intel_sgx/isgx_util.c
 create mode 100644 drivers/staging/intel_sgx/isgx_vma.c

-- 
2.7.4



More information about the devel mailing list