Skip site navigation (1)Skip section navigation (2)
Date:      25 Oct 1998 15:51:52 +0100
From:      Artur Grabowski <art@stacken.kth.se>
To:        Love <lha@s3.kth.se>
Cc:        freebsd-fs@FreeBSD.ORG, freebsd-bugs@FreeBSD.ORG, kom-arla@stacken.kth.se
Subject:   Re: deadfs in FreeBSD 3.0/current ?
Message-ID:  <lubn26k66ev.fsf@pizza.stacken.kth.se>
In-Reply-To: Love's message of "Sun, 25 Oct 1998 09:12:55 GMT"
References:  <199810250912.JAA05540@nutcracker.e.kth.se>

next in thread | previous in thread | raw e-mail | index | archive | help
Love <lha@s3.kth.se> writes:

> Hello
> 
> kern/vfs_subr.c:vclean() does a vp->v_flag |= VXLOCK; and after that
> "calls" VOP_LOCK().
> 
> Now when the filesystem is deadfs (we use it in arla[1]), the call
> ends up in miscfs/deadfs/dead_vnops.c:dead_lock() that calls
> chkvnlock(). Now chkvnlock() sleeps when VXLOCK is set.

As a horrible workaround in OpenBSD I noted that LK_DRAIN is set in the
VOP_LOCK call in vclean. (The code is not checked in, our tree is locked).
And when the LK_DRAIN is set I don't do the chkvnlock().

//art

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?lubn26k66ev.fsf>