Re: [edk2] [PATCH 0/4] UefiCpuPkg, OvmfPkg: multiprocessing fixes and improvements

2016-11-23 Thread Laszlo Ersek
On 11/22/16 21:26, Laszlo Ersek wrote:
> Patches 1 and 2 fix several instances of the same CPUID-related bug in
> UefiCpuPkg (BaseXApicLib, BaseXApicX2ApicLib, MpInitLib/Ia32,
> MpInitLib/X64).

I committed the first two patches (as they constitute a separate
bugfix), with Jeff's R-b's. Commit range 7b9b576c71c7..1cbd83308989.

Thanks!
Laszlo

> Patches 3 and 4 are independent from the bugfix, but they relate
> nonetheless to multiprocessing, so I'm including them in the same
> series. They allow OvmfPkg to fetch the number of boot processors from
> QEMU, and to make CpuMpPei / CpuDxe wait in the initial enumeration
> exactly as long as it takes for all of the APs to come up. This makes MP
> boot much more reliable (and no time is wasted waiting).
> 
> (
> 
>   Note that I have another patch set pending on the list:
> 
> [edk2] [PATCH v2 0/4] OvmfPkg: broadcast SMIs and dynamically revert
>   to traditional AP sync mode
> 
>   That series and this series have a trivial context dependency in
>   OvmfPkg/OvmfPkg*.dsc. Because that series consumes an interface from
>   QEMU that will be part of the 2.9 release only, not the pending 2.8
>   release, that series comes *second*. In comparison, this series works
>   as-is, so it comes first. Locally I have rebased the broadcast SMI
>   series already (it is trivial); it does not interfere with the review.
> 
> )
> 
> Repo:   https://github.com/lersek/edk2/
> Branch: mpinit
> 
> Cc: Igor Mammedov 
> Cc: Jeff Fan 
> Cc: Jordan Justen 
> 
> Thanks
> Laszlo
> 
> Laszlo Ersek (4):
>   UefiCpuPkg/LocalApicLib: fix feature test for Extended Topology CPUID
> leaf
>   UefiCpuPkg/MpInitLib: fix feature test for Extended Topology CPUID
> leaf
>   UefiCpuPkg/MpInitLib: allow platforms to provide a known CPU count
> upfront
>   OvmfPkg/PlatformPei: set PcdCpuKnownLogicalProcessorNumber for
> MpInitLib
> 
>  OvmfPkg/OvmfPkgIa32.dsc|  2 ++
>  OvmfPkg/OvmfPkgIa32X64.dsc |  2 ++
>  OvmfPkg/OvmfPkgX64.dsc |  2 ++
>  OvmfPkg/PlatformPei/Platform.c | 22 
> 
>  OvmfPkg/PlatformPei/PlatformPei.inf|  1 +
>  UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c |  7 +--
>  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.c |  7 +--
>  UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf  |  1 +
>  UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf  |  4 ++--
>  UefiCpuPkg/Library/MpInitLib/MpLib.c   | 16 
> ++
>  UefiCpuPkg/Library/MpInitLib/Ia32/MpFuncs.nasm | 21 
> +++
>  UefiCpuPkg/Library/MpInitLib/X64/MpFuncs.nasm  | 21 
> +++
>  UefiCpuPkg/UefiCpuPkg.dec  | 11 ++
>  13 files changed, 89 insertions(+), 28 deletions(-)
> 

___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] [PATCH 0/4] UefiCpuPkg, OvmfPkg: multiprocessing fixes and improvements

2016-11-22 Thread Laszlo Ersek
Patches 1 and 2 fix several instances of the same CPUID-related bug in
UefiCpuPkg (BaseXApicLib, BaseXApicX2ApicLib, MpInitLib/Ia32,
MpInitLib/X64).

Patches 3 and 4 are independent from the bugfix, but they relate
nonetheless to multiprocessing, so I'm including them in the same
series. They allow OvmfPkg to fetch the number of boot processors from
QEMU, and to make CpuMpPei / CpuDxe wait in the initial enumeration
exactly as long as it takes for all of the APs to come up. This makes MP
boot much more reliable (and no time is wasted waiting).

(

  Note that I have another patch set pending on the list:

[edk2] [PATCH v2 0/4] OvmfPkg: broadcast SMIs and dynamically revert
  to traditional AP sync mode

  That series and this series have a trivial context dependency in
  OvmfPkg/OvmfPkg*.dsc. Because that series consumes an interface from
  QEMU that will be part of the 2.9 release only, not the pending 2.8
  release, that series comes *second*. In comparison, this series works
  as-is, so it comes first. Locally I have rebased the broadcast SMI
  series already (it is trivial); it does not interfere with the review.

)

Repo:   https://github.com/lersek/edk2/
Branch: mpinit

Cc: Igor Mammedov 
Cc: Jeff Fan 
Cc: Jordan Justen 

Thanks
Laszlo

Laszlo Ersek (4):
  UefiCpuPkg/LocalApicLib: fix feature test for Extended Topology CPUID
leaf
  UefiCpuPkg/MpInitLib: fix feature test for Extended Topology CPUID
leaf
  UefiCpuPkg/MpInitLib: allow platforms to provide a known CPU count
upfront
  OvmfPkg/PlatformPei: set PcdCpuKnownLogicalProcessorNumber for
MpInitLib

 OvmfPkg/OvmfPkgIa32.dsc|  2 ++
 OvmfPkg/OvmfPkgIa32X64.dsc |  2 ++
 OvmfPkg/OvmfPkgX64.dsc |  2 ++
 OvmfPkg/PlatformPei/Platform.c | 22 

 OvmfPkg/PlatformPei/PlatformPei.inf|  1 +
 UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c |  7 +--
 UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.c |  7 +--
 UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf  |  1 +
 UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf  |  4 ++--
 UefiCpuPkg/Library/MpInitLib/MpLib.c   | 16 ++
 UefiCpuPkg/Library/MpInitLib/Ia32/MpFuncs.nasm | 21 
+++
 UefiCpuPkg/Library/MpInitLib/X64/MpFuncs.nasm  | 21 
+++
 UefiCpuPkg/UefiCpuPkg.dec  | 11 ++
 13 files changed, 89 insertions(+), 28 deletions(-)

-- 
2.9.2

___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel