diff --git a/sdk/lib/drivers/wdf/shared/irphandlers/pnp/interruptobject.cpp b/sdk/lib/drivers/wdf/shared/irphandlers/pnp/interruptobject.cpp index 868d2cd62ed..9265cc1d794 100644 --- a/sdk/lib/drivers/wdf/shared/irphandlers/pnp/interruptobject.cpp +++ b/sdk/lib/drivers/wdf/shared/irphandlers/pnp/interruptobject.cpp @@ -1505,7 +1505,18 @@ Return Value: // synchronize against this interrupt. For KMDF this will flush DPCs and // for UMDF this will send a message to reflector to flush queued DPCs. // +#ifdef __REACTOS__ + /* + * This causes DPCs to be flushed when SystemAffinity is already disabled. + * To be clear this isn't the fault of KMDF, but instead it's the fault + * of our current PCI.sys due to how it's architected. + */ +#ifndef FX_IS_KERNEL_MODE FlushQueuedDpcs(); +#endif +#else + FlushQueuedDpcs(); +#endif #if FX_IS_KERNEL_MODE //