What does NTSTATUS 0xC000003E (STATUS_DATA_ERROR) mean?

 
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


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