Skip site navigation (1)Skip section navigation (2)
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>