[NTOSKRNL]
authorPierre Schweitzer <pierre@reactos.org>
Wed, 9 Mar 2011 10:33:13 +0000 (10:33 +0000)
committerPierre Schweitzer <pierre@reactos.org>
Wed, 9 Mar 2011 10:33:13 +0000 (10:33 +0000)
commitc6d8f7de7042a47f267b6df3d76fc94ce164bc39
tree71184f4ece1c53d1de5e98dc4aedb44cd93b9442
parentb2832e17fc4f63c939efa47ff4aac7785bc63ac1
[NTOSKRNL]
Implemented FstubFixupEfiPartition():
Purpose is to let ReactOS handle realistic partitions length in case of an EFI/GPT protective MBR.
Indeed, when formatting a disk to GPT, you add a protective MBR that contains a fake partition entry, with type 0xEE having the following property: its size is set to maximum allocatable size in MBR.
In that case, if disk is small, you may go beyond disk size.
This is why a fix to partition length may be needed when re-reading partition entry.
This is the way ReactOS creates protective MBR.
You may find some more information here: http://msdn.microsoft.com/en-us/windows/hardware/gg463525

Fixed xHalIoReadPartitionTable():
- Allocate a buffer that has the proper size (instead of allocating a buffer which is too big). Especially since this leads to partial init only some lines after.
- Remove redundant & useless affectation.
- Check/fix 0xEE partition length in case of an EFI/GPT protective MBR (see upper point).

svn path=/trunk/; revision=51002
reactos/ntoskrnl/fstub/disksup.c