
From: Badari Pulavarty <pbadari@us.ibm.com>




---

 25-akpm/fs/direct-io.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff -puN fs/direct-io.c~direct-io-retval-fix-2 fs/direct-io.c
--- 25/fs/direct-io.c~direct-io-retval-fix-2	2004-04-15 18:09:35.961681480 -0700
+++ 25-akpm/fs/direct-io.c	2004-04-15 18:09:35.965680872 -0700
@@ -125,7 +125,7 @@ struct dio {
 	/* AIO related stuff */
 	struct kiocb *iocb;		/* kiocb */
 	int is_async;			/* is IO async ? */
-	int result;			/* IO result */
+	ssize_t result;                 /* IO result */
 };
 
 /*
@@ -898,7 +898,7 @@ out:
 /*
  * Releases both i_sem and i_alloc_sem
  */
-static int
+static ssize_t
 direct_io_worker(int rw, struct kiocb *iocb, struct inode *inode, 
 	const struct iovec *iov, loff_t offset, unsigned long nr_segs, 
 	unsigned blkbits, get_blocks_t get_blocks, dio_iodone_t end_io,
@@ -906,8 +906,8 @@ direct_io_worker(int rw, struct kiocb *i
 {
 	unsigned long user_addr; 
 	int seg;
-	int ret = 0;
-	int ret2;
+	ssize_t ret = 0;
+	ssize_t ret2;
 	size_t bytes;
 
 	dio->bio = NULL;

_
