On Sat, 11 May 2002, Semen A. Ustimenko wrote:
> DEADLOCK...
Indeed, weird situation. Nice analysis, btw :)
> Make vn_lock() in vrele() lock vnode only LK_THISLAYER. Obviously, the
> NULLFS and other stacking FSes will have to deal with this in their
> VOP_INACTIVE() handlers. This changes won't touch real FSes as they ignore
> the LK_THISLAYER, don't they?
Yes, you're correct in that LK_THISLAYER currently used only by
"stacked" filesystem(s) and it used exactly for such situations to avoid
deadlocks. The proposed solution may even work without any additional
code because null_inactive() performs its own management on the lower
vnode locking.
--
Boris Popov
http://rbp.euro.ru
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message