Revert "udf: Avoid excessive partition lengths"
This reverts commit 551966371e
which is
commit ebbe26fd54a9621994bc16b14f2ba8f84c089693 upstream.
It breaks the Android kernel build as it adds a warning. UDF is not a
supported Android filesystem, so it is safe to revert.
Change-Id: I127bf634f2b8f50ff96363264393a9e9477957af
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
parent
90336334a0
commit
bfa0f472d5
@ -1083,19 +1083,12 @@ static int udf_fill_partdesc_info(struct super_block *sb,
|
|||||||
struct udf_part_map *map;
|
struct udf_part_map *map;
|
||||||
struct udf_sb_info *sbi = UDF_SB(sb);
|
struct udf_sb_info *sbi = UDF_SB(sb);
|
||||||
struct partitionHeaderDesc *phd;
|
struct partitionHeaderDesc *phd;
|
||||||
u32 sum;
|
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
map = &sbi->s_partmaps[p_index];
|
map = &sbi->s_partmaps[p_index];
|
||||||
|
|
||||||
map->s_partition_len = le32_to_cpu(p->partitionLength); /* blocks */
|
map->s_partition_len = le32_to_cpu(p->partitionLength); /* blocks */
|
||||||
map->s_partition_root = le32_to_cpu(p->partitionStartingLocation);
|
map->s_partition_root = le32_to_cpu(p->partitionStartingLocation);
|
||||||
if (check_add_overflow(map->s_partition_root, map->s_partition_len,
|
|
||||||
&sum)) {
|
|
||||||
udf_err(sb, "Partition %d has invalid location %u + %u\n",
|
|
||||||
p_index, map->s_partition_root, map->s_partition_len);
|
|
||||||
return -EFSCORRUPTED;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (p->accessType == cpu_to_le32(PD_ACCESS_TYPE_READ_ONLY))
|
if (p->accessType == cpu_to_le32(PD_ACCESS_TYPE_READ_ONLY))
|
||||||
map->s_partition_flags |= UDF_PART_FLAG_READ_ONLY;
|
map->s_partition_flags |= UDF_PART_FLAG_READ_ONLY;
|
||||||
@ -1151,14 +1144,6 @@ static int udf_fill_partdesc_info(struct super_block *sb,
|
|||||||
bitmap->s_extPosition = le32_to_cpu(
|
bitmap->s_extPosition = le32_to_cpu(
|
||||||
phd->unallocSpaceBitmap.extPosition);
|
phd->unallocSpaceBitmap.extPosition);
|
||||||
map->s_partition_flags |= UDF_PART_FLAG_UNALLOC_BITMAP;
|
map->s_partition_flags |= UDF_PART_FLAG_UNALLOC_BITMAP;
|
||||||
/* Check whether math over bitmap won't overflow. */
|
|
||||||
if (check_add_overflow(map->s_partition_len,
|
|
||||||
sizeof(struct spaceBitmapDesc) << 3,
|
|
||||||
&sum)) {
|
|
||||||
udf_err(sb, "Partition %d is too long (%u)\n", p_index,
|
|
||||||
map->s_partition_len);
|
|
||||||
return -EFSCORRUPTED;
|
|
||||||
}
|
|
||||||
udf_debug("unallocSpaceBitmap (part %d) @ %u\n",
|
udf_debug("unallocSpaceBitmap (part %d) @ %u\n",
|
||||||
p_index, bitmap->s_extPosition);
|
p_index, bitmap->s_extPosition);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user