| Previous | Next |
| kIOReturnTimeout | kIOReturnNotReady |
kIOReturnOffline
An operational-state result
kIOReturnOffline means that a device is present in the IOKit model but is not currently online for the requested operation. This can occur while a removable or network-backed device is transitioning state, after an interface was disabled, during a controller reset, or when a driver exposes a logical offline state before the object is fully removed.
It should not be collapsed into kIOReturnNoDevice. A missing device normally requires rediscovery; an offline device may become usable again without a new physical attachment. Conversely, repeatedly polling an offline device can hide an upstream power, transport, or lifecycle event. The right recovery depends on whether the owner of the device state expects a transition or has declared it permanently unavailable.
Diagnostic approach
- Identify the IOKit family and the state transition that put the service offline.
- Record power, transport, and mount or configuration events around the first failure.
- Use notifications or a bounded state wait when the API offers them; avoid an unbounded tight retry loop.
- Reopen the client connection only if the family documentation says the offline transition invalidates it.
References
- Apple IOReturn.h reference
- Apple IOKit Fundamentals: Architectural Overview
- Apple Disk Arbitration Programming Guide
Looking for a different code? Search another status or error code.