diff --git a/tests/storage-xml/pool-dir-vol.xml b/tests/storage-xml/pool-dir-vol.xml
index e6d5a6910..687121a47 100644
--- a/tests/storage-xml/pool-dir-vol.xml
+++ b/tests/storage-xml/pool-dir-vol.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-dir-volclone.xml b/tests/storage-xml/pool-dir-volclone.xml
index ea8ebae8b..a26bfd4e1 100644
--- a/tests/storage-xml/pool-dir-volclone.xml
+++ b/tests/storage-xml/pool-dir-volclone.xml
@@ -13,5 +13,9 @@
10736
10736
+ 1.1
+
+
+
diff --git a/tests/storage-xml/pool-dir-volinput.xml b/tests/storage-xml/pool-dir-volinput.xml
index e8e3018e0..49c4693e3 100644
--- a/tests/storage-xml/pool-dir-volinput.xml
+++ b/tests/storage-xml/pool-dir-volinput.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-disk-vol.xml b/tests/storage-xml/pool-disk-vol.xml
index f96726ff5..d3fac0849 100644
--- a/tests/storage-xml/pool-disk-vol.xml
+++ b/tests/storage-xml/pool-disk-vol.xml
@@ -8,5 +8,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-disk-volinput.xml b/tests/storage-xml/pool-disk-volinput.xml
index f769691ae..a1dedaa18 100644
--- a/tests/storage-xml/pool-disk-volinput.xml
+++ b/tests/storage-xml/pool-disk-volinput.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-fs-vol.xml b/tests/storage-xml/pool-fs-vol.xml
index 01c67371d..b36723d67 100644
--- a/tests/storage-xml/pool-fs-vol.xml
+++ b/tests/storage-xml/pool-fs-vol.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-fs-volclone.xml b/tests/storage-xml/pool-fs-volclone.xml
index f48639eaa..00022e7f1 100644
--- a/tests/storage-xml/pool-fs-volclone.xml
+++ b/tests/storage-xml/pool-fs-volclone.xml
@@ -13,5 +13,9 @@
10736
10736
+ 1.1
+
+
+
diff --git a/tests/storage-xml/pool-fs-volinput.xml b/tests/storage-xml/pool-fs-volinput.xml
index eb0f0993f..fed238b14 100644
--- a/tests/storage-xml/pool-fs-volinput.xml
+++ b/tests/storage-xml/pool-fs-volinput.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-logical-vol.xml b/tests/storage-xml/pool-logical-vol.xml
index aaca040f5..c782e9c77 100644
--- a/tests/storage-xml/pool-logical-vol.xml
+++ b/tests/storage-xml/pool-logical-vol.xml
@@ -8,5 +8,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-logical-volinput.xml b/tests/storage-xml/pool-logical-volinput.xml
index d51a9b06f..b27e86649 100644
--- a/tests/storage-xml/pool-logical-volinput.xml
+++ b/tests/storage-xml/pool-logical-volinput.xml
@@ -8,5 +8,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-netfs-vol.xml b/tests/storage-xml/pool-netfs-vol.xml
index c87db9fe7..526a55e84 100644
--- a/tests/storage-xml/pool-netfs-vol.xml
+++ b/tests/storage-xml/pool-netfs-vol.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/storage-xml/pool-netfs-volclone.xml b/tests/storage-xml/pool-netfs-volclone.xml
index d17d4159d..84bed8b28 100644
--- a/tests/storage-xml/pool-netfs-volclone.xml
+++ b/tests/storage-xml/pool-netfs-volclone.xml
@@ -13,5 +13,9 @@
10736
10736
+ 1.1
+
+
+
diff --git a/tests/storage-xml/pool-netfs-volinput.xml b/tests/storage-xml/pool-netfs-volinput.xml
index ee1654f7d..0765b24c2 100644
--- a/tests/storage-xml/pool-netfs-volinput.xml
+++ b/tests/storage-xml/pool-netfs-volinput.xml
@@ -9,5 +9,8 @@
10736
10736
+
+
+
diff --git a/tests/xmlparse-xml/pool-dir-vol-out.xml b/tests/xmlparse-xml/pool-dir-vol-out.xml
index fed927ba8..b23af50a8 100644
--- a/tests/xmlparse-xml/pool-dir-vol-out.xml
+++ b/tests/xmlparse-xml/pool-dir-vol-out.xml
@@ -11,6 +11,9 @@
/foo/bar
+
+
+
/my/backing
diff --git a/tests/xmlparse.py b/tests/xmlparse.py
index d49fb4a2c..a34e81839 100644
--- a/tests/xmlparse.py
+++ b/tests/xmlparse.py
@@ -1047,6 +1047,7 @@ class XMLParseTest(unittest.TestCase):
check("format", "raw", "qcow2")
check("target_path", None, "/foo/bar")
check("backing_store", "/foo/bar/baz", "/my/backing")
+ check("lazy_refcounts", False, True)
check = self._make_checker(vol.permissions)
check("mode", "0700", "0744")
diff --git a/virtinst/storage.py b/virtinst/storage.py
index fc4cd2443..b98b9153f 100644
--- a/virtinst/storage.py
+++ b/virtinst/storage.py
@@ -595,6 +595,12 @@ class StorageVolume(_StorageObject):
target_path = XMLProperty("./target/path")
backing_store = XMLProperty("./backingStore/path")
+ def _lazy_refcounts_default_cb(self):
+ return self.conn.check_support(
+ self.conn.SUPPORT_CONN_QCOW2_LAZY_REFCOUNTS)
+ lazy_refcounts = XMLProperty("./target/features/lazy_refcounts",
+ is_bool=True, default_cb=_lazy_refcounts_default_cb)
+
######################
# Public API helpers #
diff --git a/virtinst/support.py b/virtinst/support.py
index 523769850..c64bf3906 100644
--- a/virtinst/support.py
+++ b/virtinst/support.py
@@ -292,8 +292,10 @@ SUPPORT_CONN_VIRTIO_CONSOLE = _make(drv_libvirt_version=[("qemu", 8003)])
SUPPORT_CONN_PANIC_DEVICE = _make(version=1002001,
drv_version=[("qemu", 1005000),
("test", 0)])
-SUPPORT_CONN_PM_DISABLE = _make(version="10002", drv_version=[
- ("qemu", 1002000), ("test", 0)])
+SUPPORT_CONN_PM_DISABLE = _make(version="10002",
+ drv_version=[("qemu", 1002000), ("test", 0)])
+SUPPORT_CONN_QCOW2_LAZY_REFCOUNTS = _make(version="1001000",
+ drv_version=[("qemu", 1002000), ("test", 0)])
# Domain checks