]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Disk/PartitionDxe/Partition.c
Revert "MdeModulePkg/PartitionDxe: Fix the incorrect LBA size in child ..."
[mirror_edk2.git] / MdeModulePkg / Universal / Disk / PartitionDxe / Partition.c
index f10ce7c65bdf9b9c23448b74c94ac984d82c5af9..473e0913200ca0a4d1157c76df6c934edae13019 100644 (file)
@@ -1149,8 +1149,8 @@ PartitionInstallChildHandle (
 \r
   Private->Signature        = PARTITION_PRIVATE_DATA_SIGNATURE;\r
 \r
-  Private->Start            = MultU64x32 (Start, BlockSize);\r
-  Private->End              = MultU64x32 (End + 1, BlockSize);\r
+  Private->Start            = MultU64x32 (Start, ParentBlockIo->Media->BlockSize);\r
+  Private->End              = MultU64x32 (End + 1, ParentBlockIo->Media->BlockSize);\r
 \r
   Private->BlockSize        = BlockSize;\r
   Private->ParentBlockIo    = ParentBlockIo;\r
@@ -1187,7 +1187,13 @@ PartitionInstallChildHandle (
 \r
   Private->Media.IoAlign   = 0;\r
   Private->Media.LogicalPartition = TRUE;\r
-  Private->Media.LastBlock = End - Start;\r
+  Private->Media.LastBlock = DivU64x32 (\r
+                               MultU64x32 (\r
+                                 End - Start + 1,\r
+                                 ParentBlockIo->Media->BlockSize\r
+                                 ),\r
+                                BlockSize\r
+                               ) - 1;\r
 \r
   Private->Media.BlockSize = (UINT32) BlockSize;\r
 \r