| Previous | Next |
| KERN_TERMINATED | KERN_LOCK_UNSTABLE |
KERN_LOCK_SET_DESTROYED
A destroyed synchronization container
KERN_LOCK_SET_DESTROYED means the lock-set object itself is no longer available. It is not the same as KERN_LOCK_OWNED, where a valid lock is held by another thread, or KERN_LOCK_UNSTABLE, where ownership became invalid after a holder terminated.
The diagnosis should focus on lock-set lifetime: destruction must not race with clients that can still attempt acquisition, release, or membership operations.
What to inspect
- Identify which component owns destruction and how it excludes new clients.
- Check whether outstanding waiters and callbacks are drained before the lock set is released.
- Look for a cached reference that outlives its parent service or task.
- Determine whether the result follows a controlled shutdown or an unexpected termination path.
References
- Apple XNU: kern_return.h
- Apple Kernel Programming Guide: synchronization primitives
- Apple Kernel Programming Guide: Mach IPC and kernel objects
Looking for a different code? Search another status or error code.