Bug 1135385 - execute query-block QMP command fail to list the NBD storage backend file/filename
Summary: execute query-block QMP command fail to list the NBD storage backend file/fil...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev
Version: 7.0
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Max Reitz
QA Contact: Virtualization Bugs
URL:
Whiteboard:
: 1091163 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-08-29 08:01 UTC by Sibiao Luo
Modified: 2015-12-04 16:17 UTC (History)
12 users (show)

Fixed In Version: 2.3.0
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-12-04 16:17:59 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:2546 normal SHIPPED_LIVE qemu-kvm-rhev bug fix and enhancement update 2015-12-04 21:11:56 UTC

Description Sibiao Luo 2014-08-29 08:01:24 UTC
Description of problem:
as subject, also tried the libscsi/iSCSI/glusterfs/local storage backends which did not hit this issue.

Version-Release number of selected component (if applicable):
host info:
# uname -r && rpm -q qemu-kvm-rhev
3.10.0-145.el7.x86_64
qemu-kvm-rhev-2.1.0-2.el7.x86_64
# rpm -qa | grep nbd
nbd-2.9.20-3.el7.x86_64
nbd-debuginfo-2.9.20-3.el7.x86_64
guest info:
3.10.0-145.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.export a image with absolute path on the NBD server host.
# nbd-server 12345 /home/my-data-disk.qcow2

2.launch a KVM guest with the nbd storage backends.
e.g:...-drive file=nbd:10.66.11.154:12345,if,if=none,id=drive-data-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-blk-pci,drive=drive-data-disk,id=data-disk,config-wce=off,x-data-plane=on,bus=pci.0,addr=0x7

3.connect the QMP monitor to check the blocks info.
{"execute":"query-block"}

