| From: |
| Dan Williams <dan.j.williams-AT-intel.com> |
| To: |
| linux-coco-AT-lists.linux.dev |
| Subject: |
| [PATCH v6 0/7] configfs-tsm: Attestation Report ABI |
| Date: |
| Thu, 12 Oct 2023 19:13:54 -0700 |
| Message-ID: |
| <169716323436.984874.9170967990536970455.stgit@dwillia2-xfh.jf.intel.com> |
| Cc: |
| Brijesh Singh <brijesh.singh-AT-amd.com>, Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy-AT-linux.intel.com>, Erdem Aktas <erdemaktas-AT-google.com>, Peter Zijlstra <peterz-AT-infradead.org>, Tom Lendacky <thomas.lendacky-AT-amd.com>, Peter Gonda <pgonda-AT-google.com>, Borislav Petkov <bp-AT-alien8.de>, Dionna Amalie Glaze <dionnaglaze-AT-google.com>, Jeremi Piotrowski <jpiotrowski-AT-linux.microsoft.com>, Thomas Gleixner <tglx-AT-linutronix.de>, Samuel Ortiz <sameo-AT-rivosinc.com>, Dionna Glaze <dionnaglaze-AT-google.com>, Pankaj Gupta <pankaj.gupta-AT-amd.com>, Greg Kroah-Hartman <gregkh-AT-linuxfoundation.org>, Andrew Morton <akpm-AT-linux-foundation.org>, James Bottomley <James.Bottomley-AT-HansenPartnership.com>, sathyanarayanan.kuppuswamy-AT-linux.intel.com, dave.hansen-AT-linux.intel.com, bp-AT-alien8.de |
| Archive-link: |
| Article |
Changes since v5 [1]:
- Dump the raw cert_table via a new @auxblob attribute rather than
concatenate the certificate data. (Dionna and Tom)
- Fix usage of guard(), drop erroneous copy-pasted mutex_unlock().
(Tom)
[1]: http://lore.kernel.org/r/169700203032.779347.116034847218...
---
Merge notes: I am looking for Dave or Boris to pick this up, I believe
all outstanding comments have been resolved and this has now been
smoke-tested on AMD and Intel platforms (both v5 and v6).
---
An attestation report is signed evidence of how a Trusted Virtual
Machine (TVM) was launched and its current state. A verifying party uses
the report to make judgements of the confidentiality and integrity of
that execution environment. Upon successful attestation the verifying
party may, for example, proceed to deploy secrets to the TVM to carry
out a workload. Multiple confidential computing platforms share this
similar flow.
The approach of adding adding new char devs and new ioctls, for what
amounts to the same logical functionality with minor formatting
differences across vendors [2], is untenable. Common concepts and the
community benefit from common infrastructure.
Use configfs for this facility for maintainability compared to ioctl(),
and for its scalability compared to sysfs. Atomicity can be enforced at
item creation time, and a conflict detection mechanism is included for
scenarios where multiple threads may share a single configuration
instance.
[2]: http://lore.kernel.org/r/cover.1684048511.git.sathyanaray...
---
Dan Williams (6):
virt: sevguest: Fix passing a stack buffer as a scatterlist target
virt: coco: Add a coco/Makefile and coco/Kconfig
configfs-tsm: Introduce a shared ABI for attestation reports
virt: sevguest: Prep for kernel internal get_ext_report()
mm/slab: Add __free() support for kvfree
virt: sevguest: Add TSM_REPORTS support for SNP_GET_EXT_REPORT
Kuppuswamy Sathyanarayanan (1):
virt: tdx-guest: Add Quote generation support using TSM_REPORTS
Documentation/ABI/testing/configfs-tsm | 82 ++++++
MAINTAINERS | 8 +
arch/x86/coco/tdx/tdx.c | 21 ++
arch/x86/include/asm/shared/tdx.h | 1
arch/x86/include/asm/tdx.h | 2
drivers/virt/Kconfig | 6
drivers/virt/Makefile | 4
drivers/virt/coco/Kconfig | 14 +
drivers/virt/coco/Makefile | 8 +
drivers/virt/coco/sev-guest/Kconfig | 1
drivers/virt/coco/sev-guest/sev-guest.c | 212 ++++++++++++++--
drivers/virt/coco/tdx-guest/Kconfig | 1
drivers/virt/coco/tdx-guest/tdx-guest.c | 229 +++++++++++++++++
drivers/virt/coco/tsm.c | 423 +++++++++++++++++++++++++++++++
include/linux/slab.h | 2
include/linux/tsm.h | 68 +++++
16 files changed, 1046 insertions(+), 36 deletions(-)
create mode 100644 Documentation/ABI/testing/configfs-tsm
create mode 100644 drivers/virt/coco/Kconfig
create mode 100644 drivers/virt/coco/Makefile
create mode 100644 drivers/virt/coco/tsm.c
create mode 100644 include/linux/tsm.h
base-commit: 6465e260f48790807eef06b583b38ca9789b6072