mm/filemap.c |   14 ++++++--------
 1 files changed, 6 insertions(+), 8 deletions(-)

diff -puN mm/filemap.c~aio-remove-lseek-triggerable-BUG_ONs mm/filemap.c
--- 25/mm/filemap.c~aio-remove-lseek-triggerable-BUG_ONs	2003-08-30 15:42:34.000000000 -0700
+++ 25-akpm/mm/filemap.c	2003-08-30 15:42:34.000000000 -0700
@@ -889,19 +889,18 @@ out:
 	return retval;
 }
 
-ssize_t
-generic_file_aio_read(struct kiocb *iocb, char __user *buf, size_t count, loff_t pos)
+ssize_t generic_file_aio_read(struct kiocb *iocb, char __user *buf,
+				size_t count, loff_t pos)
 {
 	struct iovec local_iov = { .iov_base = buf, .iov_len = count };
 
-	BUG_ON(iocb->ki_pos != pos);
 	return __generic_file_aio_read(iocb, &local_iov, 1, &iocb->ki_pos);
 }
 EXPORT_SYMBOL(generic_file_aio_read);
 EXPORT_SYMBOL(__generic_file_aio_read);
 
-ssize_t
-generic_file_read(struct file *filp, char __user *buf, size_t count, loff_t *ppos)
+ssize_t generic_file_read(struct file *filp, char __user *buf,
+				size_t count, loff_t *ppos)
 {
 	struct iovec local_iov = { .iov_base = buf, .iov_len = count };
 	struct kiocb kiocb;
@@ -914,7 +913,8 @@ generic_file_read(struct file *filp, cha
 	return ret;
 }
 
-int file_send_actor(read_descriptor_t * desc, struct page *page, unsigned long offset, unsigned long size)
+int file_send_actor(read_descriptor_t * desc, struct page *page,
+				unsigned long offset, unsigned long size)
 {
 	ssize_t written;
 	unsigned long count = desc->count;
@@ -1979,8 +1979,6 @@ ssize_t generic_file_aio_write(struct ki
 	struct iovec local_iov = { .iov_base = (void __user *)buf,
 					.iov_len = count };
 
-	BUG_ON(iocb->ki_pos != pos);
-
 	if (!buf && !is_sync_kiocb(iocb)) {
 		/* nothing to transfer, may just need to sync data */
 		ret = count;

_