RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1361490 - system_reset should clear pending request for error (virtio-blk)
Summary: system_reset should clear pending request for error (virtio-blk)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: qemu-kvm
Version: 6.9
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Fam Zheng
QA Contact: aihua liang
URL:
Whiteboard:
Depends On: 1361487
Blocks: 1361488
TreeView+ depends on / blocked
 
Reported: 2016-07-29 07:30 UTC by Fam Zheng
Modified: 2017-03-21 09:40 UTC (History)
18 users (show)

Fixed In Version: qemu-kvm-0.12.1.2-2.496.el6
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1361487
Environment:
Last Closed: 2017-03-21 09:40:15 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2017:0621 0 normal SHIPPED_LIVE Moderate: qemu-kvm security and bug fix update 2017-03-21 12:28:31 UTC

Description Fam Zheng 2016-07-29 07:30:04 UTC
+++ This bug was initially created as a clone of Bug #1361487 +++

Description of problem:

The issue was reported on virtio-blk by Laszlo Ersek after him analyzing similar bugs on IDE:

qemu-kvm-rhel6 BZ 1281713
qemu-kvm-rhel7 BZ 1299875
qemu-kvm-rhev7 BZ 1299876

The reproducer, as contributed by Laszlo, is:

$ qemu-img create -f qcow2 test.qcow2 8G
$ ulimit -f 256
$ qemu-system-x86_64 -enable-kvm -m 2048 -smp 2 \
    \
    -drive file=test.qcow2,werror=stop,rerror=stop,cache=writeback,id=hd0,if=none \
    -device virtio-blk-pci,drive=hd0 \
    \
    -drive id=cd0,readonly,media=cdrom,cache=writeback,if=none,file=/mnt/data/isos/iso-fedora/Fedora-Workstation-Live-x86_64-24-1.2.iso \
    -device ide-cd,drive=cd0 \
    -monitor stdio

- click Begin Installation in anaconda
- when the guest is stopped, enter "system_reset", then "cont" at the monitor prompt

Expected results:

after system_reset, cont should reboot the guest. The pending I/O req should be dropped.

Comment 3 Ademar Reis 2016-09-28 01:49:17 UTC
For reference, this is the cluster of BZ related to this issue: bug 1281713, bug 1299876, bug 1299875, bug 1361487, bug 1361490, bug 1361488, bug 1375520

Comment 6 Yash Mankad 2016-11-04 16:14:14 UTC
Fix included in qemu-kvm-0.12.1.2-2.496.el6

Comment 8 aihua liang 2016-12-28 05:11:56 UTC
Have verified, the problem still exist.
Test Version:
 kernel version: 2.6.32-680.el6.x86_64
 qemu-kvm-rhev version: qemu-kvm-rhev-0.12.1.2-2.499.el6.x86_64

Test Step:
1.Create 25G qcow2 image, install win2012r2 on it.

2.Full fill disk by copying the image, until prompt "No space left on device" appear.

3.Start guest by qemu cmd:
MALLOC_PERTURB_=1  /usr/libexec/qemu-kvm \
-name 'avocado-vt-vm1' \
-machine rhel6.6.0  \
-nodefaults  \
-vga std \
-chardev socket,id=qmp_id_qmpmonitor1,path=/var/tmp/monitor-qmpmonitor1-20161227-002429-zWDOQysC,server,nowait \
-mon chardev=qmp_id_qmpmonitor1,mode=control  \
-chardev socket,id=qmp_id_catch_monitor,path=/var/tmp/monitor-catch_monitor-20161227-002429-zWDOQysC,server,nowait \
-mon chardev=qmp_id_catch_monitor,mode=control \
-device pvpanic,ioport=0x505,id=idBpoMGZ  \
-chardev socket,id=serial_id_serial0,path=/var/tmp/serial-serial0-20161227-002429-zWDOQysC,server,nowait \
-device isa-serial,chardev=serial_id_serial0  \
-chardev socket,id=seabioslog_id_20161227-002429-zWDOQysC,path=/var/tmp/seabios-20161227-002429-zWDOQysC,server,nowait \
-device isa-debugcon,chardev=seabioslog_id_20161227-002429-zWDOQysC,iobase=0x402 \
-device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pci.0 \
-device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pci.0 \
-device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pci.0 \
-device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pci.0 \
-drive id=drive_image1,if=none,snapshot=off,aio=native,cache=none,format=qcow2,file=/usr/share/avocado/data/avocado-vt/images/win2012-64r2-virtio.qcow2 \
-device virtio-blk-pci,id=image1,drive=drive_image1,bootindex=0,bus=pci.0 \
-device virtio-net-pci,mac=9a:b1:b2:b3:b4:b5,id=idFb0lIj,vectors=4,netdev=idNlTvHu,bus=pci.0,addr=04  \
-netdev tap,id=idNlTvHu,vhost=on \
-m 4096  \
-smp 2,maxcpus=2,cores=1,threads=1,sockets=2  \
-cpu 'SandyBridge' \
-drive id=drive_cd1,if=none,snapshot=off,aio=native,cache=none,media=cdrom,file=/usr/share/avocado/data/avocado-vt/isos/ISO/Win2012R2/en_windows_server_2012_r2_with_update_x64_dvd_6052708.iso \
-device ide-drive,id=cd1,drive=drive_cd1,bus=ide.0,unit=1 \
-device virtio-scsi-pci,id=virtio_scsi_pci0,bus=pci.0,addr=05 \
-drive id=drive_winutils,if=none,snapshot=off,aio=native,cache=none,media=cdrom,file=/usr/share/avocado/data/avocado-vt/isos/windows/winutils.iso \
-device scsi-cd,id=winutils,drive=drive_winutils \
-vnc :0  \
-rtc base=localtime,clock=host,driftfix=slew  \
-boot order=cdn,menu=off,strict=off \
-enable-kvm \
-monitor stdio \

