aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--kernel/file.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 50288f4..af26120 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-06-27 Miklos Szeredi <mszeredi@inf.bme.hu>
+
+ * Fix file offset wrap around at 4G when doing large reads
+
2004-06-24 Miklos Szeredi <mszeredi@inf.bme.hu>
* Fix memory leak in open (Valient Gough)
diff --git a/kernel/file.c b/kernel/file.c
index 78ce854..e845d86 100644
--- a/kernel/file.c
+++ b/kernel/file.c
@@ -283,7 +283,7 @@ static int fuse_file_read_block(struct inode *inode, char *bl_buf,
return -ERESTARTSYS;
memset(&inarg, 0, sizeof(inarg));
- inarg.offset = bl_index << FUSE_BLOCK_SHIFT;
+ inarg.offset = (unsigned long long) bl_index << FUSE_BLOCK_SHIFT;
inarg.size = FUSE_BLOCK_SIZE;
req->in.h.opcode = FUSE_READ;
req->in.h.ino = inode->i_ino;