mirror of
https://github.com/torvalds/linux.git
synced 2024-11-14 08:02:07 +00:00
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>
This commit is contained in:
parent
b4bd8c6643
commit
8f6cff9847
@ -318,7 +318,7 @@ int diRead(struct inode *ip)
|
|||||||
struct inomap *imap;
|
struct inomap *imap;
|
||||||
int block_offset;
|
int block_offset;
|
||||||
int inodes_left;
|
int inodes_left;
|
||||||
uint pageno;
|
unsigned long pageno;
|
||||||
int rel_inode;
|
int rel_inode;
|
||||||
|
|
||||||
jfs_info("diRead: ino = %ld", ip->i_ino);
|
jfs_info("diRead: ino = %ld", ip->i_ino);
|
||||||
@ -606,7 +606,7 @@ int diWrite(tid_t tid, struct inode *ip)
|
|||||||
int block_offset;
|
int block_offset;
|
||||||
int inodes_left;
|
int inodes_left;
|
||||||
struct metapage *mp;
|
struct metapage *mp;
|
||||||
uint pageno;
|
unsigned long pageno;
|
||||||
int rel_inode;
|
int rel_inode;
|
||||||
int dioffset;
|
int dioffset;
|
||||||
struct inode *ipimap;
|
struct inode *ipimap;
|
||||||
|
Loading…
Reference in New Issue
Block a user