diff options
author | Jeff Mahoney <jeffm@suse.com> | 2007-10-19 02:39:25 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-19 14:53:35 -0400 |
commit | 3ee1667042c350003b9d3f35e5666cc8c43ce8aa (patch) | |
tree | 331217461b684c298397d7347431c500c5969148 /fs/reiserfs/stree.c | |
parent | 6c57c2c8d3862c8d5b908669654f6565da74ec19 (diff) |
reiserfs: fix usage of signed ints for block numbers
Do a quick signedness check for block numbers. There are a number of places
where signed integers are used for block numbers, which limits the usable file
system size to 8 TiB. The disk format, excepting a problem which will be
fixed in the following patch, supports file systems up to 16 TiB in size.
This patch cleans up those sites so that we can enable the full usable size.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/reiserfs/stree.c')
-rw-r--r-- | fs/reiserfs/stree.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/reiserfs/stree.c b/fs/reiserfs/stree.c index 981027d1187b..ca41567d7890 100644 --- a/fs/reiserfs/stree.c +++ b/fs/reiserfs/stree.c | |||
@@ -559,7 +559,7 @@ static int is_tree_node(struct buffer_head *bh, int level) | |||
559 | /* The function is NOT SCHEDULE-SAFE! */ | 559 | /* The function is NOT SCHEDULE-SAFE! */ |
560 | static void search_by_key_reada(struct super_block *s, | 560 | static void search_by_key_reada(struct super_block *s, |
561 | struct buffer_head **bh, | 561 | struct buffer_head **bh, |
562 | unsigned long *b, int num) | 562 | b_blocknr_t *b, int num) |
563 | { | 563 | { |
564 | int i, j; | 564 | int i, j; |
565 | 565 | ||
@@ -611,7 +611,7 @@ int search_by_key(struct super_block *p_s_sb, const struct cpu_key *p_s_key, /* | |||
611 | DISK_LEAF_NODE_LEVEL */ | 611 | DISK_LEAF_NODE_LEVEL */ |
612 | ) | 612 | ) |
613 | { | 613 | { |
614 | int n_block_number; | 614 | b_blocknr_t n_block_number; |
615 | int expected_level; | 615 | int expected_level; |
616 | struct buffer_head *p_s_bh; | 616 | struct buffer_head *p_s_bh; |
617 | struct path_element *p_s_last_element; | 617 | struct path_element *p_s_last_element; |
@@ -619,7 +619,7 @@ int search_by_key(struct super_block *p_s_sb, const struct cpu_key *p_s_key, /* | |||
619 | int right_neighbor_of_leaf_node; | 619 | int right_neighbor_of_leaf_node; |
620 | int fs_gen; | 620 | int fs_gen; |
621 | struct buffer_head *reada_bh[SEARCH_BY_KEY_READA]; | 621 | struct buffer_head *reada_bh[SEARCH_BY_KEY_READA]; |
622 | unsigned long reada_blocks[SEARCH_BY_KEY_READA]; | 622 | b_blocknr_t reada_blocks[SEARCH_BY_KEY_READA]; |
623 | int reada_count = 0; | 623 | int reada_count = 0; |
624 | 624 | ||
625 | #ifdef CONFIG_REISERFS_CHECK | 625 | #ifdef CONFIG_REISERFS_CHECK |