diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index d174fa70d81e6cf169e95169330c39491b3196dc..e3f279f6637b5ee134fa6c517c164b9aa82f769a 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -5982,6 +5982,13 @@ qemuDomainDeviceDiskDefPostParse(virDomainDiskDefPtr disk,
parseFlags) < 0)
return -1;
+ /* regenerate TLS alias for old status XMLs */
+ if (parseFlags & VIR_DOMAIN_DEF_PARSE_STATUS &&
+ disk->src->haveTLS == VIR_TRISTATE_BOOL_YES &&
+ !disk->src->tlsAlias &&
+ !(disk->src->tlsAlias = qemuAliasTLSObjFromSrcAlias(disk->info.alias)))
+ return -1;
+
return 0;
}
diff --git a/tests/qemustatusxml2xmldata/disk-secinfo-upgrade-in.xml b/tests/qemustatusxml2xmldata/disk-secinfo-upgrade-in.xml
index d364fc7644bbd935ec1955249a46ffab42c555bf..ce55a7063798962b828c1d597cb3e8e8d45f60b0 100644
--- a/tests/qemustatusxml2xmldata/disk-secinfo-upgrade-in.xml
+++ b/tests/qemustatusxml2xmldata/disk-secinfo-upgrade-in.xml
@@ -387,6 +387,16 @@