[parted-devel] [parted 1.8.8] msdos label and file system corruption issues with > 2TB disk

H. Peter Anvin hpa at zytor.com
Thu Dec 27 19:32:45 UTC 2007


Michael Reed wrote:
> 
> Via analysis of the MSDOS partition table, I can state that it can address
> a maximum of 4TB of space.  Each partition entry consists of a starting block
> and a length.  Both of these fields are 32 bits in length.  No individual
> partition can begin beyond 2TB.  No individual partition can be longer than
> 2TB.  In order to address 4TB, at least two partition table entries must be
> used, for example:
> 

That's a very optimistic view that both depends on optimal layout and no 
32-bit bugs anywhere.

I'm considering adding GPT support to extlinux (syslinux), although it 
is complicated by the fact that there is no standard protocol to support 
booting from GPT partitions on BIOS systems.  I'm thinking of doing 
something like the following:

DS:SI, which normally points to the partition table entry of the booted 
partition, points to a synthetic MBR partition entry with type 0xEE, and 
if < 2 TB has valid start and length fields; otherwise -1.  The GPT 
partition table entry follows the 16 bytes of the synthetic MBR PTE.

extlinux itself doesn't need any support to handle GPT per se, although 
it won't support /boot extending past the 2 TB boundary any time soon.

	-hpa



More information about the parted-devel mailing list