Question [SOLVED] Xusb22.sys DRIVER_VERIFIER_IOMANAGER_VIOLATION (c9)

May 9, 2024
42
2
35
Hey all. I've been having this... well, weird issue recently. I use the DS4Windows app to use my, well, DS4 controller, on my machine. This didn't used to be a problem. it's have a weird quirk here and there - the controller might shut off in the middle of gameplay, but I could just turn it back on - silly stuff like that. but recently, this issue has become exacerbated. Whenever the controller is disconnected or the DS4 app is stopped is closed, windows BSODs with the DRIVER_VERIFIER_IOMANAGER_VIOLATION error. Now, i had NO idea what this was - only the driver causing it - Xusb22, which I noted above.

I've seen some threads on Microsoft's forums, github, here... But they're all for either Xusb21 or are just too old to be considered correct information. This error doesn't seem to be damaging my computer, but it's annoying. I almost elusively use this thing for gaming, so you can see why I'm a little bothered. I'm attaching the WinDbg analysis below, if someone smarter than me can parse anything from them and point me in the right direction.

Just for posterity's sake, I've reintalled the driver, applied (and later unapplied) a fix for the driver, unintalling the device... I'm kind of at a loss.

Code:
6: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_VERIFIER_IOMANAGER_VIOLATION (c9)
The IO manager has caught a misbehaving driver.
Arguments:
Arg1: 0000000000000007, IRP passed to IoCompleteRequest still has cancel routine set
Arg2: fffff8054f2a24f0, the cancel routine pointer
Arg3: ffffcd8d3a25ad80, the IRP
Arg4: 0000000000000000

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


KEY_VALUES_STRING: 1

    Key  : Analysis.CPU.mSec
    Value: 1484

    Key  : Analysis.Elapsed.mSec
    Value: 2742

    Key  : Analysis.IO.Other.Mb
    Value: 31

    Key  : Analysis.IO.Read.Mb
    Value: 1

    Key  : Analysis.IO.Write.Mb
    Value: 41

    Key  : Analysis.Init.CPU.mSec
    Value: 1265

    Key  : Analysis.Init.Elapsed.mSec
    Value: 46346

    Key  : Analysis.Memory.CommitPeak.Mb
    Value: 121

    Key  : Analysis.Version.DbgEng
    Value: 10.0.27793.1000

    Key  : Analysis.Version.Description
    Value: 10.2410.02.02 amd64fre

    Key  : Analysis.Version.Ext
    Value: 1.2410.2.2

    Key  : Bugcheck.Code.KiBugCheckData
    Value: 0xc9

    Key  : Bugcheck.Code.LegacyAPI
    Value: 0xc9

    Key  : Bugcheck.Code.TargetModel
    Value: 0xc9

    Key  : Dump.Attributes.AsUlong
    Value: 0x1800

    Key  : Dump.Attributes.DiagDataWrittenToHeader
    Value: 1

    Key  : Dump.Attributes.ErrorCode
    Value: 0x0

    Key  : Dump.Attributes.LastLine
    Value: Dump completed successfully.

    Key  : Dump.Attributes.ProgressPercentage
    Value: 100

    Key  : Failure.Bucket
    Value: 0xc9_7_VRF_xusb22!WaitAndUnfilteredRequestCancelRoutine

    Key  : Failure.Exception.IP.Address
    Value: 0xfffff8054f2a24f0

    Key  : Failure.Exception.IP.Module
    Value: xusb22

    Key  : Failure.Exception.IP.Offset
    Value: 0x124f0

    Key  : Failure.Hash
    Value: {f190410e-b006-4ec1-a13d-974534f3061c}

    Key  : Hypervisor.Enlightenments.ValueHex
    Value: 0x1417df84

    Key  : Hypervisor.Flags.AnyHypervisorPresent
    Value: 1

    Key  : Hypervisor.Flags.ApicEnlightened
    Value: 0

    Key  : Hypervisor.Flags.ApicVirtualizationAvailable
    Value: 1

    Key  : Hypervisor.Flags.AsyncMemoryHint
    Value: 0

    Key  : Hypervisor.Flags.CoreSchedulerRequested
    Value: 0

    Key  : Hypervisor.Flags.CpuManager
    Value: 1

    Key  : Hypervisor.Flags.DeprecateAutoEoi
    Value: 1

    Key  : Hypervisor.Flags.DynamicCpuDisabled
    Value: 1

    Key  : Hypervisor.Flags.Epf
    Value: 0

    Key  : Hypervisor.Flags.ExtendedProcessorMasks
    Value: 1

    Key  : Hypervisor.Flags.HardwareMbecAvailable
    Value: 1

    Key  : Hypervisor.Flags.MaxBankNumber
    Value: 0

    Key  : Hypervisor.Flags.MemoryZeroingControl
    Value: 0

    Key  : Hypervisor.Flags.NoExtendedRangeFlush
    Value: 0

    Key  : Hypervisor.Flags.NoNonArchCoreSharing
    Value: 1

    Key  : Hypervisor.Flags.Phase0InitDone
    Value: 1

    Key  : Hypervisor.Flags.PowerSchedulerQos
    Value: 0

    Key  : Hypervisor.Flags.RootScheduler
    Value: 0

    Key  : Hypervisor.Flags.SynicAvailable
    Value: 1

    Key  : Hypervisor.Flags.UseQpcBias
    Value: 0

    Key  : Hypervisor.Flags.Value
    Value: 21631230

    Key  : Hypervisor.Flags.ValueHex
    Value: 0x14a10fe

    Key  : Hypervisor.Flags.VpAssistPage
    Value: 1

    Key  : Hypervisor.Flags.VsmAvailable
    Value: 1

    Key  : Hypervisor.RootFlags.AccessStats
    Value: 1

    Key  : Hypervisor.RootFlags.CrashdumpEnlightened
    Value: 1

    Key  : Hypervisor.RootFlags.CreateVirtualProcessor
    Value: 1

    Key  : Hypervisor.RootFlags.DisableHyperthreading
    Value: 0

    Key  : Hypervisor.RootFlags.HostTimelineSync
    Value: 1

    Key  : Hypervisor.RootFlags.HypervisorDebuggingEnabled
    Value: 0

    Key  : Hypervisor.RootFlags.IsHyperV
    Value: 1

    Key  : Hypervisor.RootFlags.LivedumpEnlightened
    Value: 1

    Key  : Hypervisor.RootFlags.MapDeviceInterrupt
    Value: 1

    Key  : Hypervisor.RootFlags.MceEnlightened
    Value: 1

    Key  : Hypervisor.RootFlags.Nested
    Value: 0

    Key  : Hypervisor.RootFlags.StartLogicalProcessor
    Value: 1

    Key  : Hypervisor.RootFlags.Value
    Value: 1015

    Key  : Hypervisor.RootFlags.ValueHex
    Value: 0x3f7

    Key  : SecureKernel.HalpHvciEnabled
    Value: 0

    Key  : WER.OS.Branch
    Value: ni_release

    Key  : WER.OS.Version
    Value: 10.0.22621.1


