aboutsummaryrefslogtreecommitdiffstats
path: root/mm/filemap.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/filemap.c')
-rw-r--r--mm/filemap.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/mm/filemap.c b/mm/filemap.c
index 88611928e71f..b5346576e58d 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -37,6 +37,10 @@
37#include <asm/uaccess.h> 37#include <asm/uaccess.h>
38#include <asm/mman.h> 38#include <asm/mman.h>
39 39
40static ssize_t
41generic_file_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov,
42 loff_t offset, unsigned long nr_segs);
43
40/* 44/*
41 * Shared mappings implemented 30.11.1994. It's not fully working yet, 45 * Shared mappings implemented 30.11.1994. It's not fully working yet,
42 * though. 46 * though.
@@ -301,8 +305,9 @@ EXPORT_SYMBOL(sync_page_range);
301 * as it forces O_SYNC writers to different parts of the same file 305 * as it forces O_SYNC writers to different parts of the same file
302 * to be serialised right until io completion. 306 * to be serialised right until io completion.
303 */ 307 */
304int sync_page_range_nolock(struct inode *inode, struct address_space *mapping, 308static int sync_page_range_nolock(struct inode *inode,
305 loff_t pos, size_t count) 309 struct address_space *mapping,
310 loff_t pos, size_t count)
306{ 311{
307 pgoff_t start = pos >> PAGE_CACHE_SHIFT; 312 pgoff_t start = pos >> PAGE_CACHE_SHIFT;
308 pgoff_t end = (pos + count - 1) >> PAGE_CACHE_SHIFT; 313 pgoff_t end = (pos + count - 1) >> PAGE_CACHE_SHIFT;
@@ -317,7 +322,6 @@ int sync_page_range_nolock(struct inode *inode, struct address_space *mapping,
317 ret = wait_on_page_writeback_range(mapping, start, end); 322 ret = wait_on_page_writeback_range(mapping, start, end);
318 return ret; 323 return ret;
319} 324}
320EXPORT_SYMBOL(sync_page_range_nolock);
321 325
322/** 326/**
323 * filemap_fdatawait - walk the list of under-writeback pages of the given 327 * filemap_fdatawait - walk the list of under-writeback pages of the given
@@ -2008,7 +2012,7 @@ generic_file_buffered_write(struct kiocb *iocb, const struct iovec *iov,
2008} 2012}
2009EXPORT_SYMBOL(generic_file_buffered_write); 2013EXPORT_SYMBOL(generic_file_buffered_write);
2010 2014
2011ssize_t 2015static ssize_t
2012__generic_file_aio_write_nolock(struct kiocb *iocb, const struct iovec *iov, 2016__generic_file_aio_write_nolock(struct kiocb *iocb, const struct iovec *iov,
2013 unsigned long nr_segs, loff_t *ppos) 2017 unsigned long nr_segs, loff_t *ppos)
2014{ 2018{
@@ -2108,7 +2112,7 @@ generic_file_aio_write_nolock(struct kiocb *iocb, const struct iovec *iov,
2108 return ret; 2112 return ret;
2109} 2113}
2110 2114
2111ssize_t 2115static ssize_t
2112__generic_file_write_nolock(struct file *file, const struct iovec *iov, 2116__generic_file_write_nolock(struct file *file, const struct iovec *iov,
2113 unsigned long nr_segs, loff_t *ppos) 2117 unsigned long nr_segs, loff_t *ppos)
2114{ 2118{
@@ -2229,7 +2233,7 @@ EXPORT_SYMBOL(generic_file_writev);
2229 * Called under i_sem for writes to S_ISREG files. Returns -EIO if something 2233 * Called under i_sem for writes to S_ISREG files. Returns -EIO if something
2230 * went wrong during pagecache shootdown. 2234 * went wrong during pagecache shootdown.
2231 */ 2235 */
2232ssize_t 2236static ssize_t
2233generic_file_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov, 2237generic_file_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov,
2234 loff_t offset, unsigned long nr_segs) 2238 loff_t offset, unsigned long nr_segs)
2235{ 2239{
@@ -2264,4 +2268,3 @@ generic_file_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov,
2264 } 2268 }
2265 return retval; 2269 return retval;
2266} 2270}
2267EXPORT_SYMBOL_GPL(generic_file_direct_IO);