ceph: SetPageError() for writeback pages if writepages fails
Signed-off-by: Yan, Zheng <zyan@redhat.com>
This commit is contained in:
parent
ad15ec06e5
commit
b109eec6f4
|
@ -626,7 +626,6 @@ static void writepages_finish(struct ceph_osd_request *req)
|
|||
struct ceph_fs_client *fsc = ceph_inode_to_client(inode);
|
||||
bool remove_page;
|
||||
|
||||
|
||||
dout("writepages_finish %p rc %d\n", inode, rc);
|
||||
if (rc < 0)
|
||||
mapping_set_error(mapping, rc);
|
||||
|
@ -661,6 +660,9 @@ static void writepages_finish(struct ceph_osd_request *req)
|
|||
clear_bdi_congested(&fsc->backing_dev_info,
|
||||
BLK_RW_ASYNC);
|
||||
|
||||
if (rc < 0)
|
||||
SetPageError(page);
|
||||
|
||||
ceph_put_snap_context(page_snap_context(page));
|
||||
page->private = 0;
|
||||
ClearPagePrivate(page);
|
||||
|
|
Loading…
Reference in a new issue