mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
Revert "ceph: SetPageError() for writeback pages if writepages fails"
This reverts commit b109eec6f4.
If I'm filling up a filesystem with this sort of command:
$ dd if=/dev/urandom of=/mnt/cephfs/fillfile bs=2M oflag=sync
...then I'll eventually get back EIO on a write. Further calls
will give us ENOSPC.
I'm not sure what prompted this change, but I don't think it's what we
want to do. If writepages failed, we will have already set the mapping
error appropriately, and that's what gets reported by fsync() or
close().
__filemap_fdatawait_range however, does this:
wait_on_page_writeback(page);
if (TestClearPageError(page))
ret = -EIO;
...and that -EIO ends up trumping the mapping's error if one exists.
When writepages fails, we only want to set the error in the mapping,
and not flag the individual pages.
Signed-off-by: Jeff Layton <[email protected]>
Reviewed-by: "Yan, Zheng” <[email protected]>
Signed-off-by: Ilya Dryomov <[email protected]>
This commit is contained in:
parent
92475f05bd
commit
6fc1fe5e4c
1 changed files with 0 additions and 3 deletions
|
|
@ -703,9 +703,6 @@ 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