From 3451987fca7c89a1aa9c5b0701471b6bc23dda3d Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Thu, 17 Jul 2025 11:58:32 +0200 Subject: [PATCH] qemu_tpm: Only warn about missing locking feature on shared filesystems MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The warning pollutes the logs and might give a bad impression on someone reading them even though the locking is not always needed. This way we at least limit the logging in unnecessary cases. Resolves: https://issues.redhat.com/browse/RHEL-80155 Signed-off-by: Martin Kletzander Reviewed-by: Ján Tomko Reviewed-by: Peter Krempa --- src/qemu/qemu_tpm.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/qemu/qemu_tpm.c b/src/qemu/qemu_tpm.c index 855d732e60..cdbd6e3993 100644 --- a/src/qemu/qemu_tpm.c +++ b/src/qemu/qemu_tpm.c @@ -660,12 +660,16 @@ qemuTPMVirCommandSwtpmAddEncryption(virCommand *cmd, static void qemuTPMVirCommandSwtpmAddTPMState(virCommand *cmd, - const virDomainTPMEmulatorDef *emulator) + const virDomainTPMEmulatorDef *emulator, + const virDomainTPMDef *tpmDef, + const virQEMUDriverConfig *cfg) { const char *lock = ",lock"; if (!virTPMSwtpmCapsGet(VIR_TPM_SWTPM_FEATURE_TPMSTATE_OPT_LOCK)) { - VIR_WARN("This swtpm version doesn't support explicit locking"); + if (qemuTPMHasSharedStorage(cfg, tpmDef)) + VIR_WARN("This swtpm version doesn't support explicit locking"); + lock = ""; } @@ -721,7 +725,7 @@ qemuTPMEmulatorUpdateProfileName(virDomainTPMEmulatorDef *emulator, virCommandAddArgList(cmd, "socket", "--print-info", "0x20", "--tpm2", NULL); - qemuTPMVirCommandSwtpmAddTPMState(cmd, emulator); + qemuTPMVirCommandSwtpmAddTPMState(cmd, emulator, persistentTPMDef, cfg); if (qemuTPMVirCommandSwtpmAddEncryption(cmd, emulator, swtpm) < 0) return -1; @@ -848,7 +852,7 @@ qemuTPMEmulatorBuildCommand(virDomainTPMDef *tpm, virCommandAddArgFormat(cmd, "type=unixio,path=%s,mode=0600", tpm->data.emulator.source->data.nix.path); - qemuTPMVirCommandSwtpmAddTPMState(cmd, &tpm->data.emulator); + qemuTPMVirCommandSwtpmAddTPMState(cmd, &tpm->data.emulator, persistentTPMDef, cfg); virCommandAddArg(cmd, "--log"); if (tpm->data.emulator.debug != 0) -- 2.47.2