Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 585d7000 authored by Alden Tondettar's avatar Alden Tondettar Committed by Jan Kara
Browse files

udf: Don't BUG on missing metadata partition descriptor



Currently, if a metadata partition map is missing its partition descriptor,
then udf_get_pblock_meta25() will BUG() out the first time it is called.
This is rather drastic for a corrupted filesystem, so just treat this case
as an invalid mapping instead.

Signed-off-by: default avatarAlden Tondettar <alden.tondettar@gmail.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent 2600a46e
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -317,8 +317,9 @@ uint32_t udf_get_pblock_meta25(struct super_block *sb, uint32_t block,
	mdata = &map->s_type_specific.s_metadata;
	inode = mdata->s_metadata_fe ? : mdata->s_mirror_fe;

	/* We shouldn't mount such media... */
	BUG_ON(!inode);
	if (!inode)
		return 0xFFFFFFFF;

	retblk = udf_try_read_meta(inode, block, partition, offset);
	if (retblk == 0xFFFFFFFF && mdata->s_metadata_fe) {
		udf_warn(sb, "error reading from METADATA, trying to read from MIRROR\n");