public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 0/4] Measure kernel blob
@ 2022-05-23  5:55 Min Xu
  2022-05-23  5:55 ` [PATCH 1/4] OvmfPkg: Add library class BlobMeasurementLib with null implementation Min Xu
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Min Xu @ 2022-05-23  5:55 UTC (permalink / raw)
  To: devel
  Cc: Min Xu, Ard Biesheuvel, Jordan Justen, Ashish Kalra,
	Brijesh Singh, Erdem Aktas, James Bottomley, Jiewen Yao,
	Tom Lendacky, Sami Mujawar, Gerd Hoffmann

Kernel blobs include the kernel image, initrd, command line. These are
external inputs from host VMM. In some platforms,such as Tdx environment,
Host VMM is treated as un-trusted. So these external inputs should be
measured.

This patch-set imports a new library class (BlobMeasurementLib). It is
designed to do the blob measurement, including the kernel blob
measurement. In the future, it will do other blob measurement, such as
measuring ACPI table which is also passed from host VMM.

The code is at: https://github.com/mxu9/edk2/tree/MeasureKernelBlob.v1

Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Ashish Kalra <ashish.kalra@amd.com>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Erdem Aktas <erdemaktas@google.com>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>
Cc: Sami Mujawar <sami.mujawar@arm.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Min Xu <min.m.xu@intel.com>

Min Xu (4):
  OvmfPkg: Add library class BlobMeasurementLib with null implementation
  OvmfPkg: Add BlobMeasurementLibNull to dsc
  OvmfPkg: Implement BlobMeasurementLibTdx
  OvmfPkg: Call MeasureKernelBlob after fetch from fw_cfg

 ArmVirtPkg/ArmVirtQemu.dsc                    |  1 +
 ArmVirtPkg/ArmVirtQemuKernel.dsc              |  1 +
 OvmfPkg/AmdSev/AmdSevX64.dsc                  |  2 +
 OvmfPkg/CloudHv/CloudHvX64.dsc                |  1 +
 OvmfPkg/Include/Library/BlobMeasurementLib.h  | 38 ++++++++
 .../BlobMeasurementLibTdx/BlobMeasurement.c   | 87 +++++++++++++++++++
 .../BlobMeasurementLibTdx.inf                 | 30 +++++++
 OvmfPkg/IntelTdx/IntelTdxX64.dsc              |  1 +
 .../BlobMeasurementLibNull.c                  | 34 ++++++++
 .../BlobMeasurementLibNull.inf                | 24 +++++
 OvmfPkg/Microvm/MicrovmX64.dsc                |  1 +
 OvmfPkg/OvmfPkg.dec                           |  3 +
 OvmfPkg/OvmfPkgIa32.dsc                       |  1 +
 OvmfPkg/OvmfPkgIa32X64.dsc                    |  1 +
 OvmfPkg/OvmfPkgX64.dsc                        |  1 +
 OvmfPkg/OvmfXen.dsc                           |  1 +
 .../QemuKernelLoaderFsDxe.c                   | 13 +++
 17 files changed, 240 insertions(+)
 create mode 100644 OvmfPkg/Include/Library/BlobMeasurementLib.h
 create mode 100644 OvmfPkg/IntelTdx/BlobMeasurementLibTdx/BlobMeasurement.c
 create mode 100644 OvmfPkg/IntelTdx/BlobMeasurementLibTdx/BlobMeasurementLibTdx.inf
 create mode 100644 OvmfPkg/Library/BlobMeasurementLibNull/BlobMeasurementLibNull.c
 create mode 100644 OvmfPkg/Library/BlobMeasurementLibNull/BlobMeasurementLibNull.inf

-- 
2.29.2.windows.2


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-05-23 11:14 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-23  5:55 [PATCH 0/4] Measure kernel blob Min Xu
2022-05-23  5:55 ` [PATCH 1/4] OvmfPkg: Add library class BlobMeasurementLib with null implementation Min Xu
2022-05-23  5:55 ` [PATCH 2/4] OvmfPkg: Add BlobMeasurementLibNull to dsc Min Xu
2022-05-23  5:55 ` [PATCH 3/4] OvmfPkg: Implement BlobMeasurementLibTdx Min Xu
2022-05-23  8:14   ` Gerd Hoffmann
2022-05-23  5:55 ` [PATCH 4/4] OvmfPkg: Call MeasureKernelBlob after fetch from fw_cfg Min Xu
2022-05-23  9:29 ` [PATCH 0/4] Measure kernel blob Yao, Jiewen
     [not found] ` <16F1B1F290429BFD.18186@groups.io>
2022-05-23  9:36   ` [edk2-devel] " Yao, Jiewen
2022-05-23 11:13     ` Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox