diff options
| author | Ed Schouten <ed@FreeBSD.org> | 2008-09-16 14:57:23 +0000 |
|---|---|---|
| committer | Ed Schouten <ed@FreeBSD.org> | 2008-09-16 14:57:23 +0000 |
| commit | 42ff2756c7684428f867b0b1ced7f7b0e04d90ba (patch) | |
| tree | 3189f895c04a095e22df6f0c2d9b07814761a05f /sys | |
| parent | 6aa5a19391728a3ee106ad477480dd8aa788e4b4 (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/kern/kern_proc.c | 1 | ||||
| -rw-r--r-- | sys/kern/tty.c | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index 55f7e189e026..e45a4890fbe1 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -506,7 +506,6 @@ pgdelete(pgrp) if (tp != NULL) { tty_lock(tp); tty_rel_pgrp(tp, pgrp); - tty_unlock(tp); } mtx_destroy(&pgrp->pg_mtx); diff --git a/sys/kern/tty.c b/sys/kern/tty.c index bb0fb02c99f0..cd6a246f8fa1 100644 --- a/sys/kern/tty.c +++ b/sys/kern/tty.c @@ -940,10 +940,13 @@ tty_rel_free(struct tty *tp) void tty_rel_pgrp(struct tty *tp, struct pgrp *pg) { + MPASS(tp->t_sessioncnt > 0); tty_lock_assert(tp, MA_OWNED); if (tp->t_pgrp == pg) tp->t_pgrp = NULL; + + tty_unlock(tp); } void |
