Re: NFS client/buffer cache deadlock

From: Marc Olzheim <marcolz_at_stack.nl>
Date: Wed, 20 Apr 2005 17:35:28 +0200
On Wed, Apr 20, 2005 at 11:20:38AM -0400, Brian Fundakowski Feldman wrote:
> Reads should be totally unaffected...

The server was misbehaving. Fixed. :-)

> > Btw.: I'm not sure write(),writev() and pwrite() are allowed to do short
> > writes on regular files... ?
> 
> Our manpage is incorrect; POSIX states that they are (see earlier
> e-mail).  There really is no alternative -- we simply can't build
> an NFS transaction larger than our buffer cache can accomodate.
> Note that short wries won't happen for normal buffer sizes, only
> excessively large ones.  I really don't believe that writev() is meant
> to be used so that you can write gigantic data structures in a single
> transaction...

Ah, I was reading the SUSv2 page:

http://www.opengroup.org/onlinepubs/009695399/functions/write.html

instead of the POSIX version.

But in neither of those I can extrude the fact that it can return
with result < nbyte, without it being a permanent condition.
What phrase makes you conclude that it can ?

Marc

Received on Wed Apr 20 2005 - 13:35:30 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:32 UTC