mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

Expose the most commonly used TDX MRs (Measurement Registers) as sysfs attributes. Use the ioctl() interface of /dev/tdx_guest to request a full TDREPORT for access to other TD measurements. Directory structure of TDX MRs inside a TDVM is as follows: /sys/class/misc/tdx_guest └── measurements ├── mrconfigid ├── mrowner ├── mrownerconfig ├── mrtd:sha384 ├── rtmr0:sha384 ├── rtmr1:sha384 ├── rtmr2:sha384 └── rtmr3:sha384 Read the file/attribute to retrieve the current value of an MR. Write to the file/attribute (if writable) to extend the corresponding RTMR. Refer to Documentation/ABI/testing/sysfs-devices-virtual-misc-tdx_guest for more information. Signed-off-by: Cedric Xing <cedric.xing@intel.com> Acked-by: Dionna Amalie Glaze <dionnaglaze@google.com> [djbw: fixup exit order] Link: https://patch.msgid.link/20250508010606.4129953-1-dan.j.williams@intel.com Signed-off-by: Dan Williams <dan.j.williams@intel.com>
63 lines
2.4 KiB
Text
63 lines
2.4 KiB
Text
What: /sys/devices/virtual/misc/tdx_guest/measurements/MRNAME[:HASH]
|
||
Date: April, 2025
|
||
KernelVersion: v6.16
|
||
Contact: linux-coco@lists.linux.dev
|
||
Description:
|
||
Value of a TDX measurement register (MR). MRNAME and HASH above
|
||
are placeholders. The optional suffix :HASH is used for MRs
|
||
that have associated hash algorithms. See below for a complete
|
||
list of TDX MRs exposed via sysfs. Refer to Intel TDX Module
|
||
ABI Specification for the definition of TDREPORT and the full
|
||
list of TDX measurements.
|
||
|
||
Intel TDX Module ABI Specification can be found at:
|
||
https://www.intel.com/content/www/us/en/developer/tools/trust-domain-extensions/documentation.html#architecture
|
||
|
||
See also:
|
||
https://docs.kernel.org/driver-api/coco/measurement-registers.html
|
||
|
||
What: /sys/devices/virtual/misc/tdx_guest/measurements/mrconfigid
|
||
Date: April, 2025
|
||
KernelVersion: v6.16
|
||
Contact: linux-coco@lists.linux.dev
|
||
Description:
|
||
(RO) MRCONFIGID - 48-byte immutable storage typically used for
|
||
software-defined ID for non-owner-defined configuration of the
|
||
guest TD – e.g., run-time or OS configuration.
|
||
|
||
What: /sys/devices/virtual/misc/tdx_guest/measurements/mrowner
|
||
Date: April, 2025
|
||
KernelVersion: v6.16
|
||
Contact: linux-coco@lists.linux.dev
|
||
Description:
|
||
(RO) MROWNER - 48-byte immutable storage typically used for
|
||
software-defined ID for the guest TD’s owner.
|
||
|
||
What: /sys/devices/virtual/misc/tdx_guest/measurements/mrownerconfig
|
||
Date: April, 2025
|
||
KernelVersion: v6.16
|
||
Contact: linux-coco@lists.linux.dev
|
||
Description:
|
||
(RO) MROWNERCONFIG - 48-byte immutable storage typically used
|
||
for software-defined ID for owner-defined configuration of the
|
||
guest TD – e.g., specific to the workload rather than the
|
||
run-time or OS.
|
||
|
||
What: /sys/devices/virtual/misc/tdx_guest/measurements/mrtd:sha384
|
||
Date: April, 2025
|
||
KernelVersion: v6.16
|
||
Contact: linux-coco@lists.linux.dev
|
||
Description:
|
||
(RO) MRTD - Measurement of the initial contents of the TD.
|
||
|
||
What: /sys/devices/virtual/misc/tdx_guest/measurements/rtmr[0123]:sha384
|
||
Date: April, 2025
|
||
KernelVersion: v6.16
|
||
Contact: linux-coco@lists.linux.dev
|
||
Description:
|
||
(RW) RTMR[0123] - 4 Run-Time extendable Measurement Registers.
|
||
Read from any of these returns the current value of the
|
||
corresponding RTMR. Write extends the written buffer to the
|
||
RTMR. All writes must start at offset 0 and be 48 bytes in
|
||
size. Partial writes will result in EINVAL returned by the
|
||
write() syscall.
|