| Previous | Next |
| kIOUSBTooManyPipesErr | kIOConfigNoEntry |
kIOUSBUnknownPipeErr
The pipe reference is stale, foreign, or no longer valid
kIOUSBUnknownPipeErr says that the IOUSBFamily stack does not recognize the supplied pipe reference. The status is about the host-side object identity, not a device endpoint response. A pipe can become invalid after an interface is closed, the device is re-enumerated, an alternate setting changes, or a caller mixes references from different interface instances.
This differs from kIOUSBEndpointNotFound, where an endpoint lookup fails in a descriptor/interface context. Here a pipe handle exists in the caller but cannot be resolved by the current object that received the request.
Validate ownership and lifetime
- Record the pipe reference's creator, owning interface reference, configuration, alternate setting, and endpoint address.
- Invalidate cached pipe handles on disconnect, reset, configuration change, and interface close.
- Ensure that a callback does not submit follow-up work through a pipe that was released by another teardown path.
- Do not reinterpret the error as a physical device disconnect without checking the interface object lifecycle.
References
Looking for a different code? Search another status or error code.