X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=fs%2Ffs-writeback.c;h=206a68b1db1ab1b1f5a6ed6a611723f957e1e58b;hb=c09191a586b86c590e51e882b87c1f5b8737ca02;hp=7378169e90be6ed485ac48d0cf633c8e37c4c3d2;hpb=50d8f5da1df2eafcebac2b4236deac5afe1edeb6;p=karo-tx-linux.git diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index 7378169e90be..206a68b1db1a 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c @@ -2149,7 +2149,12 @@ static void wait_sb_inodes(struct super_block *sb) iput(old_inode); old_inode = inode; - filemap_fdatawait(mapping); + /* + * We keep the error status of individual mapping so that + * applications can catch the writeback error using fsync(2). + * See filemap_fdatawait_keep_errors() for details. + */ + filemap_fdatawait_keep_errors(mapping); cond_resched();