diff options
Diffstat (limited to 'usr/src/uts/common')
| -rw-r--r-- | usr/src/uts/common/syscall/uadmin.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/usr/src/uts/common/syscall/uadmin.c b/usr/src/uts/common/syscall/uadmin.c index cb71c07b9a..9946bd4b22 100644 --- a/usr/src/uts/common/syscall/uadmin.c +++ b/usr/src/uts/common/syscall/uadmin.c @@ -174,8 +174,11 @@ kadmin(int cmd, int fcn, void *mdep, cred_t *credp) */ if (p != &p0) { proc_is_exiting(p); - if ((error = exitlwps(0)) != 0) + if ((error = exitlwps(0)) != 0) { + ASSERT(locked); + mutex_exit(&ualock); return (error); + } mutex_enter(&p->p_lock); p->p_flag |= SNOWAIT; sigfillset(&p->p_ignore); |
