RFC ntoskrnl.exe:ntoskrnl crashes 32-bit Vista
Francois Gouget
fgouget at codeweavers.com
Mon Nov 30 08:48:37 CST 2020
ntoskrnl.exe:ntoskrnl causes the wvista VM to crash. More specifically
it happens in test_driver4() on this line:
device = CreateFileA("\\\\.\\WineTestDriver4", 0, 0, NULL, OPEN_EXISTING, 0, NULL);
which presumably is what triggers loading our driver so that makes
sense (the patch below can be used to confirm this). The BSOD says:
*** STOP: 0x0000008E (0xC000005,0x956E4AA0,0x922E0AAC,0x00000000)
*** dri19512.tmp - Address 956E4AA0 bqse at 956E3000, DateStamp 5fc03305
So likely a NULL pointer dereference. Could this be because of a bug in
our test driver?
For now I've set the TestBot so wvista runs WineTest wihout elevated
privileges which causes it to skip this test: that's the wvistaadm
variant.
The other datapoint is that the wvistau64 VM does not crash when running
the 64-bit test but I don't know if that's because of the bitness or
some other subtle Windows version difference.
wvista crash (truncated report, network connection loss, screenshot):
https://testbot.winehq.org/JobDetails.pl?Key=82678#k101
wvistau64 not crashing:
https://testbot.winehq.org/JobDetails.pl?Key=82680#k101
diff --git a/dlls/ntoskrnl.exe/tests/ntoskrnl.c b/dlls/ntoskrnl.exe/tests/ntoskrnl.c
index c2285aef6fc..00b845dcb0e 100644
--- a/dlls/ntoskrnl.exe/tests/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/tests/ntoskrnl.c
@@ -702,6 +702,7 @@ static void test_driver4(void)
DeleteFileA(filename);
return;
}
+ exit(0);
device = CreateFileA("\\\\.\\WineTestDriver4", 0, 0, NULL, OPEN_EXISTING, 0, NULL);
ok(device != INVALID_HANDLE_VALUE, "failed to open device: %u\n", GetLastError());
--
Francois Gouget <fgouget at codeweavers.com>
More information about the wine-devel
mailing list