diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 7ddc0e57468c..fd3a1e5ab6d9 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -1860,6 +1860,8 @@ got_it: if (fio->need_lock == LOCK_REQ) f2fs_unlock_op(fio->sbi); err = f2fs_inplace_write_data(fio); + if (err && PageWriteback(page)) + end_page_writeback(page); trace_f2fs_do_write_data_page(fio->page, IPU); set_inode_flag(inode, FI_UPDATE_WRITE); return err;