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 > _at__at_ -340,10 +340,10 _at__at_ 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
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:56 UTC