]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
[PATCH] JFS: pageno needs to be long
authorDave Kleikamp <shaggy@austin.ibm.com>
Mon, 23 Oct 2006 17:00:13 +0000 (17:00 +0000)
committerChris Wright <chrisw@sous-sol.org>
Sat, 4 Nov 2006 01:33:46 +0000 (17:33 -0800)
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>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
fs/jfs/jfs_imap.c

index ccbe60aff83de64edddc27381e020c83240adb1b..3bdd90bbbfb46c9668decf7f2f25116aba7eeff0 100644 (file)
@@ -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;