storage_backend_rbd.c uses an RBD clone operation to implement buildVolFrom.
If I'm understanding the RBD documentation correctly, you cannot delete
the parent until the clone has been deleted:
http://docs.ceph.com/docs/master/dev/rbd-layering/
"Before cloning a snapshot, you must mark it as protected, to prevent it
from being deleted while child images refer to it:"
&
"To delete the parent, you must first mark it unprotected, which checks
that there are no children left:"
Is libvirt okay with those semantics for volumes? That is, if you clone
a volume, is it acceptable that you cannot delete the parent until you
delete the clone?
The answer to this affects how I'll write a patch to implement
buildVolFrom for storage_backend_zfs.c.
--
Richard