Bug 1184818 - guest BSOD when reboot guest after enable qxl driver verifier
Summary: guest BSOD when reboot guest after enable qxl driver verifier
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: virtio-win
Version: 7.1
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: Vadim Rozenfeld
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 1058225 1191961
TreeView+ depends on / blocked
 
Reported: 2015-01-22 10:26 UTC by lijin
Modified: 2015-11-24 08:49 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
NO_DOCS
Clone Of:
Environment:
Last Closed: 2015-11-24 08:49:06 UTC
Target Upstream Version:


Attachments (Terms of Use)
guest bsod screenshot (21.94 KB, image/png)
2015-01-22 10:26 UTC, lijin
no flags Details
qxlwddm-0.1-7 install error message (220.55 KB, image/png)
2015-02-10 08:13 UTC, lijin
no flags Details


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:2513 normal SHIPPED_LIVE virtio-win bug fix and enhancement update 2015-11-24 13:38:38 UTC

Description lijin 2015-01-22 10:26:43 UTC
Created attachment 982668 [details]
guest bsod screenshot

Description of problem:
enable qxl driver verifier,then reboot guest,guest will bsod

Version-Release number of selected component (if applicable):
qxlwddm-0.1-7
qemu-kvm-rhev-2.1.2-20.el7.x86_64
kernel-3.10.0-223.el7.x86_64
virtio-win-prewhql-98
seabios-1.7.5-5.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.boot win8.1 guest with:
/usr/libexec/qemu-kvm -smp 2 -m 2G -cpu host -M pc -drive file=/usr/share/virtio-win/virtio-win.iso,media=cdrom,if=none,cache=none,id=drive1 -device ide-drive,drive=drive1,bus=ide.0,unit=0,id=cdrom -drive file=win8.1-32-iso.qcow2,if=none,cache=none,format=qcow2,id=drive2 -device ide-drive,drive=drive2,bus=ide.1,unit=1,id=disk -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -usb -device usb-tablet -monitor stdio -qmp tcp:0:4444,server,nowait -netdev tap,script=/etc/qemu-ifup,id=hostnet1 -device virtio-net-pci,mq=on,netdev=hostnet1,mac=00:52:54:00:22:88,id=net1 -spice disable-ticketing,port=5900 -vga qxl

2.install netkvm and qxl driver

3.enble qxl driver verifier

4.reboot guest

Actual results:
guest bsod;
And can not boot up again with spice/qxl,boot guest with vnc/cirrus and get the dump file

Expected results:
no bsod,guest can reboot successfully

Additional info:
the windbg info:
1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_VERIFIER_DETECTED_VIOLATION (c4)
A device driver attempting to corrupt the system has been caught.  This is
because the driver was specified in the registry as being suspect (by the
administrator) and the kernel has enabled substantial checking of this driver.
If the driver attempts to corrupt the system, bugchecks 0xC4, 0xC1 and 0xA will
be among the most commonly seen crashes.
Arguments:
Arg1: 000000e1, Synchronization object address is bogus or pageable.
Arg2: 8859af1c, Synchronization object address.
Arg3: 00000000
Arg4: 00000000

Debugging Details:
------------------

Page 7d9cd not present in the dump file. Type ".hh dbgerr004" for details

BUGCHECK_STR:  0xc4_e1

DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT

PROCESS_NAME:  csrss.exe

CURRENT_IRQL:  0

ANALYSIS_VERSION: 6.3.9600.16384 (debuggers(dbg).130821-1623) amd64fre

LAST_CONTROL_TRANSFER:  from 81f27f51 to 81b6e244

