From: Jeff Layton <jlay...@redhat.com>

sync_file_range doesn't call down into the filesystem directly at all.
It only kicks off writeback of pagecache pages and optionally waits
on the result.

Convert sync_file_range to use errseq_t based error tracking, under the
assumption that most users will prefer this behavior when errors occur.

Reviewed-by: Jan Kara <j...@suse.cz>
Signed-off-by: Jeff Layton <jlay...@redhat.com>
---
 fs/sync.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/sync.c b/fs/sync.c
index 2a54c1f22035..27d6b8bbcb6a 100644
--- a/fs/sync.c
+++ b/fs/sync.c
@@ -342,7 +342,7 @@ SYSCALL_DEFINE4(sync_file_range, int, fd, loff_t, offset, 
loff_t, nbytes,
 
        ret = 0;
        if (flags & SYNC_FILE_RANGE_WAIT_BEFORE) {
-               ret = filemap_fdatawait_range(mapping, offset, endbyte);
+               ret = file_fdatawait_range(f.file, offset, endbyte);
                if (ret < 0)
                        goto out_put;
        }
@@ -355,7 +355,7 @@ SYSCALL_DEFINE4(sync_file_range, int, fd, loff_t, offset, 
loff_t, nbytes,
        }
 
        if (flags & SYNC_FILE_RANGE_WAIT_AFTER)
-               ret = filemap_fdatawait_range(mapping, offset, endbyte);
+               ret = file_fdatawait_range(f.file, offset, endbyte);
 
 out_put:
        fdput(f);
-- 
2.13.3

Reply via email to