diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c index 3437302dd1..a3da80f888 100644 --- a/src/qemu/qemu_block.c +++ b/src/qemu/qemu_block.c @@ -272,13 +272,13 @@ qemuBlockDiskDetectNodes(virDomainDiskDefPtr disk, qemuBlockNodeNameBackingChainDataPtr entry = NULL; virStorageSourcePtr src = disk->src; - if (!(entry = virHashLookup(disktable, disk->info.alias))) - return 0; - /* don't attempt the detection if the top level already has node names */ if (src->nodeformat || src->nodestorage) return 0; + if (!(entry = virHashLookup(disktable, disk->info.alias))) + return 0; + while (src && entry) { if (src->nodeformat || src->nodestorage) { if (STRNEQ_NULLABLE(src->nodeformat, entry->nodeformat) ||