bury generic_file_aio_{read,write}
no callers left Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
b42b15fdad
commit
6abd232274
|
@ -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);
|
||||||
|
|
43
mm/filemap.c
43
mm/filemap.c
|
@ -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)
|
||||||
}
|
}
|
||||||
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)
|
||||||
}
|
}
|
||||||
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
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue