1) I think this feature should be 'FALSE' by default. I forgot to reset its default value. This feature makes use of page mechanism to detect NULL pointer. So any ARCH doesn't support paging in EDK-II can't use it. Currently validated platform includes VLV2 and Denlow. Let me know if all platform must be validated or not.
2) It's hard to make it a dynamic feature because we need to setup page table for physical address 0-4095 in advance. If there's no memory alloc/free action after enabling this feature, there's no chance to make those change in page table. Then the usage of feature will be limited in such case. From: Yao, Jiewen Sent: Monday, August 28, 2017 11:10 AM To: Wang, Jian J <jian.j.w...@intel.com>; edk2-devel@lists.01.org Subject: RE: [edk2] [PATCH 0/2] Implement NULL pointer detection feature Thank you to enable this feature. I have 2 comments, after a very quick review. 1) I notice it is enabled by default "gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetection|TRUE". Would you please provide the information on how many open source platforms are validated? Such as, IA platform (VLV2, Quark), emu platform (OVMF, NT32)? Or do we need validate any ARM platform? 2) I am thinking about CSM platform. Do you think we can make it dynamic, as such, a platform may set the validate based upon CSM enable/disable? Or if we need update the CSM module to patch the page table automatically? Once this is feature is ON. Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Wang, > Jian J > Sent: Monday, August 28, 2017 10:51 AM > To: edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> > Subject: [edk2] [PATCH 0/2] Implement NULL pointer detection feature > > This patch is the implementation of NULL pointer detection feature, > which is one of the small features of Special Pool. > > Wang, Jian J (2): > Implement NULL pointer detection for EDK-II Core > Implement NULL pointer detection for EDK-II SMM Core and driver > > MdeModulePkg/Core/Dxe/DxeMain.inf | 3 ++- > MdeModulePkg/Core/Dxe/Mem/Page.c | 5 +++-- > MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf | 1 + > MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c | 6 ++++-- > MdeModulePkg/Core/DxeIplPeim/X64/VirtualMemory.c | 26 > ++++++++++++++++-------- > MdeModulePkg/MdeModulePkg.dec | 7 +++++++ > UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/PageTbl.c | 12 +++++++++++ > UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 25 > ++++++++++++++++++++++- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 1 + > UefiCpuPkg/PiSmmCpuDxeSmm/X64/PageTbl.c | 12 +++++++++++ > 10 files changed, 84 insertions(+), 14 deletions(-) > > -- > 2.11.0.windows.1 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org<mailto: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