Description of problem: The key word should be 'node-name' not 'node_name' of the error info for block_resize job failed. Version-Release number of selected component (if applicable): qemu-kvm-2.12.0-42.module+el8+2173+537e5cb5 kernel-4.18.0-40.el8 How reproducible: 100% Steps to Reproduce: 1.Boot a virtual machine /usr/libexec/qemu-kvm \ -name 'guest-rhel8.0' \ -machine q35 \ -nodefaults \ -vga qxl \ -blockdev driver=raw,cache.direct=off,cache.no-flush=on,node-name=my_file,file.driver=rbd,file.pool=rbd,file.image=target.img,file.server.0.host=10.66.144.31,file.server.0.port=6789 \ -device virtio-blk-pci,id=virtio_blk_pci0,drive=my_file,bus=pcie.0,addr=05,bootindex=0 \ -vnc :1 \ -monitor stdio \ -m 8192 \ -smp 8 \ -device virtio-net-pci,mac=9a:b5:b6:b1:b2:b3,id=idMmq1jH,vectors=4,netdev=idxgXAlm,bus=pcie.0,addr=0x9 \ -netdev tap,id=idxgXAlm \ -chardev socket,id=qmp_id_qmpmonitor1,path=/var/tmp/timao/monitor-qmpmonitor1-20180220-094308-h9I6hRsI,server,nowait \ -mon chardev=qmp_id_qmpmonitor1,mode=control \ 2.Resize the image by block_resize {"execute": "block_resize", "arguments": { "device": "my_file", "size": 26843545600 }} {"error": {"class": "GenericError", "desc": "Cannot find device=my_file nor node_name="}} 3.Change the argument according to the error log {"execute": "block_resize", "arguments": { "node_name": "my_file", "size": 26843545600 }} {"error": {"class": "GenericError", "desc": "Parameter 'node_name' is unexpected"}} 4.After search more info, the argument should be 'node-name'. {"execute": "block_resize", "arguments": { "node-name": "my_file", "size": 26843545600 }} {"return": {}} -------------------> SUCCESS Actual results: As above. Expected results: After step2, the key word should be 'node-name' in the error info. Additional info:
QEMU has been recently split into sub-components and as a one-time operation to avoid breakage of tools, we are setting the QEMU sub-component of this BZ to "General". Please review and change the sub-component if necessary the next time you review this BZ. Thanks
Connor - a very simple one... don't be surprised if it blossoms into more as a cscope search of error_setg.*node has a number of ways to express it (e.g node-name/node_name/node name/node) when printing the error about the 'node-name' parameter.
Patches posted upstream for review: https://lists.gnu.org/archive/html/qemu-devel/2021-03/msg00355.html
Passed test on: 4.18.0-305.1.el8.x86_64 qemu-kvm-common-6.0.0-16.module+el8.5.0+10848+2dccc46d.x86_64 Test steps: 1. boot vm /usr/libexec/qemu-kvm \ -name testvm \ -machine q35 \ -m 8G \ -smp 8 \ -cpu host,svm,+kvm_pv_unhalt \ -device qemu-xhci,id=usb1 \ -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \ \ -device pcie-root-port,id=pcie-root-port-0,multifunction=on,bus=pcie.0,addr=0x3,chassis=1 \ -device pcie-root-port,id=pcie-root-port-1,port=0x1,addr=0x3.0x1,bus=pcie.0,chassis=2 \ -device pcie-root-port,id=pcie-root-port-2,port=0x2,addr=0x3.0x2,bus=pcie.0,chassis=3 \ -device pcie-root-port,id=pcie-root-port-3,port=0x3,addr=0x3.0x3,bus=pcie.0,chassis=4 \ -device pcie-root-port,id=pcie-root-port-4,port=0x4,addr=0x3.0x4,bus=pcie.0,chassis=5 \ -device pcie-root-port,id=pcie-root-port-5,port=0x5,addr=0x3.0x5,bus=pcie.0,chassis=6 \ -device pcie-root-port,id=pcie-root-port-6,port=0x6,addr=0x3.0x6,bus=pcie.0,chassis=7 \ -device pcie-root-port,id=pcie-root-port-7,port=0x7,addr=0x3.0x7,bus=pcie.0,chassis=8 \ -device virtio-scsi-pci,id=scsi0,bus=pcie-root-port-5 \ -device virtio-scsi-pci,id=scsi1,bus=pcie-root-port-6 \ -blockdev driver=qcow2,file.driver=file,cache.direct=off,cache.no-flush=on,file.filename=/home/kvm_autotest_root/images/rhel840-64-virtio-scsi.qcow2,node-name=drive_image1 \ -device scsi-hd,id=os,drive=drive_image1,bus=scsi0.0,bootindex=0,serial=OS_DISK \ \ -blockdev driver=qcow2,file.driver=file,file.filename=/home/kvm_autotest_root/images/data1.qcow2,node-name=data_image1 \ -device scsi-hd,id=data1,drive=data_image1,bus=scsi0.0,bootindex=1,serial=DATA_DISK \ -vnc :5 \ -monitor stdio \ -qmp tcp:0:5955,server=on,wait=off \ -device virtio-net-pci,mac=9a:b5:b6:b1:b2:b7,id=idMmq1jH,vectors=4,netdev=idxgXAlm,bus=pcie-root-port-7 \ -netdev tap,id=idxgXAlm \ -chardev socket,id=qmp_id_qmpmonitor1,path=/var/tmp/monitor-qmp7.log,server=on,wait=off \ -mon chardev=qmp_id_qmpmonitor1,mode=control \ -chardev file,path=/var/tmp/monitor-serial7.log,id=serial_id_serial0 \ -device isa-serial,chardev=serial_id_serial0 \ -D debug.log \ -boot menu=on,reboot-timeout=1000 \ \ -blockdev node-name=file_cd1,driver=file,read-only=on,aio=threads,filename=/home/kvm_autotest_root/iso/linux/RHEL-8.4.0-20210503.1-x86_64-dvd1.iso,cache.direct=on,cache.no-flush=off \ -blockdev node-name=drive_cd1,driver=raw,read-only=on,cache.direct=on,cache.no-flush=off,file=file_cd1 \ -device scsi-cd,id=cd1,drive=drive_cd1,write-cache=on,bus=scsi1.0 \ 2.give wrong id for device {"execute": "block_resize", "arguments": { "device": "my_file", "size": 26843545600 }} {"error": {"class": "GenericError", "desc": "Cannot find device='my_file' nor node-name=''"}} 3.give wrong parameter node_name {"execute": "block_resize", "arguments": { "node_name": "my_file", "size": 26843545600 }} {"error": {"class": "GenericError", "desc": "Parameter 'node_name' is unexpected"}} 4.give correct id for node-name {"execute": "block_resize", "arguments": { "node-name": "data_image1", "size": 26843545600 }} {"return": {}}
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 (virt:av bug fix and enhancement update), 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://access.redhat.com/errata/RHBA-2021:4684