Bruce,

No.  Different ASSERT().

That looks like a new bug, and it is in the new code I added to force BSP to 
wait for all APs to enter sleeping state before StartupAllAPs() is called.

How did you reproduce this?

Thanks,

Mike

>-----Original Message-----
>From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of
>Bruce Cran
>Sent: Tuesday, October 20, 2015 5:21 PM
>To: Laszlo Ersek; edk2-de...@ml01.01.org
>Subject: Re: [edk2] [PATCH v3 01/52] UefiCpuPkg: CpuDxe: Fix ASSERT() when
>only 1 CPU detected
>
>On 10/14/15 4:25 PM, Laszlo Ersek wrote:
>> From: Michael Kinney <michael.d.kin...@intel.com>
>>
>> When only 1 CPU is detected and the max CPUs is greater than 1,
>> an ASSERT() is generated because the pages associated with the
>> AP stack have already been freed.  Only do this FreePages() call
>> if there is more than 1 CPU detected.
>
>Is the ASSERT() that was being triggered "LockValue == ((UINTN) 2) ||
>LockValue == ((UINTN) 1)" in:
>
>   AcquireSpinLockOrFail
>   GetMpSpinLock
>   TestCpuStatusFlag
>   CheckAllAPsSleeping
>   InitializeMpSupport
>   InitializeCpu
>   ...
>
>Or is this a separate bug?
>
>--
>Bruce
>_______________________________________________
>edk2-devel mailing list
>edk2-devel@lists.01.org
>https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to