Bug 1005027

Summary: Reboot guest win2008r2 causes "STOP: 0x00000024" blue screen
Product: Red Hat Enterprise Linux 6 Reporter: xhan
Component: qemu-kvmAssignee: Dr. David Alan Gilbert <dgilbert>
Status: CLOSED WONTFIX QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.5CC: chayang, dgilbert, famz, juzhang, knoel, michen, mkenneth, quintela, qzhang, rbalakri, rpacheco, virt-bugs, virt-maint, vrozenfe, xhan
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-06 12:18:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 1359965    
Attachments:
Description Flags
blue screen
none
rhel6.6.png
none
rhel7.0.png
none
screen-shot-for-setting-windows-core-dump.png
none
virtio-on-2.1.0-2.png
none
bz1005027_blue_screen_screenshot none

Description xhan 2013-09-06 04:39:49 UTC
Created attachment 794572 [details]
blue screen

Description of problem:


Doing migrate while rebooting guest OS, guest Win2008r2 boots up and goes to STOP status with blue screen. The error code is STOP: 0x00000024.
See the attached screen.

Version-Release number of selected component (if applicable):
Host kernel:
2.6.32-416.el6.x86_64

qemu-kvm-rhev-0.12.1.2-2.399.el6.x86_64
seabios-0.6.1.2-28.el6.x86_64


How reproducible:
Once

Steps to Reproduce:
1. Start vm
qemu -name 'vm1' -nodefaults -chardev socket,id=human_monitor_id_humanmonitor1,path=/tmp/monitor-humanmonitor1-20130904-120422-RnIh,server,nowait -mon chardev=human_monitor_id_humanmonitor1,mode=readline -chardev socket,id=serial_id_20130904-120422-RnIh,path=/tmp/serial-20130904-120422-RnIh,server,nowait \
-device isa-serial,chardev=serial_id_20130904-120422-RnIh -device ich9-usb-uhci1,id=usb1,bus=pci.0,addr=0x4 \
-drive file='win2008r2-64-virtio.qcow2',if=none,id=drive-virtio-disk1,media=disk,cache=none,boot=off,snapshot=off,format=qcow2,aio=native \
-device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk1,id=virtio-disk1 \
-device virtio-net-pci,netdev=idrhvl9C,mac=9a:3a:3d:16:89:2c,id=ndev00idrhvl9C,bus=pci.0,addr=0x3 \
-netdev tap,id=idrhvl9C,vhost=on,fd=33 -m 2048 -smp 1,cores=0,threads=1,sockets=2 \
-cpu 'Opteron_G2' 
-device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
-vga qxl -global qxl-vga.vram_size=33554432 -rtc base=localtime,clock=host,driftfix=slew \
-M rhel6.5.0 -boot order=cdn,once=c,menu=off   \
-enable-kvm

2. start destination vm

qemu -name 'vm1' -nodefaults -chardev socket,id=human_monitor_id_humanmonitor1,path=/tmp/monitor-humanmonitor1-20130904-120422-RnIh,server,nowait -mon chardev=human_monitor_id_humanmonitor1,mode=readline -chardev socket,id=serial_id_20130904-120422-RnIh,path=/tmp/serial-20130904-120422-RnIh,server,nowait \
-device isa-serial,chardev=serial_id_20130904-120422-RnIh -device ich9-usb-uhci1,id=usb1,bus=pci.0,addr=0x4 \
-drive file='win2008r2-64-virtio.qcow2',if=none,id=drive-virtio-disk1,media=disk,cache=none,boot=off,snapshot=off,format=qcow2,aio=native \
-device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk1,id=virtio-disk1 \
-device virtio-net-pci,netdev=idrhvl9C,mac=9a:3a:3d:16:89:2c,id=ndev00idrhvl9C,bus=pci.0,addr=0x3 \
-netdev tap,id=idrhvl9C,vhost=on,fd=33 -m 2048 -smp 1,cores=0,threads=1,sockets=2 \
-cpu 'Opteron_G2' 
-device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
-vga qxl -global qxl-vga.vram_size=33554432 -rtc base=localtime,clock=host,driftfix=slew \
-M rhel6.5.0 -boot order=cdn,once=c,menu=off   \
-enable-kvm  -incoming tcp:0:5200

2. reboot the source vm, and migrate to destination 
   (human monitor)system_reset
   (human monitor)migrate -d tcp:127.0.0.1:5200

3. watch the migration progress
   destination guest os bsod

Actual results:
destination guest os bsod

