udf: Fix mounting of Win7 created UDF filesystems
authorJan Kara <jack@suse.cz>
Tue, 21 Aug 2018 12:52:34 +0000 (14:52 +0200)
committerJan Kara <jack@suse.cz>
Fri, 24 Aug 2018 09:13:32 +0000 (11:13 +0200)
commitee4af50ca94f58afc3532662779b9cf80bbe27c8
tree67727dfd727487005d3619a7b1d2c7a475c7d5d4
parent82c82ab658655befcb6aa47cbdb98dadce1a0cfe
udf: Fix mounting of Win7 created UDF filesystems

Win7 is creating UDF filesystems with single partition with number 8192.
Current partition descriptor scanning code does not handle this well as
it incorrectly assumes that partition numbers will form mostly contiguous
space of small numbers. This results in unmountable media due to errors
like:

UDF-fs: error (device dm-1): udf_read_tagged: tag version 0x0000 != 0x0002 || 0x0003, block 0
UDF-fs: warning (device dm-1): udf_fill_super: No fileset found

Fix the problem by handling partition descriptors in a way that sparse
partition numbering does not matter.

Reported-and-tested-by: jean-luc malet <jeanluc.malet@gmail.com>
CC: stable@vger.kernel.org
Fixes: 7b78fd02fb19530fd101ae137a1f46aa466d9bb6
Signed-off-by: Jan Kara <jack@suse.cz>
fs/udf/super.c