Blob Blame History Raw
From 31106cd65ee58f168769bb91eab8a0e5116b7a97 Mon Sep 17 00:00:00 2001
Message-Id: <31106cd65ee58f168769bb91eab8a0e5116b7a97@dist-git>
From: Peter Krempa <pkrempa@redhat.com>
Date: Tue, 23 Jun 2020 12:23:49 +0200
Subject: [PATCH] qemublocktest: Replace 'snapshots' bitmap detection test case
 data
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Use test data which conforms to the new semantics which changed in the
previous patch.

The test data was created by the same set of commands as originally in
commit 0b27b655b1bac480186ce80457113cd5dc34e6a1

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
(cherry picked from commit ff00fa228d66b47e1b24c4a8cccf845af1d9385c)
https://bugzilla.redhat.com/show_bug.cgi?id=1804593
Message-Id: <f38005bfc322242472a18e1c05a4a44ddc4780a6.1592906423.git.pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
---
 tests/qemublocktestdata/bitmap/snapshots.json | 1382 +++++++----------
 tests/qemublocktestdata/bitmap/snapshots.out  |   13 +-
 2 files changed, 588 insertions(+), 807 deletions(-)

diff --git a/tests/qemublocktestdata/bitmap/snapshots.json b/tests/qemublocktestdata/bitmap/snapshots.json
index 87e77ad408..2a20aea812 100644
--- a/tests/qemublocktestdata/bitmap/snapshots.json
+++ b/tests/qemublocktestdata/bitmap/snapshots.json
@@ -1,836 +1,612 @@
 [
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "backing-image": {
-                "backing-image": {
-                    "backing-image": {
-                        "backing-image": {
-                            "virtual-size": 10485760,
-                            "filename": "/tmp/pull4.qcow2",
-                            "cluster-size": 65536,
-                            "format": "qcow2",
-                            "actual-size": 208896,
-                            "format-specific": {
-                                "type": "qcow2",
-                                "data": {
-                                    "compat": "1.1",
-                                    "lazy-refcounts": false,
-                                    "bitmaps": [
-                                        {
-                                            "flags": [
-                                                "auto"
-                                            ],
-                                            "name": "a",
-                                            "granularity": 65536
-                                        }
-                                    ],
-                                    "refcount-bits": 16,
-                                    "corrupt": false
-                                }
-                            },
-                            "dirty-flag": false
-                        },
-                        "backing-filename-format": "qcow2",
-                        "virtual-size": 10485760,
-                        "filename": "/tmp/pull4.1575911522",
-                        "cluster-size": 65536,
-                        "format": "qcow2",
-                        "actual-size": 208896,
-                        "format-specific": {
-                            "type": "qcow2",
-                            "data": {
-                                "compat": "1.1",
-                                "lazy-refcounts": false,
-                                "bitmaps": [
-                                    {
-                                        "flags": [
-                                            "auto"
-                                        ],
-                                        "name": "a",
-                                        "granularity": 65536
-                                    }
-                                ],
-                                "refcount-bits": 16,
-                                "corrupt": false
-                            }
-                        },
-                        "full-backing-filename": "/tmp/pull4.qcow2",
-                        "backing-filename": "/tmp/pull4.qcow2",
-                        "dirty-flag": false
-                    },
-                    "backing-filename-format": "qcow2",
-                    "virtual-size": 10485760,
-                    "filename": "/tmp/pull4.1575911527",
-                    "cluster-size": 65536,
-                    "format": "qcow2",
-                    "actual-size": 217088,
-                    "format-specific": {
-                        "type": "qcow2",
-                        "data": {
-                            "compat": "1.1",
-                            "lazy-refcounts": false,
-                            "bitmaps": [
-                                {
-                                    "flags": [
-                                        "auto"
-                                    ],
-                                    "name": "c",
-                                    "granularity": 65536
-                                },
-                                {
-                                    "flags": [
-
-                                    ],
-                                    "name": "b",
-                                    "granularity": 65536
-                                },
-                                {
-                                    "flags": [
-
-                                    ],
-                                    "name": "a",
-                                    "granularity": 65536
-                                }
-                            ],
-                            "refcount-bits": 16,
-                            "corrupt": false
-                        }
-                    },
-                    "full-backing-filename": "/tmp/pull4.1575911522",
-                    "backing-filename": "/tmp/pull4.1575911522",
-                    "dirty-flag": false
-                },
-                "backing-filename-format": "qcow2",
-                "virtual-size": 10485760,
-                "filename": "/tmp/pull4.1575911540",
-                "cluster-size": 65536,
-                "format": "qcow2",
-                "actual-size": 212992,
-                "format-specific": {
-                    "type": "qcow2",
-                    "data": {
-                        "compat": "1.1",
-                        "lazy-refcounts": false,
-                        "bitmaps": [
-                            {
-                                "flags": [
-                                    "auto"
-                                ],
-                                "name": "d",
-                                "granularity": 65536
-                            },
-                            {
-                                "flags": [
-
-                                ],
-                                "name": "c",
-                                "granularity": 65536
-                            }
-                        ],
-                        "refcount-bits": 16,
-                        "corrupt": false
-                    }
-                },
-                "full-backing-filename": "/tmp/pull4.1575911527",
-                "backing-filename": "/tmp/pull4.1575911527",
-                "dirty-flag": false
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "backing-filename-format": "qcow2",
+      "virtual-size": 104857600,
+      "filename": "/tmp/bitmaps.1591792950",
+      "cluster-size": 65536,
+      "format": "qcow2",
+      "actual-size": 225280,
+      "format-specific": {
+        "type": "qcow2",
+        "data": {
+          "compat": "1.1",
+          "compression-type": "zlib",
+          "lazy-refcounts": false,
+          "bitmaps": [
+            {
+              "flags": [
+                "in-use",
+                "auto"
+              ],
+              "name": "current",
+              "granularity": 65536
+            },
+            {
+              "flags": [
+                "in-use",
+                "auto"
+              ],
+              "name": "c",
+              "granularity": 65536
             },
-            "backing-filename-format": "qcow2",
-            "virtual-size": 10485760,
-            "filename": "/tmp/pull4.1575911550",
-            "cluster-size": 65536,
-            "format": "qcow2",
-            "actual-size": 212992,
-            "format-specific": {
-                "type": "qcow2",
-                "data": {
-                    "compat": "1.1",
-                    "lazy-refcounts": false,
-                    "bitmaps": [
-                        {
-                            "flags": [
-                                "in-use",
-                                "auto"
-                            ],
-                            "name": "current",
-                            "granularity": 65536
-                        },
-                        {
-                            "flags": [
-                                "in-use"
-                            ],
-                            "name": "d",
-                            "granularity": 65536
-                        }
-                    ],
-                    "refcount-bits": 16,
-                    "corrupt": false
-                }
+            {
+              "flags": [
+                "in-use",
+                "auto"
+              ],
+              "name": "b",
+              "granularity": 65536
             },
-            "full-backing-filename": "/tmp/pull4.1575911540",
-            "backing-filename": "/tmp/pull4.1575911540",
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": false,
-        "node-name": "libvirt-1-format",
-        "backing_file_depth": 4,
-        "drv": "qcow2",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "backing_file": "/tmp/pull4.1575911540",
-        "dirty-bitmaps": [
             {
-                "name": "d",
-                "recording": false,
-                "persistent": true,
-                "busy": false,
-                "status": "disabled",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "in-use",
+                "auto"
+              ],
+              "name": "a",
+              "granularity": 65536
             },
             {
-                "name": "current",
-                "recording": true,
-                "persistent": true,
-                "busy": false,
-                "status": "active",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "in-use",
+                "auto"
+              ],
+              "name": "d",
+              "granularity": 65536
             }
-        ],
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911550",
-        "encryption_key_missing": false
+          ],
+          "refcount-bits": 16,
+          "corrupt": false
+        }
+      },
+      "full-backing-filename": "/tmp/bitmaps.1591792938",
+      "backing-filename": "/tmp/bitmaps.1591792938",
+      "dirty-flag": false
+    },
+    "iops_wr": 0,
+    "ro": false,
+    "node-name": "libvirt-1-format",
+    "backing_file_depth": 0,
+    "drv": "qcow2",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "backing_file": "/tmp/bitmaps.1591792938",
+    "dirty-bitmaps": [
+      {
+        "name": "d",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "a",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "b",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "c",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "current",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      }
+    ],
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
+    },
+    "file": "/tmp/bitmaps.1591792950",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "virtual-size": 590336,
+      "filename": "/tmp/bitmaps.1591792950",
+      "format": "file",
+      "actual-size": 225280,
+      "dirty-flag": false
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "virtual-size": 393728,
-            "filename": "/tmp/pull4.1575911550",
-            "format": "file",
-            "actual-size": 212992,
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": false,
-        "node-name": "libvirt-1-storage",
-        "backing_file_depth": 0,
-        "drv": "file",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911550",
-        "encryption_key_missing": false
+    "iops_wr": 0,
+    "ro": false,
+    "node-name": "libvirt-1-storage",
+    "backing_file_depth": 0,
+    "drv": "file",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "backing-image": {
-                "backing-image": {
-                    "backing-image": {
-                        "virtual-size": 10485760,
-                        "filename": "/tmp/pull4.qcow2",
-                        "cluster-size": 65536,
-                        "format": "qcow2",
-                        "actual-size": 208896,
-                        "format-specific": {
-                            "type": "qcow2",
-                            "data": {
-                                "compat": "1.1",
-                                "lazy-refcounts": false,
-                                "bitmaps": [
-                                    {
-                                        "flags": [
-                                            "auto"
-                                        ],
-                                        "name": "a",
-                                        "granularity": 65536
-                                    }
-                                ],
-                                "refcount-bits": 16,
-                                "corrupt": false
-                            }
-                        },
-                        "dirty-flag": false
-                    },
-                    "backing-filename-format": "qcow2",
-                    "virtual-size": 10485760,
-                    "filename": "/tmp/pull4.1575911522",
-                    "cluster-size": 65536,
-                    "format": "qcow2",
-                    "actual-size": 208896,
-                    "format-specific": {
-                        "type": "qcow2",
-                        "data": {
-                            "compat": "1.1",
-                            "lazy-refcounts": false,
-                            "bitmaps": [
-                                {
-                                    "flags": [
-                                        "auto"
-                                    ],
-                                    "name": "a",
-                                    "granularity": 65536
-                                }
-                            ],
-                            "refcount-bits": 16,
-                            "corrupt": false
-                        }
-                    },
-                    "full-backing-filename": "/tmp/pull4.qcow2",
-                    "backing-filename": "/tmp/pull4.qcow2",
-                    "dirty-flag": false
-                },
-                "backing-filename-format": "qcow2",
-                "virtual-size": 10485760,
-                "filename": "/tmp/pull4.1575911527",
-                "cluster-size": 65536,
-                "format": "qcow2",
-                "actual-size": 217088,
-                "format-specific": {
-                    "type": "qcow2",
-                    "data": {
-                        "compat": "1.1",
-                        "lazy-refcounts": false,
-                        "bitmaps": [
-                            {
-                                "flags": [
-                                    "auto"
-                                ],
-                                "name": "c",
-                                "granularity": 65536
-                            },
-                            {
-                                "flags": [
-
-                                ],
-                                "name": "b",
-                                "granularity": 65536
-                            },
-                            {
-                                "flags": [
-
-                                ],
-                                "name": "a",
-                                "granularity": 65536
-                            }
-                        ],
-                        "refcount-bits": 16,
-                        "corrupt": false
-                    }
-                },
-                "full-backing-filename": "/tmp/pull4.1575911522",
-                "backing-filename": "/tmp/pull4.1575911522",
-                "dirty-flag": false
+    "file": "/tmp/bitmaps.1591792950",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "backing-filename-format": "qcow2",
+      "virtual-size": 104857600,
+      "filename": "/tmp/bitmaps.1591792938",
+      "cluster-size": 65536,
+      "format": "qcow2",
+      "actual-size": 221184,
+      "format-specific": {
+        "type": "qcow2",
+        "data": {
+          "compat": "1.1",
+          "compression-type": "zlib",
+          "lazy-refcounts": false,
+          "bitmaps": [
+            {
+              "flags": [
+                "auto"
+              ],
+              "name": "d",
+              "granularity": 65536
             },
-            "backing-filename-format": "qcow2",
-            "virtual-size": 10485760,
-            "filename": "/tmp/pull4.1575911540",
-            "cluster-size": 65536,
-            "format": "qcow2",
-            "actual-size": 212992,
-            "format-specific": {
-                "type": "qcow2",
-                "data": {
-                    "compat": "1.1",
-                    "lazy-refcounts": false,
-                    "bitmaps": [
-                        {
-                            "flags": [
-                                "auto"
-                            ],
-                            "name": "d",
-                            "granularity": 65536
-                        },
-                        {
-                            "flags": [
-
-                            ],
-                            "name": "c",
-                            "granularity": 65536
-                        }
-                    ],
-                    "refcount-bits": 16,
-                    "corrupt": false
-                }
+            {
+              "flags": [
+                "auto"
+              ],
+              "name": "a",
+              "granularity": 65536
             },
-            "full-backing-filename": "/tmp/pull4.1575911527",
-            "backing-filename": "/tmp/pull4.1575911527",
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": true,
-        "node-name": "libvirt-2-format",
-        "backing_file_depth": 3,
-        "drv": "qcow2",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "backing_file": "/tmp/pull4.1575911527",
-        "dirty-bitmaps": [
             {
-                "name": "c",
-                "recording": false,
-                "persistent": true,
-                "busy": false,
-                "status": "disabled",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "b",
+              "granularity": 65536
             },
             {
-                "name": "d",
-                "recording": true,
-                "persistent": true,
-                "busy": false,
-                "status": "active",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "c",
+              "granularity": 65536
             }
-        ],
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911540",
-        "encryption_key_missing": false
+          ],
+          "refcount-bits": 16,
+          "corrupt": false
+        }
+      },
+      "full-backing-filename": "/tmp/bitmaps.1591792930",
+      "backing-filename": "/tmp/bitmaps.1591792930",
+      "dirty-flag": false
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "virtual-size": 393728,
-            "filename": "/tmp/pull4.1575911540",
-            "format": "file",
-            "actual-size": 212992,
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": false,
-        "node-name": "libvirt-2-storage",
-        "backing_file_depth": 0,
-        "drv": "file",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911540",
-        "encryption_key_missing": false
+    "iops_wr": 0,
+    "ro": true,
+    "node-name": "libvirt-2-format",
+    "backing_file_depth": 0,
+    "drv": "qcow2",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "backing_file": "/tmp/bitmaps.1591792930",
+    "dirty-bitmaps": [
+      {
+        "name": "c",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "b",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "a",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "d",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      }
+    ],
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "backing-image": {
-                "backing-image": {
-                    "virtual-size": 10485760,
-                    "filename": "/tmp/pull4.qcow2",
-                    "cluster-size": 65536,
-                    "format": "qcow2",
-                    "actual-size": 208896,
-                    "format-specific": {
-                        "type": "qcow2",
-                        "data": {
-                            "compat": "1.1",
-                            "lazy-refcounts": false,
-                            "bitmaps": [
-                                {
-                                    "flags": [
-                                        "auto"
-                                    ],
-                                    "name": "a",
-                                    "granularity": 65536
-                                }
-                            ],
-                            "refcount-bits": 16,
-                            "corrupt": false
-                        }
-                    },
-                    "dirty-flag": false
-                },
-                "backing-filename-format": "qcow2",
-                "virtual-size": 10485760,
-                "filename": "/tmp/pull4.1575911522",
-                "cluster-size": 65536,
-                "format": "qcow2",
-                "actual-size": 208896,
-                "format-specific": {
-                    "type": "qcow2",
-                    "data": {
-                        "compat": "1.1",
-                        "lazy-refcounts": false,
-                        "bitmaps": [
-                            {
-                                "flags": [
-                                    "auto"
-                                ],
-                                "name": "a",
-                                "granularity": 65536
-                            }
-                        ],
-                        "refcount-bits": 16,
-                        "corrupt": false
-                    }
-                },
-                "full-backing-filename": "/tmp/pull4.qcow2",
-                "backing-filename": "/tmp/pull4.qcow2",
-                "dirty-flag": false
-            },
-            "backing-filename-format": "qcow2",
-            "virtual-size": 10485760,
-            "filename": "/tmp/pull4.1575911527",
-            "cluster-size": 65536,
-            "format": "qcow2",
-            "actual-size": 217088,
-            "format-specific": {
-                "type": "qcow2",
-                "data": {
-                    "compat": "1.1",
-                    "lazy-refcounts": false,
-                    "bitmaps": [
-                        {
-                            "flags": [
-                                "auto"
-                            ],
-                            "name": "c",
-                            "granularity": 65536
-                        },
-                        {
-                            "flags": [
-
-                            ],
-                            "name": "b",
-                            "granularity": 65536
-                        },
-                        {
-                            "flags": [
-
-                            ],
-                            "name": "a",
-                            "granularity": 65536
-                        }
-                    ],
-                    "refcount-bits": 16,
-                    "corrupt": false
-                }
-            },
-            "full-backing-filename": "/tmp/pull4.1575911522",
-            "backing-filename": "/tmp/pull4.1575911522",
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": true,
-        "node-name": "libvirt-3-format",
-        "backing_file_depth": 2,
-        "drv": "qcow2",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "backing_file": "/tmp/pull4.1575911522",
-        "dirty-bitmaps": [
+    "file": "/tmp/bitmaps.1591792938",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "virtual-size": 524800,
+      "filename": "/tmp/bitmaps.1591792938",
+      "format": "file",
+      "actual-size": 221184,
+      "dirty-flag": false
+    },
+    "iops_wr": 0,
+    "ro": false,
+    "node-name": "libvirt-2-storage",
+    "backing_file_depth": 0,
+    "drv": "file",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
+    },
+    "file": "/tmp/bitmaps.1591792938",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "backing-filename-format": "qcow2",
+      "virtual-size": 104857600,
+      "filename": "/tmp/bitmaps.1591792930",
+      "cluster-size": 65536,
+      "format": "qcow2",
+      "actual-size": 217088,
+      "format-specific": {
+        "type": "qcow2",
+        "data": {
+          "compat": "1.1",
+          "compression-type": "zlib",
+          "lazy-refcounts": false,
+          "bitmaps": [
             {
-                "name": "a",
-                "recording": false,
-                "persistent": true,
-                "busy": false,
-                "status": "disabled",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "c",
+              "granularity": 65536
             },
             {
-                "name": "b",
-                "recording": false,
-                "persistent": true,
-                "busy": false,
-                "status": "disabled",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "b",
+              "granularity": 65536
             },
             {
-                "name": "c",
-                "recording": true,
-                "persistent": true,
-                "busy": false,
-                "status": "active",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "a",
+              "granularity": 65536
             }
-        ],
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911527",
-        "encryption_key_missing": false
+          ],
+          "refcount-bits": 16,
+          "corrupt": false
+        }
+      },
+      "full-backing-filename": "/tmp/bitmaps.1591792925",
+      "backing-filename": "/tmp/bitmaps.1591792925",
+      "dirty-flag": false
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "virtual-size": 459264,
-            "filename": "/tmp/pull4.1575911527",
-            "format": "file",
-            "actual-size": 217088,
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": false,
-        "node-name": "libvirt-3-storage",
-        "backing_file_depth": 0,
-        "drv": "file",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911527",
-        "encryption_key_missing": false
+    "iops_wr": 0,
+    "ro": true,
+    "node-name": "libvirt-3-format",
+    "backing_file_depth": 0,
+    "drv": "qcow2",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "backing_file": "/tmp/bitmaps.1591792925",
+    "dirty-bitmaps": [
+      {
+        "name": "a",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "b",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      },
+      {
+        "name": "c",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      }
+    ],
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "backing-image": {
-                "virtual-size": 10485760,
-                "filename": "/tmp/pull4.qcow2",
-                "cluster-size": 65536,
-                "format": "qcow2",
-                "actual-size": 208896,
-                "format-specific": {
-                    "type": "qcow2",
-                    "data": {
-                        "compat": "1.1",
-                        "lazy-refcounts": false,
-                        "bitmaps": [
-                            {
-                                "flags": [
-                                    "auto"
-                                ],
-                                "name": "a",
-                                "granularity": 65536
-                            }
-                        ],
-                        "refcount-bits": 16,
-                        "corrupt": false
-                    }
-                },
-                "dirty-flag": false
-            },
-            "backing-filename-format": "qcow2",
-            "virtual-size": 10485760,
-            "filename": "/tmp/pull4.1575911522",
-            "cluster-size": 65536,
-            "format": "qcow2",
-            "actual-size": 208896,
-            "format-specific": {
-                "type": "qcow2",
-                "data": {
-                    "compat": "1.1",
-                    "lazy-refcounts": false,
-                    "bitmaps": [
-                        {
-                            "flags": [
-                                "auto"
-                            ],
-                            "name": "a",
-                            "granularity": 65536
-                        }
-                    ],
-                    "refcount-bits": 16,
-                    "corrupt": false
-                }
-            },
-            "full-backing-filename": "/tmp/pull4.qcow2",
-            "backing-filename": "/tmp/pull4.qcow2",
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": true,
-        "node-name": "libvirt-4-format",
-        "backing_file_depth": 1,
-        "drv": "qcow2",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "backing_file": "/tmp/pull4.qcow2",
-        "dirty-bitmaps": [
+    "file": "/tmp/bitmaps.1591792930",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "virtual-size": 459264,
+      "filename": "/tmp/bitmaps.1591792930",
+      "format": "file",
+      "actual-size": 217088,
+      "dirty-flag": false
+    },
+    "iops_wr": 0,
+    "ro": false,
+    "node-name": "libvirt-3-storage",
+    "backing_file_depth": 0,
+    "drv": "file",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
+    },
+    "file": "/tmp/bitmaps.1591792930",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "backing-filename-format": "qcow2",
+      "virtual-size": 104857600,
+      "filename": "/tmp/bitmaps.1591792925",
+      "cluster-size": 65536,
+      "format": "qcow2",
+      "actual-size": 208896,
+      "format-specific": {
+        "type": "qcow2",
+        "data": {
+          "compat": "1.1",
+          "compression-type": "zlib",
+          "lazy-refcounts": false,
+          "bitmaps": [
             {
-                "name": "a",
-                "recording": true,
-                "persistent": true,
-                "busy": false,
-                "status": "active",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "a",
+              "granularity": 65536
             }
-        ],
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911522",
-        "encryption_key_missing": false
+          ],
+          "refcount-bits": 16,
+          "corrupt": false
+        }
+      },
+      "full-backing-filename": "/tmp/bitmaps.qcow2",
+      "backing-filename": "/tmp/bitmaps.qcow2",
+      "dirty-flag": false
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "virtual-size": 328192,
-            "filename": "/tmp/pull4.1575911522",
-            "format": "file",
-            "actual-size": 208896,
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": false,
-        "node-name": "libvirt-4-storage",
-        "backing_file_depth": 0,
-        "drv": "file",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.1575911522",
-        "encryption_key_missing": false
+    "iops_wr": 0,
+    "ro": true,
+    "node-name": "libvirt-4-format",
+    "backing_file_depth": 0,
+    "drv": "qcow2",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "backing_file": "/tmp/bitmaps.qcow2",
+    "dirty-bitmaps": [
+      {
+        "name": "a",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      }
+    ],
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "virtual-size": 10485760,
-            "filename": "/tmp/pull4.qcow2",
-            "cluster-size": 65536,
-            "format": "qcow2",
-            "actual-size": 208896,
-            "format-specific": {
-                "type": "qcow2",
-                "data": {
-                    "compat": "1.1",
-                    "lazy-refcounts": false,
-                    "bitmaps": [
-                        {
-                            "flags": [
-                                "auto"
-                            ],
-                            "name": "a",
-                            "granularity": 65536
-                        }
-                    ],
-                    "refcount-bits": 16,
-                    "corrupt": false
-                }
-            },
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": true,
-        "node-name": "libvirt-5-format",
-        "backing_file_depth": 0,
-        "drv": "qcow2",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "dirty-bitmaps": [
+    "file": "/tmp/bitmaps.1591792925",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "virtual-size": 328192,
+      "filename": "/tmp/bitmaps.1591792925",
+      "format": "file",
+      "actual-size": 208896,
+      "dirty-flag": false
+    },
+    "iops_wr": 0,
+    "ro": false,
+    "node-name": "libvirt-4-storage",
+    "backing_file_depth": 0,
+    "drv": "file",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
+    },
+    "file": "/tmp/bitmaps.1591792925",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "virtual-size": 104857600,
+      "filename": "/tmp/bitmaps.qcow2",
+      "cluster-size": 65536,
+      "format": "qcow2",
+      "actual-size": 208896,
+      "format-specific": {
+        "type": "qcow2",
+        "data": {
+          "compat": "1.1",
+          "compression-type": "zlib",
+          "lazy-refcounts": false,
+          "bitmaps": [
             {
-                "name": "a",
-                "recording": true,
-                "persistent": true,
-                "busy": false,
-                "status": "active",
-                "granularity": 65536,
-                "count": 0
+              "flags": [
+                "auto"
+              ],
+              "name": "a",
+              "granularity": 65536
             }
-        ],
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.qcow2",
-        "encryption_key_missing": false
+          ],
+          "refcount-bits": 16,
+          "corrupt": false
+        }
+      },
+      "dirty-flag": false
+    },
+    "iops_wr": 0,
+    "ro": true,
+    "node-name": "libvirt-5-format",
+    "backing_file_depth": 0,
+    "drv": "qcow2",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "dirty-bitmaps": [
+      {
+        "name": "a",
+        "recording": true,
+        "persistent": true,
+        "busy": false,
+        "status": "active",
+        "granularity": 65536,
+        "count": 0
+      }
+    ],
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
+    },
+    "file": "/tmp/bitmaps.qcow2",
+    "encryption_key_missing": false
+  },
+  {
+    "iops_rd": 0,
+    "detect_zeroes": "off",
+    "image": {
+      "virtual-size": 328192,
+      "filename": "/tmp/bitmaps.qcow2",
+      "format": "file",
+      "actual-size": 208896,
+      "dirty-flag": false
+    },
+    "iops_wr": 0,
+    "ro": false,
+    "node-name": "libvirt-5-storage",
+    "backing_file_depth": 0,
+    "drv": "file",
+    "iops": 0,
+    "bps_wr": 0,
+    "write_threshold": 0,
+    "encrypted": false,
+    "bps": 0,
+    "bps_rd": 0,
+    "cache": {
+      "no-flush": false,
+      "direct": false,
+      "writeback": true
     },
-    {
-        "iops_rd": 0,
-        "detect_zeroes": "off",
-        "image": {
-            "virtual-size": 328192,
-            "filename": "/tmp/pull4.qcow2",
-            "format": "file",
-            "actual-size": 208896,
-            "dirty-flag": false
-        },
-        "iops_wr": 0,
-        "ro": false,
-        "node-name": "libvirt-5-storage",
-        "backing_file_depth": 0,
-        "drv": "file",
-        "iops": 0,
-        "bps_wr": 0,
-        "write_threshold": 0,
-        "encrypted": false,
-        "bps": 0,
-        "bps_rd": 0,
-        "cache": {
-            "no-flush": false,
-            "direct": false,
-            "writeback": true
-        },
-        "file": "/tmp/pull4.qcow2",
-        "encryption_key_missing": false
-    }
+    "file": "/tmp/bitmaps.qcow2",
+    "encryption_key_missing": false
+  }
 ]
diff --git a/tests/qemublocktestdata/bitmap/snapshots.out b/tests/qemublocktestdata/bitmap/snapshots.out
index 5dafe946cf..24ca27e4d8 100644
--- a/tests/qemublocktestdata/bitmap/snapshots.out
+++ b/tests/qemublocktestdata/bitmap/snapshots.out
@@ -1,12 +1,17 @@
 libvirt-1-format:
-        d: record:0 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        d: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        a: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        b: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        c: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
   current: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
 libvirt-2-format:
-        c: record:0 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        c: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        b: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        a: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
         d: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
 libvirt-3-format:
-        a: record:0 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
-        b: record:0 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        a: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        b: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
         c: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
 libvirt-4-format:
         a: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
-- 
2.27.0