UefiCpuPkg/MpInitLib: return early in GetBspNumber()

After finding the BSP Number return the result instead of
continuing to loop over the remaining processors.

Suggested-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-Id: <20240222160106.686484-7-kraxel@redhat.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
[lersek@redhat.com: s/ASSERT (FALSE)/ASSERT_EFI_ERROR (EFI_NOT_FOUND)/ [Ray]]
This commit is contained in:
Gerd Hoffmann 2024-02-22 17:01:06 +01:00 committed by mergify[bot]
parent 5e09b5d6d7
commit d25421d0d8
1 changed files with 4 additions and 7 deletions

View File

@ -1903,15 +1903,13 @@ GetBspNumber (
)
{
UINT32 ApicId;
UINT32 BspNumber;
UINT32 Index;
CONST MP_HAND_OFF *MpHandOff;
//
// Get the processor number for the BSP
//
BspNumber = MAX_UINT32;
ApicId = GetInitialApicId ();
ApicId = GetInitialApicId ();
for (MpHandOff = FirstMpHandOff;
MpHandOff != NULL;
@ -1919,14 +1917,13 @@ GetBspNumber (
{
for (Index = 0; Index < MpHandOff->CpuCount; Index++) {
if (MpHandOff->Info[Index].ApicId == ApicId) {
BspNumber = MpHandOff->ProcessorIndex + Index;
return MpHandOff->ProcessorIndex + Index;
}
}
}
ASSERT (BspNumber != MAX_UINT32);
return BspNumber;
ASSERT_EFI_ERROR (EFI_NOT_FOUND);
return 0;
}
/**