1
linux/fs/udf
Pavel Emelyanov d0db181c07 udf: fix anchor point detection
According to ECMA 167 rev.  3 (see 3/8.4.2.1), Anchor Volume Descriptor
Pointer should be recorded at two or more anchor points located at sectors
256, N, N - 256, where N - is a largest logical sector number at volume
space.

So we should always try to detect N on UDF volume before trying to find
Anchor Volume Descriptor (i.e.  calling to udf_find_anchor()).

That said, all this patch does is updates the s_last_block even if the
udf_vrs() returns positive value.

Originally written and tested by Yuri Per, ported on latest mainline by me.

Signed-off-by: Yuri Per <Yuri.Per@acronis.com>
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Cc: Max Lyadvinsky <Max.Lyadvinsky@acronis.com>
Cc: Vladimir Simonov <Vladimir.Simonov@acronis.com>
Cc: Andrew Neporada <Andrew.Neporada@acronis.com>
Cc: Kirill Korotaev <dev@openvz.org>
Signed-off-by: Jan Kara <jack@suse.cz>
2008-04-17 14:23:04 +02:00
..
balloc.c udf: replace all adds to little endians variables with le*_add_cpu 2008-04-17 14:22:28 +02:00
crc.c udf: constify crc 2008-04-17 14:22:24 +02:00
dir.c udf: Remove declarations of arrays of size UDF_NAME_LEN (256 bytes) 2008-04-17 14:23:04 +02:00
directory.c udf: cleanup directory offset handling 2008-02-08 09:22:36 -08:00
ecma_167.h udf: remove unneeded kernel_timestamp type 2008-04-17 14:22:42 +02:00
file.c udf: move headers out include/linux/ 2008-04-17 14:22:23 +02:00
fsync.c UDF: coding style conversion - lindent fixups 2007-07-21 17:49:14 -07:00
ialloc.c udf: replace all adds to little endians variables with le*_add_cpu 2008-04-17 14:22:28 +02:00
inode.c udf: convert udf_stamp_to_time and udf_time_to_stamp to use timestamps 2008-04-17 14:22:29 +02:00
lowlevel.c udf: move headers out include/linux/ 2008-04-17 14:22:23 +02:00
Makefile
misc.c udf: move headers out include/linux/ 2008-04-17 14:22:23 +02:00
namei.c udf: Remove declarations of arrays of size UDF_NAME_LEN (256 bytes) 2008-04-17 14:23:04 +02:00
osta_udf.h UDF: coding style conversion - lindent fixups 2007-07-21 17:49:14 -07:00
partition.c udf: move headers out include/linux/ 2008-04-17 14:22:23 +02:00
super.c udf: fix anchor point detection 2008-04-17 14:23:04 +02:00
symlink.c udf: move headers out include/linux/ 2008-04-17 14:22:23 +02:00
truncate.c udf: truncate: create function for updating of Allocation Ext Descriptor 2008-04-17 14:22:28 +02:00
udf_i.h udf: replace udf_*_offset macros with functions 2008-04-17 14:22:29 +02:00
udf_sb.h udf: move headers out include/linux/ 2008-04-17 14:22:23 +02:00
udfdecl.h udf: convert udf_stamp_to_time and udf_time_to_stamp to use timestamps 2008-04-17 14:22:29 +02:00
udfend.h udf: remove unneeded kernel_timestamp type 2008-04-17 14:22:42 +02:00
udftime.c udf: convert udf_stamp_to_time and udf_time_to_stamp to use timestamps 2008-04-17 14:22:29 +02:00
unicode.c udf: udf_CS0toNLS cleanup 2008-04-17 14:22:24 +02:00