Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Apr 2005 13:16:05 -0400
From:      Garrett Wollman <wollman@csail.mit.edu>
To:        Marc Olzheim <marcolz@stack.nl>
Cc:        freebsd-current@FreeBSD.ORG
Subject:   Re: NFS client/buffer cache deadlock
Message-ID:  <16998.36437.809896.936800@khavrinen.csail.mit.edu>
In-Reply-To: <20050420143842.GB77731@stack.nl>
References:  <20050418202213.GC1157@green.homeunix.org> <20050418203321.GA88774@stack.nl> <20050419133227.GA11612@stack.nl> <20050419151800.GE1157@green.homeunix.org> <20050419160258.GA12287@stack.nl> <20050419160900.GB12287@stack.nl> <20050419161616.GF1157@green.homeunix.org> <20050419204723.GG1157@green.homeunix.org> <20050420140409.GA77731@stack.nl> <20050420142448.GH1157@green.homeunix.org> <20050420143842.GB77731@stack.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
<<On Wed, 20 Apr 2005 16:38:42 +0200, Marc Olzheim <marcolz@stack.nl> said:

> Btw.: I'm not sure write(),writev() and pwrite() are allowed to do short
> writes on regular files... ?

I believe it is the intent of the Standard to prohibit this (a
paragraph in the rationale says that short writes can only happen if
O_NONBLOCK is set, but this is clearly wrong because the normative
text says end-of-medium also results in a short write) but there does
not appear to be any language which requires atomic behavior for
descriptors other than pipes and FIFOs.

As a quality-of-implementation matter, for writes to regular files not
to be atomic would be considered surprising.

-GAWollman



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