Use DiskIo->ReadDisk() API to avoid alignment issue.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8144 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qhuang8
2009-04-22 02:52:32 +00:00
parent 15a7c2f1fe
commit 96f99e1df8
3 changed files with 43 additions and 44 deletions

View File

@@ -132,7 +132,6 @@ PartitionInstallMbrChildHandles (
EFI_DEVICE_PATH_PROTOCOL *DevicePathNode;
EFI_DEVICE_PATH_PROTOCOL *LastDevicePathNode;
Mbr = NULL;
Found = EFI_NOT_FOUND;
Mbr = AllocatePool (BlockIo->Media->BlockSize);
@@ -140,13 +139,13 @@ PartitionInstallMbrChildHandles (
goto Done;
}
Status = BlockIo->ReadBlocks (
BlockIo,
BlockIo->Media->MediaId,
0,
BlockIo->Media->BlockSize,
Mbr
);
Status = DiskIo->ReadDisk (
DiskIo,
BlockIo->Media->MediaId,
0,
BlockIo->Media->BlockSize,
Mbr
);
if (EFI_ERROR (Status)) {
Found = Status;
goto Done;
@@ -240,13 +239,13 @@ PartitionInstallMbrChildHandles (
do {
Status = BlockIo->ReadBlocks (
BlockIo,
BlockIo->Media->MediaId,
ExtMbrStartingLba,
BlockIo->Media->BlockSize,
Mbr
);
Status = DiskIo->ReadDisk (
DiskIo,
BlockIo->Media->MediaId,
ExtMbrStartingLba,
BlockIo->Media->BlockSize,
Mbr
);
if (EFI_ERROR (Status)) {
Found = Status;
goto Done;