STACK_TEXT:  
89ad78d8 81f27f51 000000c4 000000e1 8859af1c nt!KeBugCheckEx
89ad78fc 81f21020 8859af1c 00000000 00000000 nt!VerifierBugCheckIfAppropriate+0x36
89ad7918 81f2e4c0 89ad7968 8b4dd796 8859af1c nt!VfUtilSynchronizationObjectSanityChecks+0x68
89ad7920 8b4dd796 8859af1c 00000001 00000000 nt!VerifierKeInitializeEvent+0x10
WARNING: Stack unwind information not available. Following frames may be wrong.
89ad7968 8b4e010c 89381910 8b320f88 89ad7b18 qxldod+0x3796
89ad7984 8b4e32d3 89ad7b18 89ad79f8 8a8565a0 qxldod+0x610c
89ad799c 8aca5deb 8b320eb0 89ad7b18 89ad79f8 qxldod+0x92d3
89ad79c8 8acac767 89ad7b18 89ad79f8 8a8565a0 dxgkrnl!DpiDxgkDdiStartDevice+0x2f
89ad7b3c 8aca44d9 8a8561b8 869ffa01 89ad7b5d dxgkrnl!DpiFdoStartAdapter+0x2ed
89ad7b70 8aca437a 00000002 8aca4345 00000000 dxgkrnl!DpiFdoStartAdapterThread+0x153
89ad7b78 8aca4345 00000000 89ad7b98 8ad83718 dxgkrnl!DpiSessionCreateCallback+0x1a
89ad7b84 8ad83718 00000000 00000000 869f77d8 dxgkrnl!DxgkNotifySessionStateChange+0x22
89ad7b98 8d990a96 00000000 00000000 8a928780 watchdog!SMgrNotifySessionChange+0x2d
89ad7ba8 8d98c247 8a928780 8d98cb5b 8a92cdb0 win32k!DrvNotifySessionStateChange+0x33
89ad7bf4 8d98cbc4 00000068 0088f630 89ad7c14 win32k!InitializeGreCSRSS+0x14
89ad7c04 81b7f377 00000068 0000006c 0088f644 win32k!NtUserInitialize+0x69
89ad7c04 773c2da4 00000068 0000006c 0088f644 nt!KiSystemServicePostCall
0088f644 00000000 00000000 00000000 00000000 0x773c2da4


STACK_COMMAND:  kb

FOLLOWUP_IP: 
qxldod+3796
8b4dd796 53              push    ebx

SYMBOL_STACK_INDEX:  4

SYMBOL_NAME:  qxldod+3796

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: qxldod

IMAGE_NAME:  qxldod.sys

DEBUG_FLR_IMAGE_TIMESTAMP:  54aa86d8

FAILURE_BUCKET_ID:  0xc4_e1_VRF_qxldod+3796

BUCKET_ID:  0xc4_e1_VRF_qxldod+3796

ANALYSIS_SOURCE:  KM

FAILURE_ID_HASH_STRING:  km:0xc4_e1_vrf_qxldod+3796

FAILURE_ID_HASH:  {a8731bed-af7c-0c82-2f90-a3db64502709}

Followup: MachineOwner
---------

Comment 2 Vadim Rozenfeld 2015-01-22 11:15:50 UTC
please share the relevant crash dump file.

Thanks,
Vadim.

Comment 4 lijin 2015-01-23 09:02:19 UTC
test with qxlwddm-0.1-6,still CAN reproduce this issue