Actual results:
after step 3, QEMU fail to list the NBD storage backend file and filename.
{"io-status": "ok", "device": "drive-data-disk", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 10737418240, "filename": "", "cluster-size": 65536, "format": "qcow2", "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "lazy-refcounts": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "", "encryption_key_missing": false}, "type": "unknown"}

Expected results:
it should list it in QMP monitor.

Additional info:
{"execute":"query-block"}
{"return": [{"io-status": "ok", "device": "drive-system-disk", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 10737418240, "filename": "/home/RHEL-7.0-20140507.0-Server-x86_64.qcow2", "cluster-size": 65536, "format": "qcow2", "actual-size": 7269588992, "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "lazy-refcounts": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "/home/RHEL-7.0-20140507.0-Server-x86_64.qcow2", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "drive-data-disk", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 10737418240, "filename": "", "cluster-size": 65536, "format": "qcow2", "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "lazy-refcounts": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "ide1-cd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "floppy0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "sd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}]}

Comment 1 Max Reitz 2014-11-04 08:14:17 UTC
*** Bug 1091163 has been marked as a duplicate of this bug. ***

Comment 4 Max Reitz 2015-06-10 15:23:52 UTC
Fixed by RHEV rebase to 2.3:

{'execute':'qmp_capabilities'}
{"return": {}}
{'execute':'query-block'}
{"return": [{"io-status": "ok", "device": "drive-data-disk", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 67108864, "filename": "nbd://localhost:10809", "format": "raw"}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "raw", "iops": 0, "bps_wr": 0, "write_threshold": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "cache": {"no-flush": false, "direct": true, "writeback": false}, "file": "nbd://localhost:10809", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "ide1-cd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "floppy0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}, {"device": "sd0", "locked": false, "removable": true, "tray_open": false, "type": "unknown"}]}

(note the "filename": "nbd://localhost:10809")

Max

Comment 5 mazhang 2015-07-02 02:35:08 UTC
Reproduce this bug on qemu-kvm-rhev-2.1.2-16.el7

Host:
qemu-kvm-rhev-2.1.2-16.el7
3.10.0-287.el7.x86_64

Steps:
1. Start nbd-server export a block image.

2. Start qemu-kvm with following command line.
/usr/libexec/qemu-kvm \
-M pc \
-cpu SandyBridge,hv_time \
-no-user-config -nodefaults -rtc base=utc -no-hpet \
-m 2G \
-smp 4,sockets=1,cores=2,threads=2 \
-enable-kvm \
-name rhel6.7 \
-uuid 990ea161-6b67-47b2-b803-19fb01d30d12 \
-smbios type=1,manufacturer='Red Hat',product='RHEV Hypervisor',version=el6,serial=koTUXQrb,uuid=feebc8fd-f8b0-4e75-abc3-e63fcdb67170 \
-k en-us \
-monitor stdio \
-qmp tcp:0:6660,server,nowait \
-serial unix:/tmp/serial0,server,nowait \
-boot menu=on \
-bios /usr/share/seabios/bios.bin \
-vga std \
-vnc :0 \
-netdev tap,id=hostnet0,vhost=on \
-device virtio-net-pci,netdev=hostnet0,id=net0,mac=54:52:00:B6:40:20 \
-drive file=/home/RHEL-Server-7.1-64-virtio.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,cache=none,werror=stop,rerror=stop,aio=threads \
-device virtio-blk-pci,scsi=off,bus=pci.0,drive=drive-virtio-disk0,id=virtio-disk0 \
-drive file=nbd:10.66.144.29:12345,if=none,id=drive-virtio-disk1,format=qcow2,cache=none,werror=stop,rerror=stop,aio=threads \
-device virtio-blk-pci,scsi=off,bus=pci.0,drive=drive-virtio-disk1,id=virtio-disk1 \

3. Check block in qmp.

Result:
No nbd backend in list.
{"QMP": {"version": {"qemu": {"micro": 2, "minor": 1, "major": 2}, "package": " (qemu-kvm-rhev-2.1.2-16.el7)"}, "capabilities": []}}
{"execute":"qmp_capabilities"}
{"return": {}}
{"execute":"query-block"}
{"return": [{"io-status": "ok", "device": "drive-virtio-disk0", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 21474836480, "filename": "/home/RHEL-Server-7.1-64-virtio.qcow2", "cluster-size": 65536, "format": "qcow2", "actual-size": 5116919808, "format-specific": {"type": "qcow2", "data": {"compat": "0.10"}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "/home/RHEL-Server-7.1-64-virtio.qcow2", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "drive-virtio-disk1", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 1073741824, "filename": "", "cluster-size": 65536, "format": "qcow2", "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "lazy-refcounts": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "file": "", "encryption_key_missing": false}, "type": "unknown"}]}


Verify this bug on qemu-kvm-rhev-2.3.0-6.el7.x86_64.

Result:
Got nbd storage in list.
{"QMP": {"version": {"qemu": {"micro": 0, "minor": 3, "major": 2}, "package": " (qemu-kvm-rhev-2.3.0-6.el7)"}, "capabilities": []}}
{"execute":"qmp_capabilities"}
{"return": {}}
{"timestamp": {"seconds": 1435804173, "microseconds": 244502}, "event": "NIC_RX_FILTER_CHANGED", "data": {"name": "net0", "path": "/machine/peripheral/net0/virtio-backend"}}
{"execute":"query-block"}
{"return": [{"io-status": "ok", "device": "drive-virtio-disk0", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 21474836480, "filename": "/home/RHEL-Server-7.1-64-virtio.qcow2", "cluster-size": 65536, "format": "qcow2", "actual-size": 5116919808, "format-specific": {"type": "qcow2", "data": {"compat": "0.10", "refcount-bits": 16}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "write_threshold": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "cache": {"no-flush": false, "direct": true, "writeback": true}, "file": "/home/RHEL-Server-7.1-64-virtio.qcow2", "encryption_key_missing": false}, "type": "unknown"}, {"io-status": "ok", "device": "drive-virtio-disk1", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 1073741824, "filename": "nbd://10.66.144.29:12345", "cluster-size": 65536, "format": "qcow2", "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "lazy-refcounts": false, "refcount-bits": 16, "corrupt": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "backing_file_depth": 0, "drv": "qcow2", "iops": 0, "bps_wr": 0, "write_threshold": 0, "encrypted": false, "bps": 0, "bps_rd": 0, "cache": {"no-flush": false, "direct": true, "writeback": true}, "file": "nbd://10.66.144.29:12345", "encryption_key_missing": false}, "type": "unknown"}]}

This bug has been fixed.

Comment 7 errata-xmlrpc 2015-12-04 16:17:59 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.

https://rhn.redhat.com/errata/RHBA-2015-2546.html


Note You need to log in before you can comment on or make changes to this bug.