You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/qapi
Isaku Yamahata 40da501d89 i386/tdx: handle TDG.VP.VMCALL<GetQuote>
Add property "quote-generation-socket" to tdx-guest, which is a property
of type SocketAddress to specify Quote Generation Service(QGS).

On request of GetQuote, it connects to the QGS socket, read request
data from shared guest memory, send the request data to the QGS,
and store the response into shared guest memory, at last notify
TD guest by interrupt.

command line example:
  qemu-system-x86_64 \
    -object '{"qom-type":"tdx-guest","id":"tdx0","quote-generation-socket":{"type":"unix", "path":"/var/run/tdx-qgs/qgs.socket"}}' \
    -machine confidential-guest-support=tdx0

Note, above example uses the unix socket. It can be other types, like vsock,
which depends on the implementation of QGS.

To avoid no response from QGS server, setup a timer for the transaction.
If timeout, make it an error and interrupt guest. Define the threshold of
time to 30s at present, maybe change to other value if not appropriate.

Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com>
Co-developed-by: Chenyi Qiang <chenyi.qiang@intel.com>
Signed-off-by: Chenyi Qiang <chenyi.qiang@intel.com>
Co-developed-by: Xiaoyao Li <xiaoyao.li@intel.com>
Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com>
Tested-by: Xiaoyao Li <xiaoyao.li@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
1 week ago
..
acpi.json qapi: Tidy up run-together sentences in doc comments 4 weeks ago
audio.json qapi: Correct spelling of QEMU in doc comments 4 weeks ago
authz.json
block-core.json qapi: Improve documentation around job state @concluded 4 weeks ago
block-export.json qapi: Correct spelling of QEMU in doc comments 4 weeks ago
block.json qapi: Fix capitalization in doc comments 4 weeks ago
char.json qapi: Correct spelling of QEMU in doc comments 4 weeks ago
common.json hw/qdev-properties-system: Introduce EndianMode QAPI enum 4 months ago
compat.json qapi: Belatedly update CompatPolicy documentation for unstable 2 years ago
control.json qapi: use imperative style in documentation 1 month ago
crypto.json qapi: Tidy up whitespace in doc comments 4 weeks ago
cryptodev.json qapi: Fix capitalization in doc comments 4 weeks ago
cxl.json qapi: Fix capitalization in doc comments 4 weeks ago
dump.json qapi: Use proper markup instead of CAPS for emphasis in doc comments 4 weeks ago
ebpf.json qapi/ebpf: Drop temporary 'prefix' 10 months ago
error.json
introspect.json qapi: Correct spelling of QEMU in doc comments 4 weeks ago
job.json qapi: Improve documentation around job state @concluded 4 weeks ago
machine-common.json qapi/qom: Define cache enumeration and properties for machine 8 months ago
machine-s390x.json qapi: make s390x specific CPU commands unconditionally available 1 month ago
machine.json qapi: Fix capitalization in doc comments 4 weeks ago
meson.build qapi: make all generated files common 1 month ago
migration.json qapi: Use proper markup instead of CAPS for emphasis in doc comments 4 weeks ago
misc-arm.json qapi: expose query-gic-capability command unconditionally 1 month ago
misc-i386.json qapi: Fix capitalization in doc comments 4 weeks ago
misc.json qapi: Use proper markup instead of CAPS for emphasis in doc comments 4 weeks ago
net.json qapi: Avoid breaking lines within (since X.Y) 4 weeks ago
opts-visitor.c qapi: Inline and remove QERR_INVALID_PARAMETER definition 1 year ago
pci.json qapi/pci: Supply missing member documentation 9 months ago
pragma.json qapi: Document QCryptodevBackendServiceType 9 months ago
qapi-clone-visitor.c qapi: Move include/qapi/qmp/ to include/qobject/ 5 months ago
qapi-dealloc-visitor.c qapi: Move include/qapi/qmp/ to include/qobject/ 5 months ago
qapi-forward-visitor.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qapi-schema.json qapi: make s390x specific CPU commands unconditionally available 1 month ago
qapi-type-helpers.c qapi: New strv_from_str_list() 1 year ago
qapi-util.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qapi-visit-core.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qdev.json docs: Fix some typos (found by codespell and typos) 3 months ago
qmp-dispatch.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qmp-event.c qapi: Move include/qapi/qmp/ to include/qobject/ 5 months ago
qmp-registry.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qobject-input-visitor.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qobject-output-visitor.c qapi: change 'unsigned special_features' to 'uint64_t features' 5 months ago
qom.json i386/tdx: handle TDG.VP.VMCALL<GetQuote> 1 week ago
replay.json qapi: convert "Example" sections without titles 12 months ago
rocker.json qapi/rocker: Tidy up query-rocker-of-dpa-flows example 3 months ago
run-state.json qapi: Fix capitalization in doc comments 4 weeks ago
sockets.json util/qemu-sockets: Introduce inet socket options controlling TCP keep-alive 1 month ago
stats.json qapi: Refill doc comments to conform to conventions 11 months ago
string-input-visitor.c qapi: Move include/qapi/qmp/ to include/qobject/ 5 months ago
string-output-visitor.c string-output-visitor: Fix (pseudo) struct handling 1 year ago
tpm.json qapi: convert "Example" sections without titles 12 months ago
trace-events
trace.h
trace.json qapi: convert "Example" sections without titles 12 months ago
transaction.json qapi: Fix capitalization in doc comments 4 weeks ago
uefi.json qapi: Correct spelling of QEMU in doc comments 4 weeks ago
ui.json qapi: Correct spelling of QEMU in doc comments 4 weeks ago
vfio.json qapi/vfio: Rename VfioMigrationState to Qapi*, and drop prefix 10 months ago
virtio.json qapi: use imperative style in documentation 1 month ago
yank.json qapi: convert "Example" sections without titles 12 months ago