Bug 1024599 - Windows7 x86 guest with ahci backend hit BSOD when do "hibernate"
Windows7 x86 guest with ahci backend hit BSOD when do "hibernate"
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev (Show other bugs)
7.0
Unspecified Unspecified
unspecified Severity medium
: rc
: ---
Assigned To: John Snow
Virtualization Bugs
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-10-29 23:34 EDT by Qian Guo
Modified: 2015-03-05 04:43 EST (History)
13 users (show)

See Also:
Fixed In Version: qemu-kvm-rhev-2.1.2-10.el7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-03-05 04:43:01 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
the screenshot of S4_bsod (15.56 KB, image/png)
2013-10-29 23:34 EDT, Qian Guo
no flags Details

  None (edit)
Description Qian Guo 2013-10-29 23:34:42 EDT
Created attachment 817268 [details]
the screenshot of S4_bsod

Description of problem:
Boot a windows 7 32bit guest that based ahci sata disk, when try to do S4 inside, it hit BSOD 

Version-Release number of selected component (if applicable):
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-1.5.3-10.el7.x86_64
# uname -r
3.10.0-37.el7.x86_64

Inside guest, installed qxl-win-0.1-19

How reproducible:
100%

Steps to Reproduce:
1.Boot a windows7 32bit guest with ahci sata backend:
# /usr/libexec/qemu-kvm -M pc -cpu SandyBridge -enable-kvm -m 4096 -smp 4,sockets=1,cores=4,threads=1 -name win732 -rtc base=localtime,clock=host,driftfix=slew -device ahci,id=ahci0 -drive file=/home/win7x861cp1.qcow2_v3,format=qcow2,if=none,id=drive-ide0-0-0,format=qcow2 -device ide-drive,bus=ahci0.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -spice port=5800,disable-ticketing -vga qxl -global qxl-vga.vram_size=67108864 -monitor stdio -boot menu=on -netdev tap,id=netdev0,vhost=on,fd=3 -device virtio-net-pci,mac=ce:71:f6:64:8f:18,netdev=netdev0,id=net0 -chardev socket,path=/tmp/qga.sock,server,nowait,id=qga0 -device virtio-serial -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 3<>/dev/tap3

2.Inside guest, do S4(hibernate)
3.

Actual results:
Guest bsod, then shutdown

Expected results:


Additional info:
Comment 2 Qian Guo 2013-10-29 23:36:25 EDT
Test with virtio-blk with virtio-win-prewhql-0.1-72 , not hit such issue.
Comment 12 Yan Vugenfirer 2014-01-14 08:05:26 EST
AHCI is not officially released in RHEL7.0. Deferring.
Comment 19 John Snow 2014-09-05 11:33:56 EDT
Hi, I have a patch for this issue which I hope to get upstream in the near future: https://github.com/jnsnow/qemu/commit/fab7e643886278869ae2e176409d002203660a78

If you pull the branch this fix is a part of you should be able to hibernate from W7 successfully.

Otherwise, please wait for this fix to be merged upstream.
Comment 20 John Snow 2014-10-12 05:24:33 EDT
Pending upstream: http://lists.gnu.org/archive/html/qemu-devel/2014-10/msg00130.html
Patches 1 & 2 are the needed minimum to correct this BZ.
Comment 21 John Snow 2014-11-04 12:46:45 EST
the AHCI device, along with the Q35 machine type as a whole are unsupported in RHEL7. Backporting a fix for this particular issue requires backporting many changes related to Q35 and AHCI and the rest of the IDE layer as a whole, and may be somewhat involved.

The AHCI device remains fairly primitive in the 1.5.3 based versions, and improvements made to the device since rely on many changes that have occurred in the block layer and IDE core layer.

Therefore, I am changing the component of this bug to qemu-kvm-rhev, where this bug is much easier to fix with fewer backports.
Comment 25 Miroslav Rezanina 2014-11-20 06:59:20 EST
Fix included in qemu-kvm-rhev-2.1.2-10.el7
Comment 27 Chao Yang 2014-12-05 01:38:35 EST
Reproduced on qemu-kvm-rhev-2.1.2-9.el7.

Steps:
1. refresh install a windows 7 32bit guest with hibernate enabled
2. do hibernate by clicking shutdown -> Hibernate in windows

Actual Result:
Guest BSOD on same code as reporter got.

Verified pass on qemu-kvm-rhev-2.1.2-15.el7. No BSOD any more and guest resumed from hibernate correctly, network connectivity restored. 

CLI:

/usr/libexec/qemu-kvm -M pc -cpu SandyBridge -enable-kvm -m 4096 -smp 4,sockets=1,cores=4,threads=1 -name win732 -rtc base=localtime,clock=host,driftfix=slew -device ahci,id=ahci0 -drive file=/home/test/win7_32.qcow2,format=qcow2,if=none,id=drive-ide0-0-0,format=qcow2 -device ide-drive,bus=ahci0.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -netdev tap,id=netdev0 -device e1000,mac=ce:71:f6:64:8f:11,netdev=netdev0,id=net0 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -spice port=5800,disable-ticketing -vga qxl -global qxl-vga.vram_size=67108864 -monitor stdio -boot menu=on -monitor stdio -cdrom en_windows_7_ultimate_with_sp1_x86_dvd_u_677460.iso


Per above, this issue has fixed.
Comment 30 errata-xmlrpc 2015-03-05 04:43:01 EST
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-2015-0624.html

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