On Sat, Jun 21, 2014 at 04:04:45PM +0530, Kashyap Chamarthy wrote: > I just tried to test this series built from Eric's libvirt git repo, and > QEMU built from its git. > > On a live (or offline guest) I see the below: > > $ virsh blockcommit f20vm1 vda --shallow --wait \ > --verbose --pivot --active > error: unsupported flags (0x4) in function qemuDomainBlockCommit Okay, I had a chat with Peter Krempa on #virt (OFTC). Couple of things: - I didn't restart libvirtd after I updated RPMs built from git. - After a restart, I tried active commit again via libvirt, this time it failed saying it's not supported on the QEMU binary I built from commit 0360fbd (17JUN). - I guess for your testing you must have tested by applying Jef's patches "block: make 'top' argument to bloc"[1] manually. Eric just pinged on #virt (OFTC) to clarify the above as I was writing this email. Thanks. [1] https://lists.gnu.org/archive/html/qemu-devel/2014-06/msg04060.html > > I also tried: > > $ virsh blockcommit --domain f20vm1 vda \ > --base /home/kashyap/vmimages/snap3-f20vm1.qcow2 \ > --top /home/kashyap/vmimages/snap4-f20vm1.qcow2 \ > --wait --verbose --pivot --active > error: unsupported flags (0x4) in function qemuDomainBlockCommit > > Is that expected? > > Test notes below on QEMU and Libvirt commit details. > > > Details > ======= > > QEMU info > --------- > > Build a local QEMU with this git commit. > > $ git log | head -6 > commit 0360fbd076e8bdbb9498598b0c559464346babe4 > Merge: af44da8 d3606f0 > Author: Peter Maydell <peter.maydell@xxxxxxxxxx> > Date: Tue Jun 17 16:08:06 2014 +0100 > > Merge remote-tracking branch 'remotes/riku/linux-user-for-upstream' into staging > > > libvirt info > ------------ > > How I built the libvirt: > > $ git clone git://repo.or.cz/libvirt/ericb.git && cd ericb > > $ git log | head -5 > commit c23db4dbc9b4ed91b37ba5d8ee1eff6bb8b32b0e > Author: Eric Blake <eblake@xxxxxxxxxx> > Date: Thu Jun 5 13:26:56 2014 -0600 > > blockcommit: turn on active commit > > $ ./autgen.sh && make -j4 && make rpm > > $ cd ~/rpmbuild/RPMS/x86_64 > > $ rpm -Uvh *.rpm > > $ virsh --version > 1.2.6 > > > Test > ---- > > 0. Edit the libvirt XML of the guest to point to the newly build QEMU > from above. > > $ virsh dumpxml f20vm1 | grep qemu-system-x86_64 > <emulator>/home/kashyap/build/qemu/x86_64-softmmu/qemu-system-x86_64</emulator> > > > 1. Start the guest and list it: > > $ virsh list > Id Name State > ---------------------------------------------------- > 5 f20vm1 running > > (Note: All the images, including base are QCOW2 disk images.) > > > 2. Create 4 live, disk-only external snapshots. > > $ virsh snapshot-create-as f20vm1 snap1 snap1-desc \ > --diskspec vda,file=/home/kashyap/vmimages/snap1-f20vm1.qcow2 > --disk-only > > (Repeat the above 4 times. Before taking each snapshot, add a file > (/root/file1 or some such) to distinguish content from each snapshot > image.) > > > 3. List the snapshots > > $ virsh snapshot-list f20vm1 > Name Creation Time State > ------------------------------------------------------------ > snap1 2014-06-21 02:28:26 +0530 disk-snapshot > snap2 2014-06-21 02:30:27 +0530 disk-snapshot > snap3 2014-06-21 02:31:38 +0530 disk-snapshot > snap4 2014-06-21 02:33:52 +0530 disk-snapshot > > > So, the current chain is: > > base <-- snap1 <-- snap2 <-- snap3 <-- snap4 > > Desired chain: > > base <-- snap4 > > > 4. Invoke blockcommit test: > > $ virsh blockcommit f20vm1 vda --shallow --wait \ > --verbose --pivot --active > error: unsupported flags (0x4) in function qemuDomainBlockCommit > > > What am I missing? > > -- > /kashyap > > -- > libvir-list mailing list > libvir-list@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/libvir-list -- /kashyap -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list