diff --git a/fs/cifs/file.c b/fs/cifs/file.c
index 879524bf7528bb0426bed5060aa1b05e67ff99cf..ec0694a65c7b6ce592704158df3e0d29b5546396 100644
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@ -2845,6 +2845,7 @@ static ssize_t cifs_write_back_from_locked_folio(struct address_space *mapping,
 	free_xid(xid);
 	if (rc == 0) {
 		wbc->nr_to_write = count;
+		rc = len;
 	} else if (is_retryable_error(rc)) {
 		cifs_pages_write_redirty(inode, start, len);
 	} else {