BUGCHECK_CODE:  c9

BUGCHECK_P1: 7

BUGCHECK_P2: fffff8054f2a24f0

BUGCHECK_P3: ffffcd8d3a25ad80

BUGCHECK_P4: 0

FILE_IN_CAB:  MEMORY.DMP

DUMP_FILE_ATTRIBUTES: 0x1800

FAULTING_THREAD:  ffffcd8ce470f400

DRIVER_VERIFIER_IO_VIOLATION_TYPE:  7

IRP_CANCEL_ROUTINE:
xusb22!WaitAndUnfilteredRequestCancelRoutine+0
fffff805`4f2a24f0 488bc4          mov     rax,rsp

IRP_ADDRESS: ffffcd8d3a25ad80

DEVICE_OBJECT: ffffcd8d00823820

DRIVER_OBJECT: ffffcd8d182e8e30

IMAGE_NAME:  xusb22.sys

MODULE_NAME: xusb22

FAULTING_MODULE: fffff8054f290000 xusb22

BLACKBOXBSD: 1 (!blackboxbsd)


BLACKBOXNTFS: 1 (!blackboxntfs)


BLACKBOXPNP: 1 (!blackboxpnp)


BLACKBOXWINLOGON: 1

PROCESS_NAME:  System

STACK_TEXT:
ffff928e`a3ef9548 fffff805`3c0d13d1     : 00000000`000000c9 00000000`00000007 fffff805`4f2a24f0 ffffcd8d`3a25ad80 : nt!KeBugCheckEx
ffff928e`a3ef9550 fffff805`3c0c554c     : ffffcd8d`3a25ad80 ffff928e`a3ef9679 ffffcd8c`e46d7d50 ffffcd8c`e46d7d00 : nt!VerifierBugCheckIfAppropriate+0x14d
ffff928e`a3ef95f0 fffff805`3ba4623d     : 00000000`00000001 ffffcd8c`e46869e0 ffffcd8c`e46d7d50 fffff805`3c0d9ca1 : nt!IovCompleteRequest+0xc0
ffff928e`a3ef96e0 fffff805`3bbe7477     : ffffcd8d`02622f70 fffff805`3ca5114d fffff805`3cadd4e0 fffff805`3c0c44b3 : nt!IofCompleteRequest+0x201ebd
ffff928e`a3ef9710 fffff805`4f2a27e7     : ffffcd8d`4189cfe0 ffffcd8d`02622f40 00000000`00000001 ffffcd8d`3cf90fe0 : nt!DifIofCompleteRequestWrapper+0xc7
ffff928e`a3ef9760 fffff805`4f29e449     : ffffcd8d`03ccae60 00000000`00000001 ffffcd8d`28de2d00 ffffcd8d`28de2d00 : xusb22!XInputControllerDevice::cleanupWaitingRequests+0xcf
ffff928e`a3ef97a0 fffff805`4f29f761     : ffffcd8d`029fef01 ffff928e`a3ef9930 ffffcd8d`28de2d00 ffff928e`a3ef9930 : xusb22!XenonBusInformation::CleanupChildren+0x71
ffff928e`a3ef97d0 fffff805`4f2b07fe     : 00003272`d721d2f8 00000000`00000015 00000000`00000000 fffff805`3ca695c6 : xusb22!XenonBusInformation::OnSurpriseRemoval+0xa9
ffff928e`a3ef9800 fffff805`3ca5fd77     : ffffcd8d`03d54a58 ffffcd8c`e46a4380 00000000`0000000e ffff928e`a3ef98e8 : xusb22!HandleXenonBusSurpriseRemoval+0x4e
ffff928e`a3ef9830 fffff805`3ca5ff2a     : 00000000`00000008 ffff928e`a3ef98f8 00000000`00000004 ffff928e`a3ef9900 : Wdf01000!FxPowerDeviceWakeFromSxTriggered::InvokeClient+0x17 [minkernel\wdf\framework\shared\irphandlers\pnp\pnpcallbacks.cpp @ 670]
ffff928e`a3ef9860 fffff805`3cabb5d5     : ffffcd8d`03d54900 00000000`00000127 00000000`00000000 ffffcd8d`03d54a38 : Wdf01000!FxPrePostCallback::InvokeStateless+0x32 [minkernel\wdf\framework\shared\irphandlers\pnp\cxpnppowercallbacks.cpp @ 408]
ffff928e`a3ef9890 fffff805`3caba527     : 00000000`00000127 ffff928e`a3ef9930 00000000`00000119 ffffcd8c`e46869e0 : Wdf01000!FxPkgPnp::PnpEventSurpriseRemoveIoStarted+0x25 [minkernel\wdf\framework\shared\irphandlers\pnp\pnpstatemachine.cpp @ 2784]
ffff928e`a3ef98c0 fffff805`3cabc1af     : ffffcd8d`03d54900 fffff805`3c0d9ca1 ffffcd8d`03d54900 00000000`00000000 : Wdf01000!FxPkgPnp::PnpEnterNewState+0x15f [minkernel\wdf\framework\shared\irphandlers\pnp\pnpstatemachine.cpp @ 1234]
ffff928e`a3ef9950 fffff805`3cabbfe6     : ffffcd8d`03d54900 ffff928e`a3ef9b00 ffffcd8d`03d54a60 ffffcd8d`03d54a38 : Wdf01000!FxPkgPnp::PnpProcessEventInner+0x163 [minkernel\wdf\framework\shared\irphandlers\pnp\pnpstatemachine.cpp @ 1150]
ffff928e`a3ef99c0 fffff805`3cac41c9     : 00000000`00000000 ffffcd8d`03d54900 ffff928e`a3ef9b10 ffff928e`a3ef9ae8 : Wdf01000!FxPkgPnp::PnpProcessEvent+0x182 [minkernel\wdf\framework\shared\irphandlers\pnp\pnpstatemachine.cpp @ 933]
ffff928e`a3ef9a50 fffff805`3cac8b49     : 00000000`00000008 00000000`00000000 00000000`00000000 00000000`00000000 : Wdf01000!FxPkgPnp::PnpSurpriseRemoval+0x25 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgpnp.cpp @ 2579]
ffff928e`a3ef9a80 fffff805`3ca57a94     : ffffcd8d`03d54900 ffff928e`a3ef9b10 00000000`00000000 ffffcd8d`00823820 : Wdf01000!FxPkgFdo::_PnpSurpriseRemoval+0x9 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgfdo.cpp @ 365]
ffff928e`a3ef9ab0 fffff805`3ca57b41     : ffffcd8d`3f10ed80 ffffcd8d`3f10ed80 ffffcd8d`00823820 ffffcd8d`00823820 : Wdf01000!FxPkgPnp::Dispatch+0xd4 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgpnp.cpp @ 771]
ffff928e`a3ef9b20 fffff805`3b9083e7     : ffffcd8d`3f10ed80 fffff805`3c0d16cd ffffcd8d`3f10ef28 ffffcd8d`00823820 : Wdf01000!FxDevice::DispatchWithLock+0x81 [minkernel\wdf\framework\shared\core\fxdevice.cpp @ 1446]
ffff928e`a3ef9b70 fffff805`3c0c5400     : ffffcd8d`3f10ed80 ffffcd8d`00823820 00000000`00000000 00000000`00000001 : nt!IopfCallDriver+0x53
ffff928e`a3ef9bb0 fffff805`3ba49aa1     : ffff928e`a3ef9d10 ffff928e`a3ef9e00 00000000`00000000 ffffcd8d`21265260 : nt!IovCallDriver+0x230
ffff928e`a3ef9bf0 fffff805`3cac88c7     : ffffcd8c`e4688a30 00000000`00000000 ffffcd8c`e4688a10 fffff805`3c9d315b : nt!IofCallDriver+0x1dacc1
ffff928e`a3ef9c30 fffff805`3cac7c50     : ffff928e`a3ef9d10 ffffcd8d`03c3aa60 ffffcd8d`03c3aa60 ffffcd8c`fe1bb180 : Wdf01000!FxPkgFdo::_PnpPassDown+0x57 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgfdo.cpp @ 330]
ffff928e`a3ef9c60 fffff805`3caba052     : ffffcd8d`03c3aa60 00000000`00000000 00000000`00000000 00000000`00000000 : Wdf01000!FxPkgFdo::FireAndForgetIrp+0x20 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgfdo.cpp @ 300]
ffff928e`a3ef9c90 fffff805`3cabc017     : ffffcd8d`3f10ed80 ffffcd8d`03c3a900 ffffcd8d`03c3aa60 ffffcd8d`31a48ac0 : Wdf01000!FxPostProcessInfo::Evaluate+0x4a [minkernel\wdf\framework\shared\inc\private\common\FxPkgPnp.hpp @ 5226]
ffff928e`a3ef9cc0 fffff805`3cac41c9     : 00000000`00000000 ffffcd8d`03c3a900 ffff928e`a3ef9e10 ffff928e`a3ef9de8 : Wdf01000!FxPkgPnp::PnpProcessEvent+0x1b3 [minkernel\wdf\framework\shared\irphandlers\pnp\pnpstatemachine.cpp @ 936]
ffff928e`a3ef9d50 fffff805`3cac8b49     : 00000000`00000008 00000000`00000000 00000000`00000000 00000000`c00000bb : Wdf01000!FxPkgPnp::PnpSurpriseRemoval+0x25 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgpnp.cpp @ 2579]
ffff928e`a3ef9d80 fffff805`3ca57a94     : ffffcd8d`03c3a900 ffff928e`a3ef9e10 00000000`00000000 ffffcd8d`1d695a50 : Wdf01000!FxPkgFdo::_PnpSurpriseRemoval+0x9 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgfdo.cpp @ 365]
ffff928e`a3ef9db0 fffff805`3ca57b41     : ffffcd8d`3f10ed80 ffffcd8d`3f10ed80 ffffcd8d`1d695a50 ffffcd8d`1d695a50 : Wdf01000!FxPkgPnp::Dispatch+0xd4 [minkernel\wdf\framework\shared\irphandlers\pnp\fxpkgpnp.cpp @ 771]
ffff928e`a3ef9e20 fffff805`3b9083e7     : ffffcd8d`3f10ed80 fffff805`3c0d16cd ffffcd8d`3f10ef70 ffffcd8d`1d695a50 : Wdf01000!FxDevice::DispatchWithLock+0x81 [minkernel\wdf\framework\shared\core\fxdevice.cpp @ 1446]
ffff928e`a3ef9e70 fffff805`3c0c5400     : ffffcd8d`3f10ed80 ffffcd8d`1d695a50 ffffcd8d`3f10ed80 fffff805`3c0d1c55 : nt!IopfCallDriver+0x53
ffff928e`a3ef9eb0 fffff805`3ba49aa1     : ffffcd8d`1d695a50 00000000`00000000 ffffcd8c`e470f9d8 ffffcd8d`2b16c060 : nt!IovCallDriver+0x230
ffff928e`a3ef9ef0 fffff805`3bd686c4     : ffffcd8d`1d695a50 00000000`00000000 ffff928e`a3ef9fe0 ffffcd8d`3f10ed80 : nt!IofCallDriver+0x1dacc1
ffff928e`a3ef9f30 fffff805`3be6d440     : 00000000`00000017 ffffcd8d`31a48ac0 ffffcd8d`348ed1e0 ffffcd8d`31a48ac0 : nt!IopSynchronousCall+0xf8
ffff928e`a3ef9fa0 fffff805`3be851c8     : ffffbb0c`a7648e60 00000000`00000000 00000000`00000310 00000000`0000030a : nt!IopRemoveDevice+0x108
ffff928e`a3efa050 fffff805`3be6be84     : ffffcd8d`348ed1e0 00000000`00000000 00000000`00000000 fffff805`3be6bdc3 : nt!PnpSurpriseRemoveLockedDeviceNode+0xc4
ffff928e`a3efa0b0 fffff805`3be6bbcb     : ffffcd8d`348ed1e0 ffff928e`a3efa130 ffffcd8d`31a48ac0 00000000`00000004 : nt!PnpDeleteLockedDeviceNode+0x8c
ffff928e`a3efa0f0 fffff805`3be6b016     : ffffcd8d`31a48ac0 00000002`00000002 00000000`00000000 00000000`00000003 : nt!PnpDeleteLockedDeviceNodes+0xd3
ffff928e`a3efa170 fffff805`3bd56b55     : ffff928e`a3efa2b0 ffffcd8d`348ed100 ffffcd8d`348fa800 ffffbb0c`00000002 : nt!PnpProcessQueryRemoveAndEject+0x1ce
ffff928e`a3efa250 fffff805`3bd57b4a     : ffffbb0c`a7648e60 ffffbb0c`e0f92bd0 ffffcd8c`e46aec00 00000000`00000000 : nt!PnpProcessTargetDeviceEvent+0x109
ffff928e`a3efa280 fffff805`3b8bfbf5     : ffffcd8c`e46aecb0 ffffcd8c`e470f400 ffff928e`a3efa400 ffffcd8c`00000000 : nt!PnpDeviceEventWorker+0x2ca
ffff928e`a3efa300 fffff805`3b955487     : ffffcd8c`e470f400 00000000`000000ae ffffcd8c`e470f400 fffff805`3b8bfaa0 : nt!ExpWorkerThread+0x155
ffff928e`a3efa4f0 fffff805`3ba21ec4     : ffff9481`f3bc0180 ffffcd8c`e470f400 fffff805`3b955430 00000000`00000000 : nt!PspSystemThreadStartup+0x57
ffff928e`a3efa540 00000000`00000000     : ffff928e`a3efb000 ffff928e`a3ef4000 00000000`00000000 00000000`00000000 : nt!KiStartSystemThread+0x34


SYMBOL_NAME:  xusb22!WaitAndUnfilteredRequestCancelRoutine+0

STACK_COMMAND:  .process /r /p 0xffffcd8ce4730080; .thread 0xffffcd8ce470f400 ; kb

BUCKET_ID_FUNC_OFFSET:  0

FAILURE_BUCKET_ID:  0xc9_7_VRF_xusb22!WaitAndUnfilteredRequestCancelRoutine

OS_VERSION:  10.0.22621.1

BUILDLAB_STR:  ni_release

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

FAILURE_ID_HASH:  {f190410e-b006-4ec1-a13d-974534f3061c}

Followup:     MachineOwner
---------
 
When posting a thread of troubleshooting nature, it's customary to include your full system's specs. Please list the specs to your build like so:
CPU:
CPU cooler:
Motherboard:
Ram:
SSD/HDD:
GPU:
PSU:
Chassis:
OS:
Monitor:
include the age of the PSU apart from it's make and model. BIOS version for your motherboard at this moment of time.

Have you tried manually reinstalling the USB/chipset drivers in an elevated command, i.e, Right click installer>Run as Administrator?

Ideally you should've include the *.dmp files for us to look through since not everyone uses WinDBG to read .dmp files.

This might be worth a read;
https://github.com/coldhex/xusbfixer
 
turn off verifier.exe via
running the command verifier.exe /reset
or tell verifier to exclude the old xbox driver.
ie run
cmd.exe as an admin, then run
verifier.exe /driver. Exclude xusb22.sys

https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/verifier-command-line
I was coming here to delete this post because I realized I could do this after windows threw the EXACT same flag after trying to use Virtualbox. But, instead of doing that, I'll just say thank you! Because this works.