aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/fs.h
diff options
context:
space:
mode:
authorBadari Pulavarty <pbadari@us.ibm.com>2006-10-01 02:28:48 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-01 03:39:28 -0400
commit543ade1fc901db4c3dbe9fb27241fb977f1f3eea (patch)
treecdd1a1f67a718adf71e92fe08e4b3d33bf3dbadc /include/linux/fs.h
parentee0b3e671baff681d69fbf0db33b47603c0a8280 (diff)
[PATCH] Streamline generic_file_* interfaces and filemap cleanups
This patch cleans up generic_file_*_read/write() interfaces. Christoph Hellwig gave me the idea for this clean ups. In a nutshell, all filesystems should set .aio_read/.aio_write methods and use do_sync_read/ do_sync_write() as their .read/.write methods. This allows us to cleanup all variants of generic_file_* routines. Final available interfaces: generic_file_aio_read() - read handler generic_file_aio_write() - write handler generic_file_aio_write_nolock() - no lock write handler __generic_file_aio_write_nolock() - internal worker routine Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r--include/linux/fs.h5
1 files changed, 0 insertions, 5 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index afb6e6f89a01..011129f8803e 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1699,11 +1699,8 @@ extern int generic_file_mmap(struct file *, struct vm_area_struct *);
1699extern int generic_file_readonly_mmap(struct file *, struct vm_area_struct *); 1699extern int generic_file_readonly_mmap(struct file *, struct vm_area_struct *);
1700extern int file_read_actor(read_descriptor_t * desc, struct page *page, unsigned long offset, unsigned long size); 1700extern int file_read_actor(read_descriptor_t * desc, struct page *page, unsigned long offset, unsigned long size);
1701extern int file_send_actor(read_descriptor_t * desc, struct page *page, unsigned long offset, unsigned long size); 1701extern int file_send_actor(read_descriptor_t * desc, struct page *page, unsigned long offset, unsigned long size);
1702extern ssize_t generic_file_read(struct file *, char __user *, size_t, loff_t *);
1703int generic_write_checks(struct file *file, loff_t *pos, size_t *count, int isblk); 1702int generic_write_checks(struct file *file, loff_t *pos, size_t *count, int isblk);
1704extern ssize_t generic_file_write(struct file *, const char __user *, size_t, loff_t *);
1705extern ssize_t generic_file_aio_read(struct kiocb *, const struct iovec *, unsigned long, loff_t); 1703extern ssize_t generic_file_aio_read(struct kiocb *, const struct iovec *, unsigned long, loff_t);
1706extern ssize_t __generic_file_aio_read(struct kiocb *, const struct iovec *, unsigned long, loff_t *);
1707extern ssize_t generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long, loff_t); 1704extern ssize_t generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long, loff_t);
1708extern ssize_t generic_file_aio_write_nolock(struct kiocb *, const struct iovec *, 1705extern ssize_t generic_file_aio_write_nolock(struct kiocb *, const struct iovec *,
1709 unsigned long, loff_t); 1706 unsigned long, loff_t);
@@ -1713,8 +1710,6 @@ extern ssize_t generic_file_buffered_write(struct kiocb *, const struct iovec *,
1713 unsigned long, loff_t, loff_t *, size_t, ssize_t); 1710 unsigned long, loff_t, loff_t *, size_t, ssize_t);
1714extern ssize_t do_sync_read(struct file *filp, char __user *buf, size_t len, loff_t *ppos); 1711extern ssize_t do_sync_read(struct file *filp, char __user *buf, size_t len, loff_t *ppos);
1715extern ssize_t do_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos); 1712extern ssize_t do_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos);
1716ssize_t generic_file_write_nolock(struct file *file, const struct iovec *iov,
1717 unsigned long nr_segs, loff_t *ppos);
1718extern ssize_t generic_file_sendfile(struct file *, loff_t *, size_t, read_actor_t, void *); 1713extern ssize_t generic_file_sendfile(struct file *, loff_t *, size_t, read_actor_t, void *);
1719extern void do_generic_mapping_read(struct address_space *mapping, 1714extern void do_generic_mapping_read(struct address_space *mapping,
1720 struct file_ra_state *, struct file *, 1715 struct file_ra_state *, struct file *,