Good idea. Reviewed-by: Star Zeng <star.z...@intel.com>. Thanks, Star
> -----Original Message----- > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of > Michael D Kinney > Sent: Saturday, June 29, 2019 4:19 AM > To: devel@edk2.groups.io > Cc: Wang, Jian J <jian.j.w...@intel.com>; Wu, Hao A <hao.a...@intel.com>; > Ni, Ray <ray...@intel.com>; Zeng, Star <star.z...@intel.com>; Yao, Jiewen > <jiewen....@intel.com> > Subject: [edk2-devel] [Patch] MdeModulePkg/PiSmmCore: Use unique > structure signatures > > https://bugzilla.tianocore.org/show_bug.cgi?id=1948 > > Update the data structure signatures in the PiSmmCore to be unique. Some > of the signatures are the same as those used by the DxeCore. For example, > the memory pool head and tail structures use the same signature in the > PiSmmCore and DxeCore. This means the use of the wrong FreePool API will > not be noticed at the time FreePool is called and a failure can occur much > later. By making the signatures unique, misuse of an API is caught at that > time the API is called. > > Cc: Jian J Wang <jian.j.w...@intel.com> > Cc: Hao A Wu <hao.a...@intel.com> > Cc: Ray Ni <ray...@intel.com> > Cc: Star Zeng <star.z...@intel.com> > Cc: Jiewen Yao <jiewen....@intel.com> > Signed-off-by: Michael D Kinney <michael.d.kin...@intel.com> > --- > MdeModulePkg/Core/PiSmmCore/PiSmmCore.h | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/MdeModulePkg/Core/PiSmmCore/PiSmmCore.h > b/MdeModulePkg/Core/PiSmmCore/PiSmmCore.h > index da01a1f07d..0908e7f4e9 100644 > --- a/MdeModulePkg/Core/PiSmmCore/PiSmmCore.h > +++ b/MdeModulePkg/Core/PiSmmCore/PiSmmCore.h > @@ -2,7 +2,7 @@ > The internal header file includes the common header files, defines > internal structure and functions used by SmmCore module. > > - Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR> > + Copyright (c) 2009 - 2019, Intel Corporation. All rights > + reserved.<BR> > SPDX-License-Identifier: BSD-2-Clause-Patent > > **/ > @@ -140,7 +140,7 @@ typedef struct { > EFI_LOADED_IMAGE_PROTOCOL SmmLoadedImage; > } EFI_SMM_DRIVER_ENTRY; > > -#define EFI_HANDLE_SIGNATURE SIGNATURE_32('h','n','d','l') > +#define EFI_HANDLE_SIGNATURE SIGNATURE_32('s','h','d','l') > > /// > /// IHANDLE - contains a list of protocol handles @@ -156,7 +156,7 @@ > typedef struct { > > #define ASSERT_IS_HANDLE(a) ASSERT((a)->Signature == > EFI_HANDLE_SIGNATURE) > > -#define PROTOCOL_ENTRY_SIGNATURE SIGNATURE_32('p','r','t','e') > +#define PROTOCOL_ENTRY_SIGNATURE SIGNATURE_32('s','p','t','e') > > /// > /// PROTOCOL_ENTRY - each different protocol has 1 entry in the protocol > @@ -175,7 +175,7 @@ typedef struct { > LIST_ENTRY Notify; > } PROTOCOL_ENTRY; > > -#define PROTOCOL_INTERFACE_SIGNATURE SIGNATURE_32('p','i','f','c') > +#define PROTOCOL_INTERFACE_SIGNATURE SIGNATURE_32('s','p','i','f') > > /// > /// PROTOCOL_INTERFACE - each protocol installed on a handle is tracked > @@ -195,7 +195,7 @@ typedef struct { > VOID *Interface; > } PROTOCOL_INTERFACE; > > -#define PROTOCOL_NOTIFY_SIGNATURE SIGNATURE_32('p','r','t','n') > +#define PROTOCOL_NOTIFY_SIGNATURE SIGNATURE_32('s','p','t','n') > > /// > /// PROTOCOL_NOTIFY - used for each register notification for a protocol > @@ -1245,7 +1245,7 @@ extern LIST_ENTRY mSmmMemoryMap; // > #define MAX_POOL_INDEX (MAX_POOL_SHIFT - MIN_POOL_SHIFT + 1) > > -#define POOL_HEAD_SIGNATURE SIGNATURE_32('p','h','d','0') > +#define POOL_HEAD_SIGNATURE SIGNATURE_32('s','p','h','d') > > typedef struct { > UINT32 Signature; > @@ -1254,7 +1254,7 @@ typedef struct { > UINTN Size; > } POOL_HEADER; > > -#define POOL_TAIL_SIGNATURE SIGNATURE_32('p','t','a','l') > +#define POOL_TAIL_SIGNATURE SIGNATURE_32('s','p','t','l') > > typedef struct { > UINT32 Signature; > -- > 2.21.0.windows.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#43041): https://edk2.groups.io/g/devel/message/43041 Mute This Topic: https://groups.io/mt/32245778/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-