Bug 1122925

Summary: Maintain relative path to backing file image during live merge (block-commit)
Product: Red Hat Enterprise Linux 7 Reporter: Jan Kurik <jkurik>
Component: qemu-kvmAssignee: Jeff Cody <jcody>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: urgent Docs Contact:
Priority: high    
Version: 7.0CC: alitke, areis, bsarathy, dyuan, eblake, fsimonce, hhuang, iheim, jcody, jkurik, juzhang, knoel, mrezanin, mzhan, pm-eus, rbalakri, scohen, shu, shyu, tdosek, virt-maint
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-rhev-1.5.3-60.el7_0.10 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1061827 Environment:
Last Closed: 2014-10-20 17:20:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1061827    
Bug Blocks:    

Description Jan Kurik 2014-07-24 12:18:37 UTC
This bug has been copied from bug #1061827 and has been proposed
to be backported to 7.0 z-stream (EUS).

Comment 8 Miroslav Rezanina 2014-09-12 07:59:54 UTC
Moving to qemu-kvm component as we track 7.0.z qemu-kvm-rhev with it. qemu-kvm-rhev component is used for 7.1 and newer only.

Comment 10 Miroslav Rezanina 2014-09-29 14:00:41 UTC
Fix included in qemu-kvm-1.5.3-60.el7_0.10

Comment 12 Shaolong Hu 2014-09-30 06:42:30 UTC
Verify with qemu-kvm-rhev-1.5.3-60.el7_0.10.x86_64:

1. test "backing-file" option of block stream:

with Base->sn1->sn2->sn3:

absolute path:

{ "execute": "block-stream", "arguments": { "device": "drive-virtio-disk0", "base": "/root/nfs/RHEL-Server-7.0-64-virtio.qcow2", "speed": 1000000000,  "backing-file": "/root/nfs/RHEL-Server-7.0-64-virtio.qcow2"} }

info block:

(qemu) info block
drive-virtio-disk0: removable=0 io-status=ok file=/root/sn3 backing_file=/root/nfs/RHEL-Server-7.0-64-virtio.qcow2 backing_file_depth=1 ro=0 drv=qcow2 encrypted=0 bps=0 bps_rd=0 bps_wr=0 iops=0 iops_rd=0 iops_wr=0

relative path:

{ "execute": "block-stream", "arguments": { "device": "drive-virtio-disk0", "base": "/root/nfs/RHEL-Server-7.0-64-virtio.qcow2", "speed": 1000000000,  "backing-file": "./nfs/RHEL-Server-7.0-64-virtio.qcow2"} }

(qemu) info block
drive-virtio-disk0: removable=0 io-status=ok file=/root/sn3 backing_file=./nfs/RHEL-Server-7.0-64-virtio.qcow2 backing_file_depth=1 ro=0 drv=qcow2 encrypted=0 bps=0 bps_rd=0 bps_wr=0 iops=0 iops_rd=0 iops_wr=0


2. test "backing-file" option of block commit:

with Base->sn1->sn2->sn3:

absolute path:

{ "execute": "block-commit", "arguments": { "device": "drive-virtio-disk0", "base": "/root/nfs/RHEL-Server-7.0-64-virtio.qcow2", "top": "/root/sn2", "speed": 1000000000, "backing-file": "/root/nfs/RHEL-Server-7.0-64-virtio.qcow2"} }

(qemu) info block
drive-virtio-disk0: removable=0 io-status=ok file=/root/sn3 backing_file=/root/nfs/RHEL-Server-7.0-64-virtio.qcow2 backing_file_depth=1 ro=0 drv=qcow2 encrypted=0 bps=0 bps_rd=0 bps_wr=0 iops=0 iops_rd=0 iops_wr=0

relative path:

{ "execute": "block-commit", "arguments": { "device": "drive-virtio-disk0", "base": "/root/nfs/RHEL-Server-7.0-64-virtio.qcow2", "top": "/root/sn2", "speed": 1000000000, "backing-file": "./nfs/RHEL-Server-7.0-64-virtio.qcow2"} }

(qemu) info block
drive-virtio-disk0: removable=0 io-status=ok file=/root/sn3 backing_file=./nfs/RHEL-Server-7.0-64-virtio.qcow2 backing_file_depth=1 ro=0 drv=qcow2 encrypted=0 bps=0 bps_rd=0 bps_wr=0 iops=0 iops_rd=0 iops_wr=0

3. the NULL function "__com.redhat_change-backing-file":

{ "execute": "__com.redhat_change-backing-file", "arguments": { "device": "drive-virtio-disk0", "image-node-name": "123",  "backing-file": "./nfs/RHEL-Server-7.0-64-virtio.qcow2"} }
{"error": {"class": "GenericError", "desc": "this feature or command is not currently supported"}}


Verified.

Comment 13 Eric Blake 2014-10-07 23:03:41 UTC
See bug 1150322 for the libvirt counterpart needed to drive this.

Comment 14 dyuan 2014-10-11 02:46:28 UTC
Please refer to https://bugzilla.redhat.com/show_bug.cgi?id=1150322#c4 for the libvirt test result.

Comment 16 errata-xmlrpc 2014-10-20 17:20:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2014-1670.html