From 3143787f697149d06f4a2cfc4b12608d52851e5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabiano=20Fid=C3=AAncio?= Date: Fri, 18 Jul 2025 13:00:33 +0200 Subject: [PATCH] qemu: tdx: Fix binary path for non-gpu TDX MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On commit 90bc749a19c4149a92a0b26372e282e898f3b55a, we've changed the QEMUTDXPATH in order to get it to work with GPUs, but the change broke the non-GPU TDX use-case, which depends on the distro binary. Signed-off-by: Fabiano FidĂȘncio --- src/runtime/Makefile | 10 +++++++++- src/runtime/arch/amd64-options.mk | 3 ++- .../config/configuration-qemu-nvidia-gpu-tdx.toml.in | 4 ++-- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/runtime/Makefile b/src/runtime/Makefile index 7b8e61169a..940338c8e6 100644 --- a/src/runtime/Makefile +++ b/src/runtime/Makefile @@ -172,8 +172,13 @@ HYPERVISORS := $(HYPERVISOR_FC) $(HYPERVISOR_QEMU) $(HYPERVISOR_CLH) $(HYPERVISO QEMUPATH := $(QEMUBINDIR)/$(QEMUCMD) QEMUVALIDHYPERVISORPATHS := [\"$(QEMUPATH)\"] -QEMUTDXPATH := $(QEMUBINDIR)/$(QEMUTDXCMD) +#QEMUTDXPATH := $(QEMUBINDIR)/$(QEMUTDXCMD) +QEMUTDXPATH := PLACEHOLDER_FOR_DISTRO_QEMU_WITH_TDX_SUPPORT QEMUTDXVALIDHYPERVISORPATHS := [\"$(QEMUTDXPATH)\"] + +QEMUTDXEXPERIMENTALPATH := $(QEMUBINDIR)/$(QEMUTDXEXPERIMENTALCMD) +QEMUTDXEXPERIMENTALVALIDHYPERVISORPATHS := [\"$(QEMUTDXEXPERIMENTALPATH)\"] + QEMUTDXQUOTEGENERATIONSERVICESOCKETPORT := 4050 QEMUSNPPATH := $(QEMUBINDIR)/$(QEMUSNPCMD) @@ -673,13 +678,16 @@ USER_VARS += PROJECT_URL USER_VARS += QEMUBINDIR USER_VARS += QEMUCMD USER_VARS += QEMUTDXCMD +USER_VARS += QEMUTDXEXPERIMENTALCMD USER_VARS += QEMUSNPCMD USER_VARS += QEMUPATH USER_VARS += QEMUTDXPATH +USER_VARS += QEMUTDXEXPERIMENTALPATH USER_VARS += QEMUTDXQUOTEGENERATIONSERVICESOCKETPORT USER_VARS += QEMUSNPPATH USER_VARS += QEMUVALIDHYPERVISORPATHS USER_VARS += QEMUTDXVALIDHYPERVISORPATHS +USER_VARS += QEMUTDXEXPERIMENTALVALIDHYPERVISORPATHS USER_VARS += QEMUSNPVALIDHYPERVISORPATHS USER_VARS += QEMUVIRTIOFSCMD USER_VARS += QEMUVIRTIOFSPATH diff --git a/src/runtime/arch/amd64-options.mk b/src/runtime/arch/amd64-options.mk index 4718da9cc1..819ecb5690 100644 --- a/src/runtime/arch/amd64-options.mk +++ b/src/runtime/arch/amd64-options.mk @@ -12,7 +12,8 @@ MACHINEACCELERATORS := CPUFEATURES := pmu=off QEMUCMD := qemu-system-x86_64 -QEMUTDXCMD := qemu-system-x86_64-tdx-experimental +#QEMUTDXCMD := qemu-system-x86_64 +QEMUTDXEXPERIMENTALCMD := qemu-system-x86_64-tdx-experimental QEMUSNPCMD := qemu-system-x86_64-snp-experimental TDXCPUFEATURES := pmu=off diff --git a/src/runtime/config/configuration-qemu-nvidia-gpu-tdx.toml.in b/src/runtime/config/configuration-qemu-nvidia-gpu-tdx.toml.in index 5beb942df2..a4cfd26fdc 100644 --- a/src/runtime/config/configuration-qemu-nvidia-gpu-tdx.toml.in +++ b/src/runtime/config/configuration-qemu-nvidia-gpu-tdx.toml.in @@ -12,7 +12,7 @@ # XXX: Type: @PROJECT_TYPE@ [hypervisor.qemu] -path = "@QEMUTDXPATH@" +path = "@QEMUTDXEXPERIMENTALPATH@" kernel = "@KERNELPATH_CONFIDENTIAL_NV@" initrd = "@INITRDPATH_CONFIDENTIAL_NV@" @@ -54,7 +54,7 @@ enable_annotations = @DEFENABLEANNOTATIONS@ # Each member of the list is a path pattern as described by glob(3). # The default if not set is empty (all annotations rejected.) # Your distribution recommends: @QEMUVALIDHYPERVISORPATHS@ -valid_hypervisor_paths = @QEMUTDXVALIDHYPERVISORPATHS@ +valid_hypervisor_paths = @QEMUTDXEXPERIMENTALVALIDHYPERVISORPATHS@ # Optional space-separated list of options to pass to the guest kernel. # For example, use `kernel_params = "vsyscall=emulate"` if you are having