summaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorCarsten Otte <cotte@de.ibm.com>2005-06-23 22:05:28 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-24 00:06:41 -0700
commiteb6fe0c388e43b02e261f0fdee60e42f6298d7f7 (patch)
tree3924bfbbbb10afc19f3bcd4963af14121f2c0553 /include/linux
parent6d79125bba55ee82701f1c7d4ebbc1aa20ecbe4e (diff)
downloadlinux-eb6fe0c388e43b02e261f0fdee60e42f6298d7f7.tar.gz
linux-eb6fe0c388e43b02e261f0fdee60e42f6298d7f7.tar.bz2
linux-eb6fe0c388e43b02e261f0fdee60e42f6298d7f7.zip
[PATCH] xip: reduce code duplication
This patch reworks filemap_xip.c with the goal to reduce code duplication from mm/filemap.c. It applies agains 2.6.12-rc6-mm1. Instead of implementing the aio functions, this one implements the synchronous read/write functions only. For readv and writev, the generic fallback is used. For aio, we rely on the application doing the fallback. Since our "synchronous" function does memcpy immediately anyway, there is no performance difference between using the fallbacks or implementing each operation. Signed-off-by: Carsten Otte <cotte@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/fs.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 7e0501895f35..3ae8e37bdfc8 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1500,18 +1500,14 @@ extern int generic_file_open(struct inode * inode, struct file * filp);
extern int nonseekable_open(struct inode * inode, struct file * filp);
#ifdef CONFIG_FS_XIP
-extern ssize_t xip_file_aio_read(struct kiocb *iocb, char __user *buf,
- size_t count, loff_t pos);
-extern ssize_t xip_file_readv(struct file *filp, const struct iovec *iov,
- unsigned long nr_segs, loff_t *ppos);
+extern ssize_t xip_file_read(struct file *filp, char __user *buf, size_t len,
+ loff_t *ppos);
extern ssize_t xip_file_sendfile(struct file *in_file, loff_t *ppos,
size_t count, read_actor_t actor,
void *target);
extern int xip_file_mmap(struct file * file, struct vm_area_struct * vma);
-extern ssize_t xip_file_aio_write(struct kiocb *iocb, const char __user *buf,
- size_t count, loff_t pos);
-extern ssize_t xip_file_writev(struct file *file, const struct iovec *iov,
- unsigned long nr_segs, loff_t *ppos);
+extern ssize_t xip_file_write(struct file *filp, const char __user *buf,
+ size_t len, loff_t *ppos);
extern int xip_truncate_page(struct address_space *mapping, loff_t from);
#else
static inline int xip_truncate_page(struct address_space *mapping, loff_t from)