| Previous | Next |
| STATUS_INTERRUPT_VECTOR_ALREADY_CONNECTED | STATUS_PROCESS_CLONED |
STATUS_INTERRUPT_STILL_CONNECTED
The ISR is still attached to the interrupt resource
Interrupt registration outlives ordinary I/O requests but must not outlive ownership of the assigned hardware resource. This status means teardown reached a point where the interrupt object is still connected. A late interrupt can then call an ISR whose device registers, queues or extension are already being dismantled.
The safe order is device-specific, but it normally includes stopping new I/O, disabling the device interrupt source, synchronizing with any executing ISR or DPC, disconnecting the interrupt, and only then freeing shared state. Merely masking the device without releasing the kernel connection leaves lifecycle bookkeeping inconsistent.
What to inspect
- Record PnP state, interrupt-active flag, pending DPCs and the exact teardown branch.
- Ensure failed-start, stop and surprise-removal paths all converge on the same disconnect routine.
- Check that hardware is silenced before interrupt context or device-extension storage is released.
References
- Microsoft: Registering an ISR
- Microsoft: Synchronizing ISR and driver data
- Microsoft: Handling surprise removal
- Microsoft: Removing a device
- Microsoft Open Specifications: NTSTATUS values
- ReactOS source: PnP device action processing
Looking for a different code? Search another status or error code.
