diff options
author | Sebastian Manciulea <manciuleas@yahoo.com> | 2008-04-14 19:06:36 +0400 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2008-04-17 16:29:43 +0400 |
commit | 47c9358a015199ed37c66235a2238271a7c8041f (patch) | |
tree | 265659628f44c00a65a0deaee6edc137aed6cab1 /fs/udf/super.c | |
parent | bfb257a5981af805a9394f00f75d3d9f7b611cc0 (diff) | |
download | linux-47c9358a015199ed37c66235a2238271a7c8041f.tar.xz |
udf: Fix bug in VAT mapping code
Fix mapping of blocks using VAT when it is stored in an inode.
UDF_I(inode)->i_data already points to the beginning of VAT header so there's
no need to add udf_ext0_offset(inode).
Signed-off-by: Sebastian Manciulea <manciuleas@yahoo.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf/super.c')
-rw-r--r-- | fs/udf/super.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/udf/super.c b/fs/udf/super.c index 29b19678327a..8f02b30c22ef 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c @@ -1215,8 +1215,7 @@ static int udf_load_vat(struct super_block *sb, int p_index, int type1_index) return 1; if (map->s_partition_type == UDF_VIRTUAL_MAP15) { - map->s_type_specific.s_virtual.s_start_offset = - udf_ext0_offset(sbi->s_vat_inode); + map->s_type_specific.s_virtual.s_start_offset = 0; map->s_type_specific.s_virtual.s_num_entries = (sbi->s_vat_inode->i_size - 36) >> 2; } else if (map->s_partition_type == UDF_VIRTUAL_MAP20) { @@ -1233,8 +1232,7 @@ static int udf_load_vat(struct super_block *sb, int p_index, int type1_index) } map->s_type_specific.s_virtual.s_start_offset = - le16_to_cpu(vat20->lengthHeader) + - udf_ext0_offset(sbi->s_vat_inode); + le16_to_cpu(vat20->lengthHeader); map->s_type_specific.s_virtual.s_num_entries = (sbi->s_vat_inode->i_size - map->s_type_specific.s_virtual. |