Date: Fri, 08 Nov 1996 04:38:52 -0800 From: David Greenman <dg@root.com> To: Julian Elischer <julian@whistle.com> Cc: Archie Cobbs <archie@whistle.com>, freebsd-hackers@freebsd.org, mckusick@mckusick.com Subject: Re: Davidg bug (was: mount panics & hangs) Message-ID: <199611081238.EAA05360@root.com> In-Reply-To: Your message of "Tue, 05 Nov 1996 17:21:56 PST." <327FE834.167EB0E7@whistle.com>
next in thread | previous in thread | raw e-mail | index | archive | help
>The only answer I can see is to either make the awakenned >process start again from scratch, >as the mp it has may no longer be valid, >or to put some sort of lock on the whole mount list. I'll look into a fix for this. Unfortunately it appears that similar problems exist in other functions that traverse the mount list. vfs_busy() appears to be fundamentally broken since it references "mp" after waking up from the sleep even though "mp" may no longer be valid. It appears that the only solution to the problem (avoiding massive changes) is to implement a lock around the mountlist. I think that this may create one or more deadlock potentials, however. >BTW there is another small bug, which is.. the return at line "C" >should also do a vfs_unbusy() Thanks! -DG David Greenman Core-team/Principal Architect, The FreeBSD Project
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199611081238.EAA05360>