MdePkg/Include/Pi/PiMultiPhase.h | 16 + MdePkg/Include/Protocol/MmMp.h | 333 +++++++++++ MdePkg/MdePkg.dec | 3 + UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 555 ++++++++++++++++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 + UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 160 +++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 372 +++++++++++++ UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 ++++++++++ 9 files changed, 1722 insertions(+), 17 deletions(-) create mode 100644 MdePkg/Include/Protocol/MmMp.h create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h
v3 changes: 1. Fix Token clean up too early caused CheckProcedure return error. https://bugzilla.tianocore.org/show_bug.cgi?id=1937 PI spec added a new protocol named MM MP protocol. This protocol allows for better remote queuing of execution of procedures on an AP. This extends the existing procedures to allow: 1. A function to be called in blocking and non-blocking manner explicitly 2. Allow broadcasts. 3. Allow execution of a procedure when a processor powers up. This patch serial enable this new protocol. Cc: Ray Ni <ray.ni@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Eric Dong (2): MdePkg: Add new MM MP Protocol definition. UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol. MdePkg/Include/Pi/PiMultiPhase.h | 16 + MdePkg/Include/Protocol/MmMp.h | 333 +++++++++++ MdePkg/MdePkg.dec | 3 + UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 555 ++++++++++++++++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 + UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 160 +++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 372 +++++++++++++ UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 ++++++++++ 9 files changed, 1722 insertions(+), 17 deletions(-) create mode 100644 MdePkg/Include/Protocol/MmMp.h create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h -- 2.21.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43187): https://edk2.groups.io/g/devel/message/43187 Mute This Topic: https://groups.io/mt/32293744/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
On 07/03/19 04:42, Dong, Eric wrote: > v3 changes: > 1. Fix Token clean up too early caused CheckProcedure return error. > > https://bugzilla.tianocore.org/show_bug.cgi?id=1937 > > PI spec added a new protocol named MM MP protocol. This protocol > allows for better remote queuing of execution of procedures on an AP. > This extends the existing procedures to allow: > 1. A function to be called in blocking and non-blocking manner explicitly > 2. Allow broadcasts. > 3. Allow execution of a procedure when a processor powers up. > > This patch serial enable this new protocol. > > Cc: Ray Ni <ray.ni@intel.com> > Cc: Laszlo Ersek <lersek@redhat.com> > > Eric Dong (2): > MdePkg: Add new MM MP Protocol definition. > UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol. > > MdePkg/Include/Pi/PiMultiPhase.h | 16 + > MdePkg/Include/Protocol/MmMp.h | 333 +++++++++++ > MdePkg/MdePkg.dec | 3 + > UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 555 ++++++++++++++++++- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 + > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 160 +++++- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 372 +++++++++++++ > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 ++++++++++ > 9 files changed, 1722 insertions(+), 17 deletions(-) > create mode 100644 MdePkg/Include/Protocol/MmMp.h > create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c > create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h > Regression-tested-by: Laszlo Ersek <lersek@redhat.com> -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43231): https://edk2.groups.io/g/devel/message/43231 Mute This Topic: https://groups.io/mt/32293744/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
HI Eric Would you please share what unit test you have done for this new feature? > -----Original Message----- > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of > Dong, Eric > Sent: Wednesday, July 3, 2019 10:43 AM > To: devel@edk2.groups.io > Cc: Ni, Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com> > Subject: [edk2-devel] [Patch v3 0/2] Enable new MM MP protocol > > v3 changes: > 1. Fix Token clean up too early caused CheckProcedure return error. > > https://bugzilla.tianocore.org/show_bug.cgi?id=1937 > > PI spec added a new protocol named MM MP protocol. This protocol > allows for better remote queuing of execution of procedures on an AP. > This extends the existing procedures to allow: > 1. A function to be called in blocking and non-blocking manner explicitly > 2. Allow broadcasts. > 3. Allow execution of a procedure when a processor powers up. > > This patch serial enable this new protocol. > > Cc: Ray Ni <ray.ni@intel.com> > Cc: Laszlo Ersek <lersek@redhat.com> > > Eric Dong (2): > MdePkg: Add new MM MP Protocol definition. > UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol. > > MdePkg/Include/Pi/PiMultiPhase.h | 16 + > MdePkg/Include/Protocol/MmMp.h | 333 +++++++++++ > MdePkg/MdePkg.dec | 3 + > UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 555 > ++++++++++++++++++- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 + > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 160 +++++- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 372 > +++++++++++++ > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 > ++++++++++ > 9 files changed, 1722 insertions(+), 17 deletions(-) > create mode 100644 MdePkg/Include/Protocol/MmMp.h > create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c > create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h > > -- > 2.21.0.windows.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43190): https://edk2.groups.io/g/devel/message/43190 Mute This Topic: https://groups.io/mt/32293744/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
Hi Jiewen, I did below tests: 1. Use MpGetNumberOfProcessors and MpSetStartupProcedure. 2. Test MpDispatchProcedure 1.sync mode and async mode, 2. with and without CpuStatus. 3. In async mode, use long delay get the final result with MpWaitForProcedure 4. In async mode, use short delay to check the final result with MpCheckForProcedure 3. Test MpBroadcastProcedure 1.sync mode and async mode, 2. with and without CpuStatus. 3. In async mode, use long delay get the final result with MpWaitForProcedure. 4. In async mode, use short delay to check the final result with MpCheckForProcedure. Detail test code can be found in MmMpUnitTest folder at git@github.com:ydong10/UnitTestPkg.git Thanks, Eric > -----Original Message----- > From: Yao, Jiewen > Sent: Wednesday, July 3, 2019 10:45 AM > To: devel@edk2.groups.io; Dong, Eric <eric.dong@intel.com> > Cc: Ni, Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com> > Subject: RE: [edk2-devel] [Patch v3 0/2] Enable new MM MP protocol > > HI Eric > Would you please share what unit test you have done for this new feature? > > > > -----Original Message----- > > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of > > Dong, Eric > > Sent: Wednesday, July 3, 2019 10:43 AM > > To: devel@edk2.groups.io > > Cc: Ni, Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com> > > Subject: [edk2-devel] [Patch v3 0/2] Enable new MM MP protocol > > > > v3 changes: > > 1. Fix Token clean up too early caused CheckProcedure return error. > > > > https://bugzilla.tianocore.org/show_bug.cgi?id=1937 > > > > PI spec added a new protocol named MM MP protocol. This protocol > > allows for better remote queuing of execution of procedures on an AP. > > This extends the existing procedures to allow: > > 1. A function to be called in blocking and non-blocking manner > > explicitly 2. Allow broadcasts. > > 3. Allow execution of a procedure when a processor powers up. > > > > This patch serial enable this new protocol. > > > > Cc: Ray Ni <ray.ni@intel.com> > > Cc: Laszlo Ersek <lersek@redhat.com> > > > > Eric Dong (2): > > MdePkg: Add new MM MP Protocol definition. > > UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol. > > > > MdePkg/Include/Pi/PiMultiPhase.h | 16 + > > MdePkg/Include/Protocol/MmMp.h | 333 +++++++++++ > > MdePkg/MdePkg.dec | 3 + > > UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 555 > > ++++++++++++++++++- > > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 + > > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 160 +++++- > > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 372 > > +++++++++++++ > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 > > ++++++++++ > > 9 files changed, 1722 insertions(+), 17 deletions(-) create mode > > 100644 MdePkg/Include/Protocol/MmMp.h create mode 100644 > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c create mode 100644 > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h > > > > -- > > 2.21.0.windows.1 > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43192): https://edk2.groups.io/g/devel/message/43192 Mute This Topic: https://groups.io/mt/32293744/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
It looks great. Thanks! > -----Original Message----- > From: Dong, Eric > Sent: Wednesday, July 3, 2019 10:58 AM > To: Yao, Jiewen <jiewen.yao@intel.com>; devel@edk2.groups.io > Cc: Ni, Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com> > Subject: RE: [edk2-devel] [Patch v3 0/2] Enable new MM MP protocol > > Hi Jiewen, > > I did below tests: > 1. Use MpGetNumberOfProcessors and MpSetStartupProcedure. > 2. Test MpDispatchProcedure > 1.sync mode and async mode, > 2. with and without CpuStatus. > 3. In async mode, use long delay get the final result with > MpWaitForProcedure > 4. In async mode, use short delay to check the final result with > MpCheckForProcedure > 3. Test MpBroadcastProcedure > 1.sync mode and async mode, > 2. with and without CpuStatus. > 3. In async mode, use long delay get the final result with > MpWaitForProcedure. > 4. In async mode, use short delay to check the final result with > MpCheckForProcedure. > > Detail test code can be found in MmMpUnitTest folder at > git@github.com:ydong10/UnitTestPkg.git > > Thanks, > Eric > > > -----Original Message----- > > From: Yao, Jiewen > > Sent: Wednesday, July 3, 2019 10:45 AM > > To: devel@edk2.groups.io; Dong, Eric <eric.dong@intel.com> > > Cc: Ni, Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com> > > Subject: RE: [edk2-devel] [Patch v3 0/2] Enable new MM MP protocol > > > > HI Eric > > Would you please share what unit test you have done for this new feature? > > > > > > > -----Original Message----- > > > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf > Of > > > Dong, Eric > > > Sent: Wednesday, July 3, 2019 10:43 AM > > > To: devel@edk2.groups.io > > > Cc: Ni, Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com> > > > Subject: [edk2-devel] [Patch v3 0/2] Enable new MM MP protocol > > > > > > v3 changes: > > > 1. Fix Token clean up too early caused CheckProcedure return error. > > > > > > https://bugzilla.tianocore.org/show_bug.cgi?id=1937 > > > > > > PI spec added a new protocol named MM MP protocol. This protocol > > > allows for better remote queuing of execution of procedures on an AP. > > > This extends the existing procedures to allow: > > > 1. A function to be called in blocking and non-blocking manner > > > explicitly 2. Allow broadcasts. > > > 3. Allow execution of a procedure when a processor powers up. > > > > > > This patch serial enable this new protocol. > > > > > > Cc: Ray Ni <ray.ni@intel.com> > > > Cc: Laszlo Ersek <lersek@redhat.com> > > > > > > Eric Dong (2): > > > MdePkg: Add new MM MP Protocol definition. > > > UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol. > > > > > > MdePkg/Include/Pi/PiMultiPhase.h | 16 + > > > MdePkg/Include/Protocol/MmMp.h | 333 > +++++++++++ > > > MdePkg/MdePkg.dec | 3 + > > > UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 555 > > > ++++++++++++++++++- > > > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 + > > > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 160 +++++- > > > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + > > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 372 > > > +++++++++++++ > > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 > > > ++++++++++ > > > 9 files changed, 1722 insertions(+), 17 deletions(-) create mode > > > 100644 MdePkg/Include/Protocol/MmMp.h create mode 100644 > > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c create mode 100644 > > > UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h > > > > > > -- > > > 2.21.0.windows.1 > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43194): https://edk2.groups.io/g/devel/message/43194 Mute This Topic: https://groups.io/mt/32293744/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.