Commit 791b5178ed for qemu.org
commit 791b5178ed37247cb0d7d4b379b9980f642ec06c
Author: Xiaoyao Li <xiaoyao.li@intel.com>
Date: Tue May 12 16:44:57 2026 +0800
qemu-options: Add description of tdx-guest object
Add description of tdx-guest object so that QEMU doc page can have the
description.
Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com>
Link: https://lore.kernel.org/r/20260512084458.622465-5-xiaoyao.li@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/qemu-options.hx b/qemu-options.hx
index a8ee5d14e1..f1874a0591 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -6372,6 +6372,47 @@ SRST
-machine ...,confidential-guest-support=sev0 \\
.....
+ ``-object tdx-guest,id=id,[attributes=attrs,sept-ve-disable=on|off,mrconfigid=sha384_digest,mrowner=sha384_digest,mrownerconfig=sha384_digest,quote-generation-socket=socketaddr]``
+ Create an Intel Trusted Domain eXtensions (TDX) guest object, which is
+ the type of ``confidential-guest-support`` object. When pass the object
+ ID to machine's ``confidential-guest-support`` property, it can create
+ a TDX guest.
+
+ The ``attributes`` property is a 64-bit integer, which specifies the
+ TD attributes of the TD.
+
+ The ``sept-ve-disable`` property controls the bit 28 of TD attributes
+ specifically. When it's on, the EPT violation conversion to #VE on
+ guest access of PENDING pages is disabled. Some guest OS (e.g., Linux
+ TD guest) may require this to be set, otherwise they refuse to boot.
+ The default value is on.
+
+ The ``mrconfigid`` property is base64 encoded SHA384 digest, which
+ provides the ID for non-owner-defined configuration of the guest TD,
+ e.g., run-time or OS configuration. The default value is all zeros.
+
+ The ``mrowner`` property is base64 encoded SHA384 digest, which
+ provides the ID for guest TD's owner. The default value is all zeros.
+
+ The ``mrownerconfig`` property is base64 encoded SHA384 digest, which
+ provides the ID for owner-defined configuration of the guest TD, e.g.,
+ the configuration specific to the workload rather than the run-time of
+ OS. The default value is all zeros.
+
+ The ``quote-generation-socket`` property specifies the socket address
+ of the Quote Generation Service (QGS). QGS is a daemon running on the
+ host. QEMU forwards the <GetQuote> request from TD guest to QGS and
+ sents the reply (which contains generated QUOTE on success) from QGS
+ to guest TD.
+
+ .. parsed-literal::
+
+ # |qemu_system_x86| \\
+ ...... \\
+ -object '{"qom-type":"tdx-guest","id":"tdx","quote-generation-socket":{"type":"unix","path":"/var/run/qgs.socket"}}' \\
+ -machine ...,confidential-guest-support=tdx \\
+ ......
+
``-object igvm-cfg,file=file``
Create an IGVM configuration object that defines the initial state
of the guest using a file in that conforms to the Independent Guest