Expected results:
migration should works normal

Additional info:
host info:
amd-5400b-4-1

processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 15
model		: 107
model name	: AMD Athlon(tm) Dual Core Processor 5400B
stepping	: 2
cpu MHz		: 1800.000
cache size	: 512 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 1
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv
bogomips	: 3607.58
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc 100mhzsteps

Comment 3 Mike Cao 2013-09-06 05:32:31 UTC
Could you run qemu-img to check the image whether is good ?

Comment 4 Qunfang Zhang 2013-09-18 07:04:58 UTC
Xiangming,

Any news about this bug? Could you check comment 3 as well? And do you hit this problem again?

Comment 5 ShupingCui 2013-09-27 06:36:48 UTC
met same issue on 2.6.32-419.el6.x86_64 and qemu-kvm-0.12.1.2-2.402.el6.x86_64, but cannot reproduce it.

# qemu-img check win2008r2-64-virtio.qcow2
No errors were found on the image.
Image end offset: 7389839360

Comment 6 xhan 2013-11-18 02:26:52 UTC
(In reply to Qunfang Zhang from comment #4)
> Xiangming,
> 
> Any news about this bug? Could you check comment 3 as well? And do you hit
> this problem again?

image check result is good.

Comment 10 Qunfang Zhang 2014-08-18 01:02:27 UTC
Hi, Juli

Could you give a help to reply the comment 9?  Thanks!

Qunfang

Comment 11 Yvugenfi@redhat.com 2014-08-18 08:20:33 UTC
Do you have the Windows dump file?

Thanks,
Yan.

Comment 13 Jun Li 2014-08-18 08:34:37 UTC
(In reply to Yan Vugenfirer from comment #11)
> Do you have the Windows dump file?
> 
> Thanks,
> Yan.

Hi Yan,

  Please ref comment 12. Thx

Best Regards,
Jun Li

Comment 14 Jun Li 2014-08-18 08:37:45 UTC
Created attachment 927738 [details]
rhel6.6.png

Comment 15 Jun Li 2014-08-18 08:38:15 UTC
Created attachment 927740 [details]
rhel7.0.png

Comment 17 Jun Li 2014-08-18 09:09:57 UTC
Update the steps for how to set windows core dump on comment #12.
(1). Right-click My Computer, and then click Properties.
(2). Click the Advanced tab.
(3). Under Startup and Recovery, click Settings.
(4). Make sure that Kernel memory dump or Complete memory dump is selected under Writing Debugging Information. (I select Kernel memory dump).
(5). You can change the location of the memory dump file to a different local partition if you do not have sufficient room on the partition where the operating system is installed.(I don't change the location, using the default location.)
(6). In Registry Editor, locate the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl
(7). Right-click CrashControl, point to New, and then click DWORD Value.
(8). Type NMICrashDump, and then press ENTER.
(9). Right-click NMICrashDump, and then click Modify.
(10). In the Value data box, type 1, and then click OK.
(11). Restart the computer.

For this bz, only try above step (1)~(5) is ok. The attachment screen-shot-for-setting-windows-core-dump.png is my setting. Thx.

Comment 19 Jun Li 2014-08-18 09:12:55 UTC
Created attachment 927751 [details]
screen-shot-for-setting-windows-core-dump.png

Comment 23 Dr. David Alan Gilbert 2014-08-20 07:59:32 UTC
Hi Jun Li,
  Thanks for that test.
    Comment 22 changed two things:
          1) It changed from virtio to IDE
          2) It changed to a newer QEMU (2.1.0-2 from 1.5.3-67 in #12)

We need to find out which change fixed it.
Please test virtio on 2.1.0-2

thanks,

Dave

Comment 24 Jun Li 2014-08-20 08:28:31 UTC
(In reply to Dr. David Alan Gilbert from comment #23)
> Hi Jun Li,
>   Thanks for that test.
>     Comment 22 changed two things:
>           1) It changed from virtio to IDE
>           2) It changed to a newer QEMU (2.1.0-2 from 1.5.3-67 in #12)
> 
> We need to find out which change fixed it.
> Please test virtio on 2.1.0-2
> 
> thanks,
> 
> Dave

Hi Dave,

  Retest virtio on 2.1.0-2 using the same steps as comment #12.

Version of components:
# uname -r && rpm -qa|grep qemu-kvm
3.10.0-145.el7.x86_64
qemu-kvm-common-rhev-2.1.0-2.el7.x86_64
qemu-kvm-tools-rhev-2.1.0-1.el7.x86_64
qemu-kvm-rhev-debuginfo-2.1.0-2.el7.x86_64
qemu-kvm-rhev-2.1.0-2.el7.x86_64

1,Start vm
/usr/libexec/qemu-kvm -name 'vm1' -nodefaults -chardev socket,id=serial_id_20130904-120422-RnIh,path=/tmp/serial-20130904-120422-RnIh,server,nowait \
-device isa-serial,chardev=serial_id_20130904-120422-RnIh -device ich9-usb-uhci1,id=usb1,bus=pci.0,addr=0x4 \
-drive file=/mnt/windows_img/win2008r2-64-virtio.qcow2,if=none,id=drive-virtio-disk1,media=disk,cache=none,boot=off,snapshot=on,format=qcow2,aio=native \
-device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk1,id=virtio-disk1 \
-device virtio-net-pci,netdev=idrhvl9C,mac=9a:3a:3d:16:89:2c,id=ndev00idrhvl9C,bus=pci.0,addr=0x3 \
-netdev tap,id=idrhvl9C,vhost=on -m 2048 -smp 1,cores=0,threads=1,sockets=2 \
-cpu 'Opteron_G2' \
-device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
-vga qxl -global qxl-vga.vram_size=33554432 -rtc base=localtime,clock=host,driftfix=slew \
-M rhel6.5.0 -boot order=cdn,once=c,menu=off   \
-enable-kvm -monitor stdio \
-vnc :1
---
2, start destination vm
/usr/libexec/qemu-kvm -name 'vm1' -nodefaults -chardev socket,id=serial_id_20130904-120422-RnIh,path=/tmp/serial-20130904-120422-RnIh,server,nowait \
-device isa-serial,chardev=serial_id_20130904-120422-RnIh -device ich9-usb-uhci1,id=usb1,bus=pci.0,addr=0x4 \
-drive file=/mnt/windows_img/win2008r2-64-virtio.qcow2,if=none,id=drive-virtio-disk1,media=disk,cache=none,boot=off,snapshot=on,format=qcow2,aio=native \
-device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk1,id=virtio-disk1 \
-device virtio-net-pci,netdev=idrhvl9C,mac=9a:3a:3d:16:89:2c,id=ndev00idrhvl9C,bus=pci.0,addr=0x3 \
-netdev tap,id=idrhvl9C,vhost=on -m 2048 -smp 1,cores=0,threads=1,sockets=2 \
-cpu 'Opteron_G2' \
-device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 \
-vga qxl -global qxl-vga.vram_size=33554432 -rtc base=localtime,clock=host,driftfix=slew \
-M rhel6.5.0 -boot order=cdn,once=c,menu=off   \
-enable-kvm -monitor stdio \
-vnc :2 -incoming tcp:0:5200,server,nowait

3, reboot the source vm, and migrate to destination 
   (human monitor)system_reset
   (human monitor)migrate -d tcp:127.0.0.1:5200

4, watch the migration progress

5, Do ping-pong migration for 10 times.
Results:
  Do ping-pong migration, When do the ninth time, guest hit BSOD, But can not find any core dump file inside guest. The attachment virtio-on-2.1.0-2.png  is the screenshot.

Comment 25 Jun Li 2014-08-20 08:29:24 UTC
Created attachment 928666 [details]
virtio-on-2.1.0-2.png

Comment 30 Chao Yang 2014-09-18 10:14:36 UTC
Hi xwei,

Please help reply to the needinfo. Thanks.

Comment 31 Chao Yang 2014-09-18 10:15:46 UTC
Moving needinfo to xwei.

Comment 40 Jun Li 2015-02-03 10:59:24 UTC
Created attachment 987495 [details]
bz1005027_blue_screen_screenshot

Comment 43 Jan Kurik 2017-12-06 12:18:11 UTC
Red Hat Enterprise Linux 6 is in the Production 3 Phase. During the Production 3 Phase, Critical impact Security Advisories (RHSAs) and selected Urgent Priority Bug Fix Advisories (RHBAs) may be released as they become available.

The official life cycle policy can be reviewed here:

http://redhat.com/rhel/lifecycle

This issue does not meet the inclusion criteria for the Production 3 Phase and will be marked as CLOSED/WONTFIX. If this remains a critical requirement, please contact Red Hat Customer Support to request a re-evaluation of the issue, citing a clear business justification. Note that a strong business justification will be required for re-evaluation. Red Hat Customer Support can be contacted via the Red Hat Customer Portal at the following URL:

https://access.redhat.com/