udf: Cleanup anchor block detection.
authorJan Kara <jack@suse.cz>
Mon, 7 Apr 2008 13:59:23 +0000 (15:59 +0200)
committerJan Kara <jack@suse.cz>
Thu, 17 Apr 2008 12:23:10 +0000 (14:23 +0200)
commit423cf6dc04eb79d441bfda2b127bc4b57134b41d
treed4b9f7a35dfbdd9a2fbf986bf05c959674e4086a
parent38b74a53e5625b7bbbd08918294b86f1db2f0565
udf: Cleanup anchor block detection.

UDF anchor block detection is complicated by several things - there are several
places where the anchor point can be, some of them relative to the last
recorded block which some devices report wrongly. Moreover some devices on some
media seem to have 7 spare blocks sectors for every 32 blocks (at least as far
as I understand the old code) so we have to count also with that possibility.

This patch splits anchor block detection into several functions so that it is
clearer what we actually try to do. We fix several bugs of the type "for such
and such media, we fail to check block blah" as a result of the cleanup.

Signed-off-by: Jan Kara <jack@suse.cz>
fs/udf/super.c
fs/udf/udf_sb.h