4.Wait until error info "block I/O error in device 'drive_image1': No space left on device(28)"appear in hmp monitor, check vm status:
  (qemu)info status                   -----> VM status:paused(io-error)

5.Reset vm
  (qemu)system_reset                  -----> VM no response

6.Check vm status
  (qemu)info status                   -----> VM status:paused(io-error)


From step4,5,6, we can see that the problem hasn't been resolved, so change the bug status to Assigned.

Comment 10 Fam Zheng 2017-01-09 15:57:42 UTC
Aihua, you need to "cont" after "system_reset".

Comment 11 aihua liang 2017-01-10 08:19:17 UTC
Retest it according to fam's suggestion, details as bellow:

Test Version:
 kernel version: 2.6.32-681.el6.x86_64
 qemu-kvm-rhev version: qemu-kvm-rhev-0.12.1.2-2.499.el6.x86_64

Test Step:
1.Create 25G qcow2 image, install win2012r2 on it.

2.Full fill disk by copying the image, until prompt "No space left on device" appear.

3.Start guest by qemu cmd:
MALLOC_PERTURB_=1  /usr/libexec/qemu-kvm \
-name 'avocado-vt-vm1' \
-machine rhel6.6.0  \
-nodefaults  \
-vga std \
-chardev socket,id=qmp_id_qmpmonitor1,path=/var/tmp/monitor-qmpmonitor1-20161227-002429-zWDOQysC,server,nowait \
-mon chardev=qmp_id_qmpmonitor1,mode=control  \
-chardev socket,id=qmp_id_catch_monitor,path=/var/tmp/monitor-catch_monitor-20161227-002429-zWDOQysC,server,nowait \
-mon chardev=qmp_id_catch_monitor,mode=control \
-device pvpanic,ioport=0x505,id=idBpoMGZ  \
-chardev socket,id=serial_id_serial0,path=/var/tmp/serial-serial0-20161227-002429-zWDOQysC,server,nowait \
-device isa-serial,chardev=serial_id_serial0  \
-chardev socket,id=seabioslog_id_20161227-002429-zWDOQysC,path=/var/tmp/seabios-20161227-002429-zWDOQysC,server,nowait \
-device isa-debugcon,chardev=seabioslog_id_20161227-002429-zWDOQysC,iobase=0x402 \
-device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pci.0 \
-device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pci.0 \
-device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pci.0 \
-device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pci.0 \
-drive id=drive_image1,if=none,snapshot=off,aio=native,cache=none,format=qcow2,file=/usr/share/avocado/data/avocado-vt/images/win2012-64r2-virtio.qcow2 \
-device virtio-blk-pci,id=image1,drive=drive_image1,bootindex=0,bus=pci.0 \
-device virtio-net-pci,mac=9a:b1:b2:b3:b4:b5,id=idFb0lIj,vectors=4,netdev=idNlTvHu,bus=pci.0,addr=04  \
-netdev tap,id=idNlTvHu,vhost=on \
-m 4096  \
-smp 2,maxcpus=2,cores=1,threads=1,sockets=2  \
-cpu 'SandyBridge' \
-drive id=drive_cd1,if=none,snapshot=off,aio=native,cache=none,media=cdrom,file=/usr/share/avocado/data/avocado-vt/isos/ISO/Win2012R2/en_windows_server_2012_r2_with_update_x64_dvd_6052708.iso \
-device ide-drive,id=cd1,drive=drive_cd1,bus=ide.0,unit=1 \
-device virtio-scsi-pci,id=virtio_scsi_pci0,bus=pci.0,addr=05 \
-drive id=drive_winutils,if=none,snapshot=off,aio=native,cache=none,media=cdrom,file=/usr/share/avocado/data/avocado-vt/isos/windows/winutils.iso \
-device scsi-cd,id=winutils,drive=drive_winutils \
-vnc :0  \
-rtc base=localtime,clock=host,driftfix=slew  \
-boot order=cdn,menu=off,strict=off \
-enable-kvm \
-monitor stdio \

4.Wait until error info "block I/O error in device 'drive_image1': No space left on device(28)"appears in hmp monitor, check vm status:
  (qemu)info status                   -----> VM status:paused(io-error)

5.Reset vm
  (qemu)system_reset                  -----> VM seems no response

6.Cont vm
  (qemu)cont                          -----> VM restart and load win2012r2 then appear error msg "block I/O error in device 'drive_image1': No space left on device (28)"

7.Check vm status
  (qemu)info status                   -----> VM status:paused(io-error)


8.Release some disk space, repeat step5~6.

Test Result:
After step8, vm in "running" status.


So, the problem has been resolved, change its status to "Verified".

Comment 13 errata-xmlrpc 2017-03-21 09:40:15 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/RHSA-2017-0621.html


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