What does NTSTATUS 0xC00000B5 (STATUS_IO_TIMEOUT) mean?

 
Previous Next
STATUS_INVALID_READ_MODE STATUS_FILE_FORCED_CLOSED

STATUS_IO_TIMEOUT

STATUS_IO_TIMEOUT means that an I/O operation did not complete within the timeout set by the stack or protocol. It identifies elapsed time, not the root cause. A timeout can result from a busy or unavailable device, a stalled storage path, removable media state, a network transport delay, or a lower-level driver that failed to complete the request.

How to investigate the timeout

  • Log the target device or remote endpoint, operation type, request size, timeout value, and correlation identifier.
  • Check whether the same target returns STATUS_DEVICE_NOT_READY, media errors, reset events, or transport disconnects before or after the timeout.
  • Compare the timeout with expected workload and queue depth; increasing it without understanding the wait can hide a stuck path.
  • For retryable protocols, use bounded retries and preserve idempotency so that an uncertain write is not duplicated after reconnection.

When a retry is appropriate

Microsoft's storage-driver guidance includes STATUS_IO_TIMEOUT among conditions that may be resolved by restoring media or device readiness. That makes a carefully bounded retry reasonable for a transient state. Repeated timeouts, however, should be treated as a storage or transport incident and correlated with device, controller, network, and application logs.

See IoIsErrorUserInduced, Media-change handling guidance, and the NTSTATUS reference.


Looking for a different code? Search another status or error code.