Comment 5 Mike Cao 2015-02-02 02:47:43 UTC
(In reply to Vadim Rozenfeld from comment #2)
> please share the relevant crash dump file.
> 
> Thanks,
> Vadim.

Hi, Vadim

Look this bug becomes a testblocker for netkvm whql test for win8/win8.1 platform on rhel7.1.z release. 
I sincerely hope you can take/fix it in a higher priority.

Thanks,
Mike

Comment 7 Vadim Rozenfeld 2015-02-02 03:45:07 UTC
(In reply to Mike Cao from comment #5)
> (In reply to Vadim Rozenfeld from comment #2)
> > please share the relevant crash dump file.
> > 
> > Thanks,
> > Vadim.
> 
> Hi, Vadim
> 
> Look this bug becomes a testblocker for netkvm whql test for win8/win8.1
> platform on rhel7.1.z release. 
> I sincerely hope you can take/fix it in a higher priority.
> 
> Thanks,
> Mike

Hi Mike,
Sure, will try to fix it ASAP.
Vadim.

Comment 8 lijin 2015-02-04 06:37:15 UTC
guest hang when run whql job "NDISTest 6.5 - [2 Machine] - PM_PowerStateTransition"

guest installed qxlwddm-0.1-7 driver,and guest hang at the boot stage.

Comment 10 Vadim Rozenfeld 2015-02-06 10:03:04 UTC
Can we try adding the following option to command line "qxl-vga.revision=3"?

Thanks,
Vadim.

Comment 11 lijin 2015-02-10 08:11:59 UTC
test on win8-64 guest:
1.try with "-global qxl-vga.revision=3":
qxlwddm-0.1-7:qxl can NOT install successfully(please check the attachment)
qxlwddm-0.1-6:qxl CAN install correctly,enable qxl verifier and reboot guest,guest keep blackscreen

2.try WITHOUT "-global qxl-vga.revision=3":
qxlwddm-0.1-7:install successfully,enable qxl verifier and reboot guest,guest bsod
qxlwddm-0.1-6:install successfully,enable qxl verifier and reboot guest,guest bsod

Comment 12 lijin 2015-02-10 08:13:39 UTC
Created attachment 989996 [details]
qxlwddm-0.1-7 install error message

Comment 13 Vadim Rozenfeld 2015-02-10 08:26:39 UTC
(In reply to lijin from comment #11)
> test on win8-64 guest:
> 1.try with "-global qxl-vga.revision=3":
> qxlwddm-0.1-7:qxl can NOT install successfully(please check the attachment)
Did you try update the in-box Microsoft Basic Display driver, or previous version of qxl driver? 
 
> qxlwddm-0.1-6:qxl CAN install correctly,enable qxl verifier and reboot
> guest,guest keep blackscreen
Can you please share the relevant dump file?

Thanks,
Vadim.

Comment 14 lijin 2015-02-10 08:34:40 UTC
(In reply to Vadim Rozenfeld from comment #13)
> (In reply to lijin from comment #11)
> > test on win8-64 guest:
> > 1.try with "-global qxl-vga.revision=3":
> > qxlwddm-0.1-7:qxl can NOT install successfully(please check the attachment)
> Did you try update the in-box Microsoft Basic Display driver, or previous
> version of qxl driver? 
I installed the qxl driver from device manager,right click the device and update the qxlwddm driver.
> > qxlwddm-0.1-6:qxl CAN install correctly,enable qxl verifier and reboot
> > guest,guest keep blackscreen
> Can you please share the relevant dump file?
guest keep blackscreen,no BSOD,so no dump file available
> Thanks,
> Vadim.

Comment 15 Vadim Rozenfeld 2015-02-10 08:57:33 UTC
(In reply to lijin from comment #14)
> (In reply to Vadim Rozenfeld from comment #13)
> > (In reply to lijin from comment #11)
> > > test on win8-64 guest:
> > > 1.try with "-global qxl-vga.revision=3":
> > > qxlwddm-0.1-7:qxl can NOT install successfully(please check the attachment)
> > Did you try update the in-box Microsoft Basic Display driver, or previous
> > version of qxl driver? 
> I installed the qxl driver from device manager,right click the device and
> update the qxlwddm driver.

Right, but did you have any previous version of qxlwddm driver installed?

> > > qxlwddm-0.1-6:qxl CAN install correctly,enable qxl verifier and reboot
> > > guest,guest keep blackscreen
> > Can you please share the relevant dump file?
> guest keep blackscreen,no BSOD,so no dump file available

Did you try to change vga type to "std" or "cirrus"? You should be able to start
the system normally.

> > Thanks,
> > Vadim.

Comment 16 lijin 2015-02-10 09:12:22 UTC
(In reply to Vadim Rozenfeld from comment #15)
> (In reply to lijin from comment #14)
> > (In reply to Vadim Rozenfeld from comment #13)
> > > (In reply to lijin from comment #11)
> > > > test on win8-64 guest:
> > > > 1.try with "-global qxl-vga.revision=3":
> > > > qxlwddm-0.1-7:qxl can NOT install successfully(please check the attachment)
> > > Did you try update the in-box Microsoft Basic Display driver, or previous
> > > version of qxl driver? 
> > I installed the qxl driver from device manager,right click the device and
> > update the qxlwddm driver.
> 
> Right, but did you have any previous version of qxlwddm driver installed?
No,there is no qxl driver installed on guest,I tried qxlwddm-0.1-7,it failed so I update the version to qxlwddm-0.1-6
> > > > qxlwddm-0.1-6:qxl CAN install correctly,enable qxl verifier and reboot
> > > > guest,guest keep blackscreen
> > > Can you please share the relevant dump file?
> > guest keep blackscreen,no BSOD,so no dump file available
> 
> Did you try to change vga type to "std" or "cirrus"? You should be able to
> start
> the system normally.
Yes,boot guest with cirrus,it can start guest correctly.
I mean there is no BSOD happened(the screen keep black),so even I can boot guest normally with cirrus,there is no Memory.DMP file,right? Correct me if I was wrong :-)
> > > Thanks,
> > > Vadim.

Comment 17 Vadim Rozenfeld 2015-02-10 10:38:41 UTC
(In reply to lijin from comment #16)
> (In reply to Vadim Rozenfeld from comment #15)
> > (In reply to lijin from comment #14)
> > > (In reply to Vadim Rozenfeld from comment #13)
> > > > (In reply to lijin from comment #11)
> > > > > test on win8-64 guest:
> > > > > 1.try with "-global qxl-vga.revision=3":
> > > > > qxlwddm-0.1-7:qxl can NOT install successfully(please check the attachment)
> > > > Did you try update the in-box Microsoft Basic Display driver, or previous
> > > > version of qxl driver? 
> > > I installed the qxl driver from device manager,right click the device and
> > > update the qxlwddm driver.
> > 
> > Right, but did you have any previous version of qxlwddm driver installed?
> No,there is no qxl driver installed on guest,I tried qxlwddm-0.1-7,it failed
> so I update the version to qxlwddm-0.1-6
> > > > > qxlwddm-0.1-6:qxl CAN install correctly,enable qxl verifier and reboot
> > > > > guest,guest keep blackscreen
> > > > Can you please share the relevant dump file?
> > > guest keep blackscreen,no BSOD,so no dump file available
> > 
> > Did you try to change vga type to "std" or "cirrus"? You should be able to
> > start
> > the system normally.
> Yes,boot guest with cirrus,it can start guest correctly.
> I mean there is no BSOD happened(the screen keep black),so even I can boot
> guest normally with cirrus,there is no Memory.DMP file,right? Correct me if
> I was wrong :-)

Nothing wrong. Just a quick question, when the system stuck with the black screen, can you try "system_reset" from the qemu monitor?

Cheers,
Vadim.

> > > > Thanks,
> > > > Vadim.

Comment 18 lijin 2015-02-11 02:29:32 UTC
(In reply to Vadim Rozenfeld from comment #17)
> Nothing wrong. Just a quick question, when the system stuck with the black
> screen, can you try "system_reset" from the qemu monitor?
I tried,guest restarted and still keep black screen after system_reset
> Cheers,
> Vadim.
> 
> > > > > Thanks,
> > > > > Vadim.

Comment 19 lijin 2015-03-31 06:56:46 UTC
try with the latest qxlwddm-0.1-10 build on win8-32 guest:
guest cannot install the qxl diver correctly with or without "-global qxl-vga.revision=3"

Comment 20 Vadim Rozenfeld 2015-03-31 07:10:04 UTC
(In reply to lijin from comment #19)
> try with the latest qxlwddm-0.1-10 build on win8-32 guest:
> guest cannot install the qxl diver correctly with or without "-global
> qxl-vga.revision=3"

Yes, there is a problem (regression) in the inf file.
Will fix it shortly.
Thanks,
Vadim.

Comment 21 Vadim Rozenfeld 2015-09-10 20:44:21 UTC
This problem should be fixed in build 11

Comment 22 lijin 2015-09-11 05:13:27 UTC
Reproduced this issue on qxlwddm-0.1-7 version
Verified this issue on qxlwddm-0.1-11 verion

steps same as comment #0

Actual Results:
on qxlwddm-0.1-7,guest bsod when reboot guest after enable qxl driver verifier;
on qxlwddm-0.1-11,guest reboot correctly after enable qxl driver verifier,no bsod.

Based on above ,this issue has been fixed already .

So change status to verified.

Comment 24 errata-xmlrpc 2015-11-24 08:49:06 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-2513.html


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