Jump to content
Corsair Community

iCue Drivers Causing BSOD


mroselli

Recommended Posts

I tired to contact Corsair directly via product support but the response I got was to try reinstalling and that no the email could not be forwarded to software engineering.

 

 

I have been battling random BSOD ever since I put this PC together. I narrowed it down to Corsair software being the cause. When the PC crashes, it never succeeds to create a dump. I get a lot of LiveKernelEvent 144 (1003 or 3003) in the event log. I finally was able to get the Windows driver verifier to spit out some useful information when I enabled it with DDI compliance. Corsair driver immediately fails driver verifier as soon as PC boots.

 

The error code is with CorsairLLAccess.sys and indicates ... EDIT: <removed> - see post below. I decoded the bugcheck wrong, WinDbg shows the correct bug.

 

Does someone know how I can get this info to Corsair engineers ? I think the driver needs to be fixed. Do they browse this forum ?

icue_export_system_info_and_logs.zip

102119-6546-01dump.zip

Edited by mroselli
Removed incorrect assertion
Link to comment
Share on other sites

I imagine you tried reinstalling before starting down this road. I have passed it on to the iCUE software team, but I can't guarantee they will respond directly.

 

You're running a common processor on a popular motherboard. It seems unlikely this is hardware related. I don't want to tell you to go do a Windows clean install, but it seems like CUE and Windows are the two central elements. If it's not a CUE install corruption, then that leaves the other.

Link to comment
Share on other sites

I have tried reinstalling iCue. Not Windows yet but I've done many DISM scan repair things and file system checks.

 

My understanding is that the driver verifier bugcheck indicates a software bug in the driver itself. Particularly the error code indicated in the dump file.

 

Thankfully the problem only occurs in idle loads and lately its frequency had decreased. It happened shortly after I updated iCue which is what renewed my interest in finding the root cause once more. All said I've probably spent 20 hours thus far attempting to narrow the cause.

Link to comment
Share on other sites

I checked with our devs and analyzed your log. It looks like the problem is related to you enabling driver verifier custom settings for developers in Windows 10. Why did you do this?

 

I did this because I needed evidence to support my claim that Corsair drivers are causing my computer to crash.

 

Enabling driver verifier on my PC allows me to test your driver for compatibility with Windows. As per my attached dump file, the driver is failing with bugcheck code 0xC4 and the following parameters (decoded using this webpage):

 

Parameter 1: 0x2000 - The Storport miniport driver passed a bad argument (a NULL pointer) to the StorPortInitialize routine.
Parameter 2: 0xfffff801e7121c5d - The first argument passed to the StorPortInitialize routine. This parameter is a pointer to the driver object that the operating system passed to the miniport driver in the first argument of the miniport driver's DriverEntry routine.
Parameter
Parameter 3: 0x0 (NULL) - The second argument passed to the StorPortInitialize routine. This parameter is a pointer to context information that the operating system passed to the miniport driver in the second argument of the miniport driver's DriverEntry routine.

 

This is odd because this driver is not a Storport miniport driver... and when I load the dump file in WinDbg, it indicates the following decode for C4:

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: fffff801e7121c5d, The address in the driver's code where the error was detected.
Arg3: 0000000000000000, Pool Type.
Arg4: 000000004d4d4c43, Pool Tag (if provided).

 

This code integrity issue matches this web page description: https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/code-integrity-checking

 

Okay so I'm pretty sure this is actually a Code Integrity bugcheck fail (and a Microsoft documentation issue). It appears the driver is allocating a page with the executable bit set and it should not be doing that. Is that crash worthy? Deserving of a revision to the driver? I'll leave that to Corsair's discretion.

 

I'll try continuing to run Verifier on with Code Integrity disabled.

 

My initial comment:

The error code is with CorsairLLAccess.sys and indicates that a Windows API function that should only be invoked while under passive IRQL level is being invoked while not in passive IRQL which leads to hangs and deadlock.

is incorrect. I was looking at the wrong bug check code (0x00020002 , the entry below the incorrect StorportInitialize() bugcheck). I'll edit the comment to reflect that.

 

I appreciate the developers taking a look. I'm at my wit's end trying to justify not throwing my brand new PC in the trash. I'll post back after I've ran verifier with CI disabled. Thanks again.

Link to comment
Share on other sites

  • 2 months later...

I was also having repeated BSOD from iCUE, it all started after my computer had entered hybrid sleep, my custom fan profile for AX1200i was for some reason deleted, and then the BSOD's began.

 

Reinputting the fan profile to a state where the fan is always on and disabling hybrid sleep has fixed the issue.

Link to comment
Share on other sites

×
×
  • Create New...