diff options
Diffstat (limited to 'fs/ceph/addr.c')
-rw-r--r-- | fs/ceph/addr.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c index 6cdf94459ac4..e253102b43cd 100644 --- a/fs/ceph/addr.c +++ b/fs/ceph/addr.c | |||
@@ -670,8 +670,12 @@ static void writepages_finish(struct ceph_osd_request *req) | |||
670 | bool remove_page; | 670 | bool remove_page; |
671 | 671 | ||
672 | dout("writepages_finish %p rc %d\n", inode, rc); | 672 | dout("writepages_finish %p rc %d\n", inode, rc); |
673 | if (rc < 0) | 673 | if (rc < 0) { |
674 | mapping_set_error(mapping, rc); | 674 | mapping_set_error(mapping, rc); |
675 | ceph_set_error_write(ci); | ||
676 | } else { | ||
677 | ceph_clear_error_write(ci); | ||
678 | } | ||
675 | 679 | ||
676 | /* | 680 | /* |
677 | * We lost the cache cap, need to truncate the page before | 681 | * We lost the cache cap, need to truncate the page before |