What does macOS kernel return 0xE00002D5 (kIOReturnBusy) mean?

 
Previous Next
kIOReturnDMAError kIOReturnTimeout

kIOReturnBusy

Busy is a concurrency signal

kIOReturnBusy reports that a device or resource is currently occupied. It can reflect an in-flight transfer, a state-changing operation, a mounted or claimed service, controller serialization, or another client using a resource that cannot safely be shared for this call. It does not necessarily mean that exclusive access was granted to another process; that more specific condition is represented by kIOReturnExclusiveAccess.

A fast retry loop turns a contention condition into extra load and can interfere with the operation that must finish first. Treat the value as a request to identify the owner or state transition, then wait for completion, release local work, or queue the operation according to the family’s concurrency model.

Recommended checks

  • Record the active operation, open clients, queue depth, and whether the device is changing configuration or power state.
  • Serialize operations that cannot overlap, especially resets, format/eject operations, and control requests that change interfaces.
  • Use completion callbacks or notifications rather than speculative retries whenever the API provides them.
  • Investigate a busy state that persists beyond the normal operation window as a deadlock or stalled driver symptom.

References


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