u-boot/disk
Frederic Leroy 04735e9c55 Fix ext2/ext4 filesystem accesses beyond 2TiB
With CONFIG_SYS_64BIT_LBA, lbaint_t gets defined as a 64-bit type,
which is required to represent block numbers for storage devices that
exceed 2TiB (the block size usually is 512B), e.g. recent hard drives

We now use lbaint_t for partition offset to reflect the lbaint_t change,
and access partitions beyond or crossing the 2.1TiB limit.
This required changes to signature of ext4fs_devread(), and type of all
variables relatives to block sector.

ext2/ext4 fs uses logical block represented by a 32 bit value. Logical
block is a multiple of device block sector. To avoid overflow problem
when calling ext4fs_devread(), we need to cast the sector parameter.

Signed-off-by: Frédéric Leroy <fredo@starox.org>
2013-07-15 17:06:13 -04:00
..
Makefile disk/part.c: Make features optional 2011-07-26 14:10:14 +02:00
part.c disk: define HAVE_BLOCK_DEVICE in a common place 2013-03-14 11:06:44 -07:00
part_amiga.c disk: define HAVE_BLOCK_DEVICE in a common place 2013-03-14 11:06:44 -07:00
part_amiga.h * Code cleanup: 2003-06-27 21:31:46 +00:00
part_dos.c disk/part_dos: check harder for partition table 2013-05-01 16:24:01 -04:00
part_dos.h disk: part_msdos: parse and store partition UUID 2012-09-25 15:05:45 -07:00
part_efi.c Fix ext2/ext4 filesystem accesses beyond 2TiB 2013-07-15 17:06:13 -04:00
part_iso.c Fix ext2/ext4 filesystem accesses beyond 2TiB 2013-07-15 17:06:13 -04:00
part_iso.h Big white-space cleanup. 2008-05-21 00:14:08 +02:00
part_mac.c disk: define HAVE_BLOCK_DEVICE in a common place 2013-03-14 11:06:44 -07:00
part_mac.h * Code cleanup: 2003-06-27 21:31:46 +00:00