Commit b372e96b authored by NeilBrown's avatar NeilBrown Committed by Ilya Dryomov
Browse files

ceph: redirty page before returning AOP_WRITEPAGE_ACTIVATE



The page has been marked clean before writepage is called.  If we don't
redirty it before postponing the write, it might never get written.

Cc: stable@vger.kernel.org
Fixes: 503d4fa6 ("ceph: remove reliance on bdi congestion")
Signed-off-by: default avatarNeilBrown <neilb@suse.de>
Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
Reviewed-by: default avatarXiubo Li <xiubli@redhat.org>
Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
parent fec50db7
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -795,8 +795,10 @@ static int ceph_writepage(struct page *page, struct writeback_control *wbc)
	ihold(inode);

	if (wbc->sync_mode == WB_SYNC_NONE &&
	    ceph_inode_to_fs_client(inode)->write_congested)
	    ceph_inode_to_fs_client(inode)->write_congested) {
		redirty_page_for_writepage(wbc, page);
		return AOP_WRITEPAGE_ACTIVATE;
	}

	wait_on_page_fscache(page);