NFS client/buffer cache deadlock

Brian Fundakowski Feldman green at freebsd.org
Tue May 3 06:59:10 PDT 2005


On Tue, May 03, 2005 at 11:47:00AM +0200, Marc Olzheim wrote:
> On Wed, Apr 27, 2005 at 12:08:57PM -0400, Brian Fundakowski Feldman wrote:
> > Alright, this will do synchronous, instead of short, writes (also,
> > of course, not deadlock the system) if you are trying to use an
> > excessively large buffer size.
> > 
> > <http://green.homeunix.org/~green/nfs_client.deadlock.patch>
> > <http://green.homeunix.org/~green/nfs_client.deadlock.HEAD.patch>
> 
> Will this be incorporated in time for 5.4 ?

It really needs someone else to review the code changes more than just
conceptually to make this kind of an adjustment before release.  It
is not truly an optimal solution, as fully synchronous writes are not
necessary; just limiting the "write window" size and requiring posted
transactions to complete before queueing up more is.  Doing that is
more error-prone, however, and would I think complicate things just to
optimize the speed of a rare case.

Still, there are probably a few who would object, in which case they
should do the work of optimizing that side case  ;) There's still
missing an actual mount_nfs(8) configuration flag and documentation,
but those things are trivial.

(Forwarded on to -current as well, for additional eyes/testers.)

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> green at FreeBSD.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\


More information about the freebsd-stable mailing list