public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH v2] UefiPayloadPkg: Correct MAX_LOGICAL_PROCESSORS value
@ 2023-03-13  4:53 Xiaoqiang Zhang
  2023-03-14  8:33 ` Lu, James
  0 siblings, 1 reply; 2+ messages in thread
From: Xiaoqiang Zhang @ 2023-03-13  4:53 UTC (permalink / raw)
  To: devel; +Cc: Xiaoqiang Zhang, Guo Dong, Ray Ni, James Lu

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4367

Issue:
For Server platforms, when FSP does not output mCpuInitMpLibHobGuid HOB,
the code will wakeup all APs and calculate the processor count in DXE
phase. But when processor thread number is above 256, will encounter
Startup IPI exception in DXE phase.

Root cause:
MAX_LOGICAL_PROCESSORS MARCO value in UefiPayloadPkg.dsc is 256,
when the actual processor thread number is above 256, will encounter
data overflow exception.

Solution:
Align MAX_LOGICAL_PROCESSORS value with Server platform side value 1024.

Signed-off-by: Xiaoqiang Zhang <xiaoqiang.zhang@intel.com>
Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: James Lu <james.lu@intel.com>
---
 UefiPayloadPkg/UefiPayloadPkg.dsc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index 35e3bfff35..bca5d3f335 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -59,7 +59,7 @@
   #
   # CPU options
   #
-  DEFINE MAX_LOGICAL_PROCESSORS       = 256
+  DEFINE MAX_LOGICAL_PROCESSORS       = 1024
 
   #
   # PCI options
-- 
2.39.1.windows.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] UefiPayloadPkg: Correct MAX_LOGICAL_PROCESSORS value
  2023-03-13  4:53 [PATCH v2] UefiPayloadPkg: Correct MAX_LOGICAL_PROCESSORS value Xiaoqiang Zhang
@ 2023-03-14  8:33 ` Lu, James
  0 siblings, 0 replies; 2+ messages in thread
From: Lu, James @ 2023-03-14  8:33 UTC (permalink / raw)
  To: Zhang, Xiaoqiang, devel@edk2.groups.io; +Cc: Dong, Guo, Ni, Ray

Reviewed-by: James Lu <james.lu@intel.com>


Thanks,
James

-----Original Message-----
From: Zhang, Xiaoqiang <xiaoqiang.zhang@intel.com> 
Sent: Monday, March 13, 2023 12:53 PM
To: devel@edk2.groups.io
Cc: Zhang, Xiaoqiang <xiaoqiang.zhang@intel.com>; Dong, Guo <guo.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Lu, James <james.lu@intel.com>
Subject: [PATCH v2] UefiPayloadPkg: Correct MAX_LOGICAL_PROCESSORS value

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4367

Issue:
For Server platforms, when FSP does not output mCpuInitMpLibHobGuid HOB, the code will wakeup all APs and calculate the processor count in DXE phase. But when processor thread number is above 256, will encounter Startup IPI exception in DXE phase.

Root cause:
MAX_LOGICAL_PROCESSORS MARCO value in UefiPayloadPkg.dsc is 256, when the actual processor thread number is above 256, will encounter data overflow exception.

Solution:
Align MAX_LOGICAL_PROCESSORS value with Server platform side value 1024.

Signed-off-by: Xiaoqiang Zhang <xiaoqiang.zhang@intel.com>
Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: James Lu <james.lu@intel.com>
---
 UefiPayloadPkg/UefiPayloadPkg.dsc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index 35e3bfff35..bca5d3f335 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -59,7 +59,7 @@
   #
   # CPU options
   #
-  DEFINE MAX_LOGICAL_PROCESSORS       = 256
+  DEFINE MAX_LOGICAL_PROCESSORS       = 1024
 
   #
   # PCI options
--
2.39.1.windows.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-03-14  8:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-13  4:53 [PATCH v2] UefiPayloadPkg: Correct MAX_LOGICAL_PROCESSORS value Xiaoqiang Zhang
2023-03-14  8:33 ` Lu, James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox