From: "Ni, Ray" <ray.ni@intel.com>
To: "Tan, Dun" <dun.tan@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Dong, Eric" <eric.dong@intel.com>,
"Kumar, Rahul R" <rahul.r.kumar@intel.com>,
Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [edk2-devel] [PATCH 3/6] UefiCpuPkg: Consume MpInfo2Hob in PiSmmCpuDxe
Date: Thu, 7 Dec 2023 01:26:38 +0000 [thread overview]
Message-ID: <MN6PR11MB824409758EB61CCA20285F698C8BA@MN6PR11MB8244.namprd11.prod.outlook.com> (raw)
In-Reply-To: <BN9PR11MB5483B75742FAF0D002DC8772E58BA@BN9PR11MB5483.namprd11.prod.outlook.com>
> -----Original Message-----
> From: Tan, Dun <dun.tan@intel.com>
> Sent: Thursday, December 7, 2023 8:23 AM
> To: Ni, Ray <ray.ni@intel.com>; devel@edk2.groups.io
> Cc: Dong, Eric <eric.dong@intel.com>; Kumar, Rahul R
> <rahul.r.kumar@intel.com>; Gerd Hoffmann <kraxel@redhat.com>
> Subject: RE: [PATCH 3/6] UefiCpuPkg: Consume MpInfo2Hob in PiSmmCpuDxe
>
> Will change the code based on comments 1-9.
>
> About comments 10, "10. The depex change means that CpuSmm driver could
> run before CpuMp driver runs. Have you verified if CpuSmm can start well
> even removing CpuMp DXE driver?"
>
> Yes, I verified it in OvmfIa32X64 boot. CpuSmm can start well even removing
> CpuMp DXE driver.
Great!
> (also removed some checking for gEfiCpuArchProtocolGuid)
I assume the checking for CpuArch protocol is from other modules.
>
> Thanks,
> Dun
>
> -----Original Message-----
> From: Ni, Ray <ray.ni@intel.com>
> Sent: Wednesday, December 6, 2023 5:55 PM
> To: Tan, Dun <dun.tan@intel.com>; devel@edk2.groups.io
> Cc: Dong, Eric <eric.dong@intel.com>; Kumar, Rahul R
> <rahul.r.kumar@intel.com>; Gerd Hoffmann <kraxel@redhat.com>
> Subject: RE: [PATCH 3/6] UefiCpuPkg: Consume MpInfo2Hob in PiSmmCpuDxe
>
> 1. The function name can be "GetMpInformation()" without mentioning
> "FromMpInfo2Hob".
>
> > + EFI_HOB_GUID_TYPE *GuidHob;
> > + EFI_HOB_GUID_TYPE *FirstMpInfor2Hob;
>
> 2. "FirstMpInfo2Hob". Please remove "r".
>
> >+ FirstMpInfor2Hob = GetFirstGuidHob (&gMpInformationHobGuid2);
>
> 3. Please update comments to explain "FirstMpInfo2Hob" is to speed up the
> 2nd while-loop without needing to look for MpInfo2Hob from beginning.
>
> > +
> > + ASSERT (CpuCount <= PcdGet32 (PcdCpuMaxLogicalProcessorNumber));
> > + *NumberOfCpus = CpuCount;
>
> 4. There is no "return" before "*NumberOfCpus" assignment. So, why not
> remove "CpuCount" and directly udpates "*NumberOfCpus" in the
> while-loop?
>
> > +
> > + MpInfomation2Buffer = AllocatePool (sizeof
> > (MP_INFORMATION2_HOB_DATA *) * HobCount);
>
> 5. MpInfomation2Buffer -> MpInfo2Hobs
>
>
> 6. Can you move "PrevProcessorIndex" assignment just above the "for" loop?
>
> > + for (Index = 0; Index < HobCount; Index++) {
> 7. Index -> HobIndex
>
> > + CopyMem (
> > + ProcessorInfo + PrevProcessorIndex + ProcessorIndex,
>
> 8. &ProcessorInfo[PrevProcessorIndex + ProcessorIndex]
>
> > +
> > + *ProcessorInfoPointer = ProcessorInfo;
>
> 9. If you let the function just return ProcessorInfo and NULL when failure
> happens, will it simplify the code?
>
> >
> > +[Depex]
> > + TRUE
> > -[Depex]
> > - gEfiMpServiceProtocolGuid
>
> 10. The depex change means that CpuSmm driver could run before CpuMp
> driver runs. Have you verified if CpuSmm can start well even removing CpuMp
> DXE driver?
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#112150): https://edk2.groups.io/g/devel/message/112150
Mute This Topic: https://groups.io/mt/102987139/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/leave/12367111/7686176/1913456212/xyzzy [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-
next prev parent reply other threads:[~2023-12-07 1:26 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-05 5:48 [edk2-devel] [PATCH 0/6] Create and consume a new gMpInformationHobGuid2 in UefiCpuPkg duntan
2023-12-05 5:48 ` [edk2-devel] [PATCH 1/6] UefiCpuPkg: Create " duntan
2023-12-06 9:09 ` Ni, Ray
2023-12-07 0:21 ` duntan
2023-12-05 5:48 ` [edk2-devel] [PATCH 2/6] UefiCpuPkg: Build MpInfo2HOB in CpuMpPei duntan
2023-12-06 9:24 ` Ni, Ray
2023-12-07 0:21 ` duntan
2023-12-05 5:48 ` [edk2-devel] [PATCH 3/6] UefiCpuPkg: Consume MpInfo2Hob in PiSmmCpuDxe duntan
2023-12-06 9:55 ` Ni, Ray
2023-12-07 0:22 ` duntan
2023-12-07 1:26 ` Ni, Ray [this message]
2023-12-05 5:48 ` [edk2-devel] [PATCH 4/6] UefiCpuPkg: Add a new field in MpInfo2 HOB duntan
2023-12-06 9:55 ` Ni, Ray
2023-12-05 5:48 ` [edk2-devel] [PATCH 5/6] UefiCpuPkg: Cache core type " duntan
2023-12-06 10:01 ` Ni, Ray
2023-12-07 0:23 ` duntan
2023-12-05 5:49 ` [edk2-devel] [PATCH 6/6] UefiCpuPkg: Avoid assuming only one smmbasehob duntan
2023-12-06 10:14 ` Ni, Ray
2023-12-07 0:37 ` duntan
2023-12-07 1:25 ` Ni, Ray
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=MN6PR11MB824409758EB61CCA20285F698C8BA@MN6PR11MB8244.namprd11.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox