shutdown not working with uart console
Harald Schmalzbauer
h.schmalzbauer at omnilan.de
Sat Oct 10 20:14:37 UTC 2009
Kostik Belousov schrieb am 10.10.2009 19:51 (localtime):
...
> I wondering whether I was too conservative in r195509.
> Please try this.
>
> diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c
> index 39b48e0..b96cdbf 100644
> --- a/sys/kern/kern_exit.c
> +++ b/sys/kern/kern_exit.c
> @@ -340,10 +340,10 @@ exit1(struct thread *td, int rv)
>
> if (ttyvp != NULL) {
> sx_xunlock(&proctree_lock);
> - vn_lock(ttyvp, LK_EXCLUSIVE | LK_RETRY);
> - if (ttyvp->v_type != VBAD)
> + if (vn_lock(ttyvp, LK_EXCLUSIVE) == 0) {
> VOP_REVOKE(ttyvp, REVOKEALL);
> - VOP_UNLOCK(ttyvp, 0);
> + VOP_UNLOCK(ttyvp, 0);
> + }
> sx_xlock(&proctree_lock);
> }
> }
Great, thanks a lot, this fixes my problem :)
There's one LOR left at shutdown (vfs_mount+ffs_vfsops) and one at
startup (unionfs+ufs) but that's completele unrelated I guess.
Thanks,
-Harry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 196 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20091010/7a1dde31/signature.pgp
More information about the freebsd-current
mailing list