• NeilBrown's avatar
    NFS - fix recent breakage to NFS error handling. · 42a50a98
    NeilBrown authored
    commit 2edb6bc3 upstream.
    
    	From c6d615d2b97fe305cbf123a8751ced859dca1d5e Mon Sep 17 00:00:00 2001
    	From: NeilBrown <neilb@suse.de>
    	Date: Wed, 16 Nov 2011 09:39:05 +1100
    	Subject: NFS - fix recent breakage to NFS error handling.
    
    commit 02c24a82 made a small and
    presumably unintended change to write error handling in NFS.
    
    Previously an error from filemap_write_and_wait_range would only be of
    interest if nfs_file_fsync did not return an error.  After this commit,
    an error from filemap_write_and_wait_range would mean that (the rest of)
    nfs_file_fsync would not even be called.
    
    This means that:
     1/ you are more likely to see EIO than e.g. EDQUOT or ENOSPC.
     2/ NFS_CONTEXT_ERROR_WRITE remains set for longer so more writes are
        synchronous.
    
    This patch restores previous behaviour.
    
    Cc: Josef Bacik <josef@redhat.com>
    Cc: Jan Kara <jack@suse.cz>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: default avatarNeilBrown <neilb@suse.de>
    Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    42a50a98
file.c 23.7 KB