From: Chao Yu Date: Thu, 21 Jun 2018 14:38:28 +0000 (+0800) Subject: f2fs: fix to wait on page writeback before updating page X-Git-Tag: v4.14.71~44 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=9d54a48ef29663ede2b012e0b1cda39e1eb36b20;p=users%2Fjedix%2Flinux-maple.git f2fs: fix to wait on page writeback before updating page [ Upstream commit 6aead1617b3adf2b7e2c56f0f13e4e0ee42ebb4a ] In error path of f2fs_move_rehashed_dirents, inode page could be writeback state, so we should wait on inode page writeback before updating it. Signed-off-by: Chao Yu Signed-off-by: Jaegeuk Kim Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- diff --git a/fs/f2fs/inline.c b/fs/f2fs/inline.c index 295d5505b939..888a9dc13677 100644 --- a/fs/f2fs/inline.c +++ b/fs/f2fs/inline.c @@ -502,6 +502,7 @@ static int f2fs_move_rehashed_dirents(struct inode *dir, struct page *ipage, return 0; recover: lock_page(ipage); + f2fs_wait_on_page_writeback(ipage, NODE, true); memcpy(inline_dentry, backup_dentry, MAX_INLINE_DATA(dir)); f2fs_i_depth_write(dir, 0); f2fs_i_size_write(dir, MAX_INLINE_DATA(dir));