]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
util: fix cache invalidation of swtpm capabilities
authorDaniel P. Berrangé <berrange@redhat.com>
Wed, 24 Nov 2021 10:56:02 +0000 (10:56 +0000)
committerDaniel P. Berrangé <berrange@redhat.com>
Wed, 24 Nov 2021 11:31:16 +0000 (11:31 +0000)
The check for whether the swtpm binary was modified is checking pointers
to the mtime field in two distinct structs, so will always compare
different. This resulted in re-probing swtpm capabilities every time,
as many as 20 times for a single VM launch.

Fixes:

  commit 01cf7a1bb9f1da27ad8bcbaa82c4f7a948c6a793
  Author: Stefan Berger <stefanb@us.ibm.com>
  Date:   Thu Jul 25 14:22:04 2019 -0400

    tpm: Check whether previously found executables were updated

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
src/util/virtpm.c

index 7fa870b80301cb5682da41cfe9721a263d79d085..2c0dd707b09fd7d2af993cb489660fd0abe66dfd 100644 (file)
@@ -301,7 +301,7 @@ virTPMEmulatorInit(void)
                 findit = true;
 
             if (!findit &&
-                &statbuf.st_mtime != &prgs[i].stat->st_mtime)
+                statbuf.st_mtime != prgs[i].stat->st_mtime)
                 findit = true;
         }