On Jul 31, 2013, at 10:04 PM, Christos Zoulas <[email protected]> wrote:

> In article <[email protected]>,
> Edgar Fuß  <[email protected]> wrote:
>>> I think the problem is in nfs_setattr(), sys/nfs/nfs_vnops.c:681,
>>> where files are flushed before setattr "because a later write of
>>> cached data might change timestamps or reset sugid bits", but the
>>> only return value of nfs_vinvalbuf() that's treated as an error is
>>> EINTR. Why?
>> Any comments on this?
>> We are losing mail because of this problem so I would like to get it fixed.
> 
> Yes, I believe you are right. Return an error for all errors.

No - nfs_vinvalbuf() returns zero or EINTR, there are no other errors.

Does vinvalbuf() return an error from fsync here thats gets missed
because vinvalbuf() loops until it returns zero?

--
J. Hannken-Illjes - [email protected] - TU Braunschweig (Germany)

Reply via email to