Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9ce5a232 authored by Al Viro's avatar Al Viro
Browse files

ocfs2_file_write_iter: keep return value and current position update in sync



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent cf1b5ea1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2408,7 +2408,6 @@ static ssize_t ocfs2_file_write_iter(struct kiocb *iocb,
			goto out_dio;
		}

		iocb->ki_pos = *ppos + written_buffered;
		/* We need to ensure that the page cache pages are written to
		 * disk and invalidated to preserve the expected O_DIRECT
		 * semantics.
@@ -2417,6 +2416,7 @@ static ssize_t ocfs2_file_write_iter(struct kiocb *iocb,
		ret = filemap_write_and_wait_range(file->f_mapping, *ppos,
				endbyte);
		if (ret == 0) {
			iocb->ki_pos = *ppos + written_buffered;
			written += written_buffered;
			invalidate_mapping_pages(mapping,
					*ppos >> PAGE_CACHE_SHIFT,