diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-01 00:23:07 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-01 00:23:07 +0300 |
commit | 0512e0134582ef85dee77d51aae77dcd1edec495 (patch) | |
tree | 05f349b655c40e0d17c59be8dd7b5a10470feddc /fs | |
parent | dd52cb879063ca5470d5a093c32180ba74fa528e (diff) | |
parent | 829bc787c1a0403e4d886296dd4d90c5f9c1744a (diff) | |
download | linux-0512e0134582ef85dee77d51aae77dcd1edec495.tar.xz |
Merge tag 'xfs-4.17-fixes-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
Pull xfs fix from Darrick Wong:
"Clear out i_mapping error state when we're reinitializing inodes.
This last minute fix prevents writeback error state from persisting
past the end of the in-core inode lifecycle and causing EIO errors to
be reported to userspace when no error has occurred.
This fix for the behavioral regression has been soaking in for-next
for a while, but various fs developers persuaded me to try to get it
upstream for 4.17 because the patch that broke things was introduced
in 4.17-rc4"
* tag 'xfs-4.17-fixes-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
fs: clear writeback errors in inode_init_always
Diffstat (limited to 'fs')
-rw-r--r-- | fs/inode.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/inode.c b/fs/inode.c index 13ceb98c3bd3..3b55391072f3 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -178,6 +178,7 @@ int inode_init_always(struct super_block *sb, struct inode *inode) mapping->a_ops = &empty_aops; mapping->host = inode; mapping->flags = 0; + mapping->wb_err = 0; atomic_set(&mapping->i_mmap_writable, 0); mapping_set_gfp_mask(mapping, GFP_HIGHUSER_MOVABLE); mapping->private_data = NULL; |