Topic: Blue screens with RME HDSPe AIO, verifier blames hdsp_64.sys
Hi!
I have an oldish RME HDSPe AIO which was working fine in my old machine. Now I put it to my new PC (Windows 10, MSI B550-A PRO AM4 ATX motherboard) which had previously worked without issues for a while. After installing the card (with the latest driver 4.3.6.0 and firmware) the machine started to have blue screens every now and then for various reasons. I was not sure what the reason was and did the usual stuff of running memory tests and checking memory dumps but there was never a definite reason.
But now I ran verifier using the instructions from here: https://docs.microsoft.com/en-us/window … r-verifier
When I booted the machine with verifier, it instantly blue screened. I had to use a previous restore point to get back to Windows. I again ran windbg and analyzed the memory.dmp file. Details are below but in short, it blames hdsp_64.sys for attempting to corrupt the system. I noticed there was a similar issue with Thunderbolt but AFAIK I don't have that in my machine. Any idea what to do?
Windbg information below:
Loading Dump File [E:\tmp\dumps\2021-05-10-verifier-MEMORY.DMP]
Kernel Bitmap Dump File: Kernel address space is available, User address space may not be available.
Symbol search path is: srv*
Executable search path is:
Windows 10 Kernel Version 19041 MP (16 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS Personal
Built by: 19041.1.amd64fre.vb_release.191206-1406
Machine Name:
Kernel base = 0xfffff804`13c06000 PsLoadedModuleList = 0xfffff804`148303d0
Debug session time: Mon May 10 00:44:48.902 2021 (UTC + 3:00)
System Uptime: 0 days 0:00:14.583
Loading Kernel Symbols
...............................................................
........Page cead1 not present in the dump file. Type ".hh dbgerr004" for details
.......Page 803fef not present in the dump file. Type ".hh dbgerr004" for details
.................................
Loading User Symbols
Loading unloaded module list
...
For analysis of this file, run !analyze -v
8: 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: 0000000000002000, Code Integrity Issue: The caller specified an executable pool type. (Expected: NonPagedPoolNx)
Arg2: fffff801d25d1f21, The address in the driver's code where the error was detected.
Arg3: 0000000000000000, Pool Type.
Arg4: 0000000048445350, Pool Tag (if provided).
Debugging Details:
------------------
KEY_VALUES_STRING: 1
Key : Analysis.CPU.Sec
Value: 5
Key : Analysis.DebugAnalysisProvider.CPP
Value: Create: 8007007e on TURPO
Key : Analysis.DebugData
Value: CreateObject
Key : Analysis.DebugModel
Value: CreateObject
Key : Analysis.Elapsed.Sec
Value: 13
Key : Analysis.Memory.CommitPeak.Mb
Value: 66
Key : Analysis.System
Value: CreateObject
BUGCHECK_CODE: c4
BUGCHECK_P1: 2000
BUGCHECK_P2: fffff801d25d1f21
BUGCHECK_P3: 0
BUGCHECK_P4: 48445350
BLACKBOXNTFS: 1 (!blackboxntfs)
PROCESS_NAME: System
LOCK_ADDRESS: fffff8041484ac60 -- (!locks fffff8041484ac60)
Resource @ nt!PiEngineLock (0xfffff8041484ac60) Exclusively owned
Contention Count = 1
NumberOfExclusiveWaiters = 1
Threads: ffffc70197eef040-01<*>
Threads Waiting On Exclusive Access:
ffffc70197b2d140
1 total locks
PNP_TRIAGE_DATA:
Lock address : 0xfffff8041484ac60
Thread Count : 1
Thread address: 0xffffc70197eef040
Thread wait : 0x3a5
STACK_TEXT:
ffffd70d`c3a61348 fffff804`145d3e14 : 00000000`000000c4 00000000`00002000 fffff801`d25d1f21 00000000`00000000 : nt!KeBugCheckEx
ffffd70d`c3a61350 fffff804`141a2335 : fffff804`14818c70 00000000`00002000 fffff801`d25d1f21 00000000`00000000 : nt!VerifierBugCheckIfAppropriate+0xe0
ffffd70d`c3a61390 fffff804`145cadd4 : 00000000`48445350 fffff804`14818c70 fffff801`d25d1f21 00000000`00000000 : nt!VfReportIssueWithOptions+0x101
ffffd70d`c3a613e0 fffff804`145d7fd2 : 00000000`00000000 ffffc701`a243f050 00000000`00140000 00000000`00000000 : nt!VfCheckPoolType+0x90
ffffd70d`c3a61420 fffff801`d25d1f21 : ffffc701`a243f480 00000000`00000000 00000000`00000000 00000000`00000400 : nt!VerifierExAllocatePoolWithTag+0x62
ffffd70d`c3a61470 fffff801`d25d71eb : ffffc701`a18c8d70 ffffc701`a18c8d70 ffffc701`a243f050 00000000`00000000 : hdsp_64+0x1f21
ffffd70d`c3a614c0 fffff804`14fcc2ca : 00000000`00000000 ffffc701`9f0c7120 ffffc701`9f0f5110 ffffc701`9f0c7120 : hdsp_64+0x71eb
ffffd70d`c3a61670 fffff804`14061197 : fffff804`14fcc190 00000000`00000004 ffffc701`9f0c7120 00000000`00000000 : VerifierExt!xdv_AddDevice_wrapper+0x13a
ffffd70d`c3a616d0 fffff804`1432a054 : ffffc701`a18c8d70 ffffc701`a1ffedd0 00000000`00000003 ffffc701`97b5da00 : nt!PpvUtilCallAddDevice+0xf01eb
ffffd70d`c3a61710 fffff804`1432d83f : 00000000`00000003 00000000`00000000 00000000`6e657050 00000000`00000002 : nt!PnpCallAddDevice+0x94
ffffd70d`c3a617d0 fffff804`1432cbc7 : ffffc701`9f0c7a60 ffffd70d`c3a61a11 ffffc701`9f0c7a60 00000000`00000000 : nt!PipCallDriverAddDevice+0x827
ffffd70d`c3a61990 fffff804`143c3fbc : ffffc701`a22f2800 ffffd70d`c3a61b01 ffffd70d`c3a61ab0 fffff804`00000000 : nt!PipProcessDevNodeTree+0x333
ffffd70d`c3a61a60 fffff804`13f7237c : 00000001`00000003 ffffc701`a22f28c0 00000000`00000000 ffffc701`a22f28c0 : nt!PiProcessStartSystemDevices+0x60
ffffd70d`c3a61ab0 fffff804`13e2b975 : ffffc701`97eef040 ffffc701`97a92400 fffff804`148495a0 ffffc701`00000000 : nt!PnpDeviceActionWorker+0x4cc
ffffd70d`c3a61b70 fffff804`13f1de85 : ffffc701`97eef040 00000000`00000080 ffffc701`97aa8040 00000000`00000000 : nt!ExpWorkerThread+0x105
ffffd70d`c3a61c10 fffff804`14003498 : ffff8500`cb040180 ffffc701`97eef040 fffff804`13f1de30 00000000`00000000 : nt!PspSystemThreadStartup+0x55
ffffd70d`c3a61c60 00000000`00000000 : ffffd70d`c3a62000 ffffd70d`c3a5c000 00000000`00000000 00000000`00000000 : nt!KiStartSystemThread+0x28
SYMBOL_NAME: hdsp_64+1f21
MODULE_NAME: hdsp_64
IMAGE_NAME: hdsp_64.sys
STACK_COMMAND: .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET: 1f21
FAILURE_BUCKET_ID: 0xc4_2000_VRF_hdsp_64!unknown_function
OS_VERSION: 10.0.19041.1
BUILDLAB_STR: vb_release
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
FAILURE_ID_HASH: {59218fba-ae70-84a3-a3ec-a296b73a1c9b}
Followup: MachineOwner
---------
8: kd> lmvm hdsp_64
Browse full module list
start end module name
fffff801`d25d0000 fffff801`d25f1000 hdsp_64 (no symbols)
Loaded symbol image file: hdsp_64.sys
Image path: \SystemRoot\system32\drivers\hdsp_64.sys
Image name: hdsp_64.sys
Browse all global symbols functions data
Timestamp: Tue Dec 8 15:59:54 2020 (5FCF86DA)
CheckSum: 00024FF9
ImageSize: 00021000
Translations: 0000.04b0 0000.04e4 0409.04b0 0409.04e4
Information from resource tables:
8: kd> lmDvmhdsp_64