| Previous | Next |
| STATUS_DATA_LATE_ERROR | STATUS_CRC_ERROR |
STATUS_DATA_ERROR
The I/O completed with a data-transfer error, but the status is not a root-cause classifier
STATUS_DATA_ERROR says an error occurred while reading or writing data. It is intentionally less specific than statuses such as STATUS_CRC_ERROR, STATUS_DEVICE_DATA_ERROR or a file-system corruption result. The code alone does not tell you whether the failure came from media, a transport, a controller, a filter, or software that validated the transferred data.
Preserve the original I/O request before retrying: device or file identity, byte offset, length, direction and the lower-level status or sense data if a storage stack is involved. Repeatedly reading the same range can be diagnostically useful only if the result is recorded; a successful retry may hide an intermittent path or media problem.
Windows provides FsRtlIsTotalDeviceFailure for file-system or fault-tolerant disk completion paths that need to classify certain media or hardware failures. That reinforces the need to keep the more specific completion evidence rather than treating every data error as disk corruption.
What to inspect
- The exact failing offset and length and whether reads and writes fail at the same range.
- Underlying storage sense data, controller events, CRC or bad-sector statuses.
- Whether the same data succeeds through a redundant path or copy, which can separate media from higher-layer validation.
References
- Microsoft: FsRtlIsTotalDeviceFailure
- Microsoft: Storage error logging and tracing
- Microsoft: Storage driver architecture
- Microsoft Open Specifications: NTSTATUS values
Looking for a different code? Search another status or error code.