After finding the BSP Number return the result instead of continuing to loop over the remaining processors.
Suggested-by: Laszlo Ersek <ler...@redhat.com> Signed-off-by: Gerd Hoffmann <kra...@redhat.com> --- UefiCpuPkg/Library/MpInitLib/MpLib.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/UefiCpuPkg/Library/MpInitLib/MpLib.c b/UefiCpuPkg/Library/MpInitLib/MpLib.c index 4b6d6d02b027..2051554207dc 100644 --- a/UefiCpuPkg/Library/MpInitLib/MpLib.c +++ b/UefiCpuPkg/Library/MpInitLib/MpLib.c @@ -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 (FALSE); + return 0; } /** -- 2.43.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115831): https://edk2.groups.io/g/devel/message/115831 Mute This Topic: https://groups.io/mt/104510913/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-