Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Mar 2005 08:28:09 -0500 (EST)
From:      Jeff Roberson <jroberson@chesapeake.net>
To:        Jeff Roberson <jeff@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/fs/nullfs null_vnops.c
Message-ID:  <20050315082516.U20708@mail.chesapeake.net>
In-Reply-To: <200503151128.j2FBSj9D054456@repoman.freebsd.org>
References:  <200503151128.j2FBSj9D054456@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 15 Mar 2005, Jeff Roberson wrote:

> jeff        2005-03-15 11:28:45 UTC
>
>   FreeBSD src repository
>
>   Modified files:
>     sys/fs/nullfs        null_vnops.c
>   Log:
>    - We have to transfer lockers after reseting our vnlock pointer.

Upon further review, this is wrong, but the code that was there before was
wrong too.  The problem is that if we transferlockers we may transfer
threads that are legitimately waiting on the ufs lock rather than the null
lock.  I believe the solution is to reset our lock, but allow callers to
naturally return out of the ufs lock routine when they're ready.  The
vnode reference count will prevent anything from going away while we're
stuck in ufs's locking function.

>
>   Sponsored by:   Isilon Systems, Inc.
>
>   Revision  Changes    Path
>   1.84      +5 -0      src/sys/fs/nullfs/null_vnops.c
>



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