Commit 6abd2322 authored by Al Viro's avatar Al Viro

bury generic_file_aio_{read,write}

no callers left
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent b42b15fd
...@@ -2411,10 +2411,8 @@ extern int generic_file_readonly_mmap(struct file *, struct vm_area_struct *); ...@@ -2411,10 +2411,8 @@ extern int generic_file_readonly_mmap(struct file *, struct vm_area_struct *);
extern int generic_file_remap_pages(struct vm_area_struct *, unsigned long addr, extern int generic_file_remap_pages(struct vm_area_struct *, unsigned long addr,
unsigned long size, pgoff_t pgoff); unsigned long size, pgoff_t pgoff);
int generic_write_checks(struct file *file, loff_t *pos, size_t *count, int isblk); int generic_write_checks(struct file *file, loff_t *pos, size_t *count, int isblk);
extern ssize_t generic_file_aio_read(struct kiocb *, const struct iovec *, unsigned long, loff_t);
extern ssize_t generic_file_read_iter(struct kiocb *, struct iov_iter *); extern ssize_t generic_file_read_iter(struct kiocb *, struct iov_iter *);
extern ssize_t __generic_file_write_iter(struct kiocb *, struct iov_iter *); extern ssize_t __generic_file_write_iter(struct kiocb *, struct iov_iter *);
extern ssize_t generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long, loff_t);
extern ssize_t generic_file_write_iter(struct kiocb *, struct iov_iter *); extern ssize_t generic_file_write_iter(struct kiocb *, struct iov_iter *);
extern ssize_t generic_file_direct_write(struct kiocb *, struct iov_iter *, loff_t); extern ssize_t generic_file_direct_write(struct kiocb *, struct iov_iter *, loff_t);
extern ssize_t generic_perform_write(struct file *, struct iov_iter *, loff_t); extern ssize_t generic_perform_write(struct file *, struct iov_iter *, loff_t);
......
...@@ -1663,6 +1663,14 @@ static ssize_t do_generic_file_read(struct file *filp, loff_t *ppos, ...@@ -1663,6 +1663,14 @@ static ssize_t do_generic_file_read(struct file *filp, loff_t *ppos,
return written ? written : error; return written ? written : error;
} }
/**
* generic_file_read_iter - generic filesystem read routine
* @iocb: kernel I/O control block
* @iter: destination for the data read
*
* This is the "read_iter()" routine for all filesystems
* that can use the page cache directly.
*/
ssize_t ssize_t
generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter) generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
{ {
...@@ -1713,28 +1721,6 @@ generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter) ...@@ -1713,28 +1721,6 @@ generic_file_read_iter(struct kiocb *iocb, struct iov_iter *iter)
} }
EXPORT_SYMBOL(generic_file_read_iter); EXPORT_SYMBOL(generic_file_read_iter);
/**
* generic_file_aio_read - generic filesystem read routine
* @iocb: kernel I/O control block
* @iov: io vector request
* @nr_segs: number of segments in the iovec
* @pos: current file position
*
* This is the "read()" routine for all filesystems
* that can use the page cache directly.
*/
ssize_t
generic_file_aio_read(struct kiocb *iocb, const struct iovec *iov,
unsigned long nr_segs, loff_t pos)
{
size_t count = iov_length(iov, nr_segs);
struct iov_iter i;
iov_iter_init(&i, READ, iov, nr_segs, count);
return generic_file_read_iter(iocb, &i);
}
EXPORT_SYMBOL(generic_file_aio_read);
#ifdef CONFIG_MMU #ifdef CONFIG_MMU
/** /**
* page_cache_read - adds requested page to the page cache if not already there * page_cache_read - adds requested page to the page cache if not already there
...@@ -2675,19 +2661,6 @@ ssize_t generic_file_write_iter(struct kiocb *iocb, struct iov_iter *from) ...@@ -2675,19 +2661,6 @@ ssize_t generic_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
} }
EXPORT_SYMBOL(generic_file_write_iter); EXPORT_SYMBOL(generic_file_write_iter);
ssize_t generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
unsigned long nr_segs, loff_t pos)
{
size_t count = iov_length(iov, nr_segs);
struct iov_iter from;
BUG_ON(iocb->ki_pos != pos);
iov_iter_init(&from, WRITE, iov, nr_segs, count);
return generic_file_write_iter(iocb, &from);
}
EXPORT_SYMBOL(generic_file_aio_write);
/** /**
* try_to_release_page() - release old fs-specific metadata on a page * try_to_release_page() - release old fs-specific metadata on a page
* *
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment