Message ID | 20210806000946.2951441-1-sathyanarayanan.kuppuswamy@linux.intel.com (mailing list archive) |
---|---|
Headers | show |
Series | Add TDX Guest Support (Attestation support) | expand |
Hi, On 8/6/21 2:09 AM, Kuppuswamy Sathyanarayanan wrote: > Hi All, > > Intel's Trust Domain Extensions (TDX) protect guest VMs from malicious > hosts and some physical attacks. VM guest with TDX support is called > as TD Guest. > > In TD Guest, the attestation process is used to verify the > trustworthiness of TD guest to the 3rd party servers. Such attestation > process is required by 3rd party servers before sending sensitive > information to TD guests. One usage example is to get encryption keys > from the key server for mounting the encrypted rootfs or secondary drive. > > Following patches adds the attestation support to TDX guest which > includes attestation user interface driver, user agent example, and > related hypercall support. > > In this series, only following patches are in arch/x86 and are > intended for x86 maintainers review. > > * x86/tdx: Add TDREPORT TDX Module call support > * x86/tdx: Add GetQuote TDX hypercall support > * x86/tdx: Add SetupEventNotifyInterrupt TDX hypercall support > > Patch titled "platform/x86: intel_tdx_attest: Add TDX Guest attestation > interface driver" adds the attestation driver support. This is supposed > to be reviewed by platform-x86 maintainers. Since the patches depend on each other I believe that it would be best if the entire series gets merged through the tip tree. Here is my ack for patch 6/7 for that: Acked-by: Hans de Goede <hdegoede@redhat.com> Regards, Hans > > Also, patch titled "tools/tdx: Add a sample attestation user app" adds > a testing app for attestation feature which needs review from > bpf@vger.kernel.org. > > This series is the continuation of the following TDX patch series which > added basic TDX guest support. > > [set 1, v5] - https://lore.kernel.org/patchwork/project/lkml/list/?seriesQ0805 > [set 2, v4] - https://lore.kernel.org/patchwork/project/lkml/list/?seriesQ0814 > [set 3, v4] - https://lore.kernel.org/patchwork/project/lkml/list/?seriesQ0816 > [set 4, v4] - https://lore.kernel.org/patchwork/project/lkml/list/?seriesQ0836 > [set 5, v3] - https://lkml.org/lkml/2021/8/5/1195 > > Also please note that this series alone is not necessarily fully > functional. > > You can find TDX related documents in the following link. > > https://software.intel.com/content/www/br/pt/develop/articles/intel-trust-domain-extensions.html > > Changes since v3: > * Since the code added by patch titled "x86/tdx: Add tdg_debug_enabled() > interface" is only used by other patches in this series, moved it here. > * Rebased on top of Tom Lendacky's protected guest > changes (https://lore.kernel.org/patchwork/cover/1468760/ > * Rest of the history is included in individual patches. > > Changes since v2: > * Rebased on top of v5.14-rc1. > * Rest of the history is included in individual patches. > > Changes since v1: > * Included platform-x86 and test tool maintainers in recipient list. > * Fixed commit log and comments in attestation driver as per Han's comments. > > Kuppuswamy Sathyanarayanan (7): > x86/tdx: Add tdg_debug_enabled() interface > x86/tdx: Add TDREPORT TDX Module call support > x86/tdx: Add GetQuote TDX hypercall support > x86/tdx: Add SetupEventNotifyInterrupt TDX hypercall support > x86/tdx: Add TDX Guest event notify interrupt vector support > platform/x86: intel_tdx_attest: Add TDX Guest attestation interface > driver > tools/tdx: Add a sample attestation user app > > arch/x86/include/asm/hardirq.h | 1 + > arch/x86/include/asm/idtentry.h | 4 + > arch/x86/include/asm/irq_vectors.h | 7 +- > arch/x86/include/asm/tdx.h | 8 + > arch/x86/kernel/irq.c | 7 + > arch/x86/kernel/tdx.c | 140 +++++++++++ > drivers/platform/x86/intel/Kconfig | 1 + > drivers/platform/x86/intel/Makefile | 1 + > drivers/platform/x86/intel/tdx/Kconfig | 13 + > drivers/platform/x86/intel/tdx/Makefile | 3 + > .../platform/x86/intel/tdx/intel_tdx_attest.c | 212 ++++++++++++++++ > include/uapi/misc/tdx.h | 37 +++ > tools/Makefile | 13 +- > tools/tdx/Makefile | 19 ++ > tools/tdx/attest/.gitignore | 2 + > tools/tdx/attest/Makefile | 24 ++ > tools/tdx/attest/tdx-attest-test.c | 232 ++++++++++++++++++ > 17 files changed, 717 insertions(+), 7 deletions(-) > create mode 100644 drivers/platform/x86/intel/tdx/Kconfig > create mode 100644 drivers/platform/x86/intel/tdx/Makefile > create mode 100644 drivers/platform/x86/intel/tdx/intel_tdx_attest.c > create mode 100644 include/uapi/misc/tdx.h > create mode 100644 tools/tdx/Makefile > create mode 100644 tools/tdx/attest/.gitignore > create mode 100644 tools/tdx/attest/Makefile > create mode 100644 tools/tdx/attest/tdx-attest-test.c >