On 10/29/15 02:32, Jordan Justen wrote: > The CpuDxe driver may run before the gEfiMetronomeArchProtocolGuid > protocol is installed. gBS->Stall does not work until this arch > protocol is installed. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Jordan Justen <[email protected]> > Cc: Jeff Fan <[email protected]> > Cc: Laszlo Ersek <[email protected]> > --- > UefiCpuPkg/CpuDxe/CpuMp.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/UefiCpuPkg/CpuDxe/CpuMp.c b/UefiCpuPkg/CpuDxe/CpuMp.c > index 04c2f1f..98fdfdf 100644 > --- a/UefiCpuPkg/CpuDxe/CpuMp.c > +++ b/UefiCpuPkg/CpuDxe/CpuMp.c > @@ -801,7 +801,7 @@ StartupAllAPs ( > goto Done; > } > > - gBS->Stall (gPollInterval); > + MicroSecondDelay (gPollInterval); > mMpSystemData.Timeout -= gPollInterval; > } > > @@ -987,7 +987,7 @@ StartupThisAP ( > return EFI_TIMEOUT; > } > > - gBS->Stall (gPollInterval); > + MicroSecondDelay (gPollInterval); > CpuData->Timeout -= gPollInterval; > } > > @@ -1755,7 +1755,7 @@ InitializeMpSupport ( > if (CheckAllAPsSleeping ()) { > break; > } > - gBS->Stall (gPollInterval); > + MicroSecondDelay (gPollInterval); > Timeout += gPollInterval; > } while (Timeout <= PcdGet32 (PcdCpuApInitTimeOutInMicroSeconds)); > ASSERT (Timeout <= PcdGet32 (PcdCpuApInitTimeOutInMicroSeconds)); >
This seems to cover all gBS->Stall() calls in CpuDxe. Reviewed-by: Laszlo Ersek <[email protected]> _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

