| Previous | Next |
| ERROR_FLT_DUPLICATE_ENTRY | ERROR_FLT_DO_NOT_ATTACH |
ERROR_FLT_CBDQ_DISABLED
Queue shutdown and insertion raced
ERROR_FLT_CBDQ_DISABLED is returned by FltCbdqInsertIo when the target callback-data queue is disabled. A CBDQ gives a minifilter a cancel-safe way to retain I/O, but disabling it establishes a gate: new callback data is rejected while existing entries can be removed and completed according to the driver’s shutdown policy.
The result should be handled at the point where the original request is still owned correctly. A caller that returned FLT_PREOP_PENDING before confirming insertion can orphan an operation. Conversely, re-enabling a queue during instance teardown can admit work after the worker and backing state have already stopped.
Queue-state discipline
- Insert the callback data and examine the return value before committing to the pending return path.
- Coordinate
FltCbdqDisablewith worker shutdown and draining of queued operations. - Decide whether rejected requests should continue, fail, or complete through a nonqueued fallback.
- Use
FltCbdqEnableonly when all consumers and queue-owned state are ready again.
References
- Microsoft: FltCbdqInsertIo and disabled queues
- Microsoft: FltCbdqDisable
- Microsoft: processing queued minifilter I/O
Looking for a different code? Search another status or error code.