summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Kleikamp <shaggy@austin.ibm.com>2006-10-13 19:42:36 +0200
committerDave Kleikamp <shaggy@austin.ibm.com>2006-10-13 19:42:36 +0200
commit8f6cff98477edbcd8ae4976734ba7edd07bdd244 (patch)
tree00a862321aced4693c8efba88b647e82750d00a0
parentLinux 2.6.19-rc2 (diff)
downloadlinux-8f6cff98477edbcd8ae4976734ba7edd07bdd244.tar.xz
linux-8f6cff98477edbcd8ae4976734ba7edd07bdd244.zip
JFS: pageno needs to be long
diRead and diWrite are representing the page number as an unsigned int. This causes file system corruption on volumes larger than 16TB. Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
-rw-r--r--fs/jfs/jfs_imap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/jfs/jfs_imap.c b/fs/jfs/jfs_imap.c
index 489a3d63002d..ee9b473b7b80 100644
--- a/fs/jfs/jfs_imap.c
+++ b/fs/jfs/jfs_imap.c
@@ -318,7 +318,7 @@ int diRead(struct inode *ip)
struct inomap *imap;
int block_offset;
int inodes_left;
- uint pageno;
+ unsigned long pageno;
int rel_inode;
jfs_info("diRead: ino = %ld", ip->i_ino);
@@ -606,7 +606,7 @@ int diWrite(tid_t tid, struct inode *ip)
int block_offset;
int inodes_left;
struct metapage *mp;
- uint pageno;
+ unsigned long pageno;
int rel_inode;
int dioffset;
struct inode *ipimap;