aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2015-04-09 07:25:03 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2015-04-11 22:30:21 -0400
commit5dc3161cb63265adca0c34fac79512af59b776a4 (patch)
treefc65ebba7f8a441d76bf16d2bc791a116df5bf01 /fs/ocfs2
parentdfea934575164497a9e36074ebce606a1a278ed9 (diff)
ocfs2_file_write_iter: stop messing with ppos
it's &iocb->ki_pos; no need to obfuscate. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ocfs2')
-rw-r--r--fs/ocfs2/file.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index 8096fb6c081b..78e245df5e32 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -2264,7 +2264,7 @@ static ssize_t ocfs2_file_write_iter(struct kiocb *iocb,
2264 int can_do_direct, has_refcount = 0; 2264 int can_do_direct, has_refcount = 0;
2265 ssize_t written = 0; 2265 ssize_t written = 0;
2266 size_t count = iov_iter_count(from); 2266 size_t count = iov_iter_count(from);
2267 loff_t old_size, *ppos = &iocb->ki_pos; 2267 loff_t old_size;
2268 u32 old_clusters; 2268 u32 old_clusters;
2269 struct file *file = iocb->ki_filp; 2269 struct file *file = iocb->ki_filp;
2270 struct inode *inode = file_inode(file); 2270 struct inode *inode = file_inode(file);
@@ -2330,7 +2330,7 @@ relock:
2330 } 2330 }
2331 2331
2332 can_do_direct = direct_io; 2332 can_do_direct = direct_io;
2333 ret = ocfs2_prepare_inode_for_write(file, ppos, count, appending, 2333 ret = ocfs2_prepare_inode_for_write(file, &iocb->ki_pos, count, appending,
2334 &can_do_direct, &has_refcount); 2334 &can_do_direct, &has_refcount);
2335 if (ret < 0) { 2335 if (ret < 0) {
2336 mlog_errno(ret); 2336 mlog_errno(ret);
@@ -2338,7 +2338,7 @@ relock:
2338 } 2338 }
2339 2339
2340 if (direct_io && !is_sync_kiocb(iocb)) 2340 if (direct_io && !is_sync_kiocb(iocb))
2341 unaligned_dio = ocfs2_is_io_unaligned(inode, count, *ppos); 2341 unaligned_dio = ocfs2_is_io_unaligned(inode, count, iocb->ki_pos);
2342 2342
2343 /* 2343 /*
2344 * We can't complete the direct I/O as requested, fall back to 2344 * We can't complete the direct I/O as requested, fall back to
@@ -2374,7 +2374,7 @@ relock:
2374 /* communicate with ocfs2_dio_end_io */ 2374 /* communicate with ocfs2_dio_end_io */
2375 ocfs2_iocb_set_rw_locked(iocb, rw_level); 2375 ocfs2_iocb_set_rw_locked(iocb, rw_level);
2376 2376
2377 ret = generic_write_checks(file, ppos, &count); 2377 ret = generic_write_checks(file, &iocb->ki_pos, &count);
2378 if (ret) 2378 if (ret)
2379 goto out_dio; 2379 goto out_dio;
2380 2380
@@ -2382,7 +2382,7 @@ relock:
2382 if (direct_io) { 2382 if (direct_io) {
2383 loff_t endbyte; 2383 loff_t endbyte;
2384 ssize_t written_buffered; 2384 ssize_t written_buffered;
2385 written = generic_file_direct_write(iocb, from, *ppos); 2385 written = generic_file_direct_write(iocb, from, iocb->ki_pos);
2386 if (written < 0 || written == count) { 2386 if (written < 0 || written == count) {
2387 ret = written; 2387 ret = written;
2388 goto out_dio; 2388 goto out_dio;
@@ -2392,7 +2392,7 @@ relock:
2392 * for completing the rest of the request. 2392 * for completing the rest of the request.
2393 */ 2393 */
2394 count -= written; 2394 count -= written;
2395 written_buffered = generic_perform_write(file, from, *ppos); 2395 written_buffered = generic_perform_write(file, from, iocb->ki_pos);
2396 /* 2396 /*
2397 * If generic_file_buffered_write() returned a synchronous error 2397 * If generic_file_buffered_write() returned a synchronous error
2398 * then we want to return the number of bytes which were 2398 * then we want to return the number of bytes which were
@@ -2409,14 +2409,14 @@ relock:
2409 * disk and invalidated to preserve the expected O_DIRECT 2409 * disk and invalidated to preserve the expected O_DIRECT
2410 * semantics. 2410 * semantics.
2411 */ 2411 */
2412 endbyte = *ppos + written_buffered - 1; 2412 endbyte = iocb->ki_pos + written_buffered - 1;
2413 ret = filemap_write_and_wait_range(file->f_mapping, *ppos, 2413 ret = filemap_write_and_wait_range(file->f_mapping, iocb->ki_pos,
2414 endbyte); 2414 endbyte);
2415 if (ret == 0) { 2415 if (ret == 0) {
2416 iocb->ki_pos = *ppos + written_buffered; 2416 iocb->ki_pos += written_buffered;
2417 written += written_buffered; 2417 written += written_buffered;
2418 invalidate_mapping_pages(mapping, 2418 invalidate_mapping_pages(mapping,
2419 *ppos >> PAGE_CACHE_SHIFT, 2419 iocb->ki_pos >> PAGE_CACHE_SHIFT,
2420 endbyte >> PAGE_CACHE_SHIFT); 2420 endbyte >> PAGE_CACHE_SHIFT);
2421 } else { 2421 } else {
2422 /* 2422 /*
@@ -2426,9 +2426,9 @@ relock:
2426 } 2426 }
2427 } else { 2427 } else {
2428 current->backing_dev_info = inode_to_bdi(inode); 2428 current->backing_dev_info = inode_to_bdi(inode);
2429 written = generic_perform_write(file, from, *ppos); 2429 written = generic_perform_write(file, from, iocb->ki_pos);
2430 if (likely(written >= 0)) 2430 if (likely(written >= 0))
2431 iocb->ki_pos = *ppos + written; 2431 iocb->ki_pos = iocb->ki_pos + written;
2432 current->backing_dev_info = NULL; 2432 current->backing_dev_info = NULL;
2433 } 2433 }
2434 2434