On Thu, 6 Dec 2018 at 00:56, Gao, Liming <[email protected]> wrote: > > Reviewed-by: Liming Gao <[email protected]> >
Thanks all Pushed as 6e8cad49a09d..67938bcc9d9e > > -----Original Message----- > > From: edk2-devel [mailto:[email protected]] On Behalf Of Ard > > Biesheuvel > > Sent: Wednesday, December 5, 2018 4:24 PM > > To: [email protected] > > Cc: [email protected]; Gao, Liming <[email protected]> > > Subject: [edk2] [PATCH] BaseTools/CommonLib: drop the use of MAX_ADDRESS > > > > The macro MAX_ADDRESS represents the largest virtual address that > > is valid for a certain architecture. For the BaseTools, this quantity > > is irrelevant, since the same tools can be used to build for different > > targets. > > > > Since we only refer to it in a single place, which is an ASSERT() that > > doesn't seem particularly useful (it ensures that memcpy() will not > > be called with arguments that will make it read beyond the end of the > > address space and wrap around), let's drop the ASSERT and all references > > to MAX_ADDRESS. > > > > Cc: Bob Feng <[email protected]> > > Cc: Liming Gao <[email protected]> > > Cc: Yonghong Zhu <[email protected]> > > Contributed-under: TianoCore Contribution Agreement 1.1 > > Signed-off-by: Ard Biesheuvel <[email protected]> > > --- > > BaseTools/Source/C/Include/AArch64/ProcessorBind.h | 5 ----- > > BaseTools/Source/C/Include/Arm/ProcessorBind.h | 5 ----- > > BaseTools/Source/C/Include/Common/UefiBaseTypes.h | 1 - > > BaseTools/Source/C/Include/Ia32/ProcessorBind.h | 5 ----- > > BaseTools/Source/C/Include/X64/ProcessorBind.h | 5 ----- > > BaseTools/Source/C/Common/CommonLib.c | 1 - > > 6 files changed, 22 deletions(-) > > > > diff --git a/BaseTools/Source/C/Include/AArch64/ProcessorBind.h > > b/BaseTools/Source/C/Include/AArch64/ProcessorBind.h > > index e7e9d83198a6..f956cab453f0 100644 > > --- a/BaseTools/Source/C/Include/AArch64/ProcessorBind.h > > +++ b/BaseTools/Source/C/Include/AArch64/ProcessorBind.h > > @@ -90,11 +90,6 @@ typedef INT64 INTN; > > /// > > #define MAX_2_BITS 0xC000000000000000 > > > > -/// > > -/// Maximum legal AARCH64 address > > -/// > > -#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF > > - > > /// > > /// The stack alignment required for AARCH64 > > /// > > diff --git a/BaseTools/Source/C/Include/Arm/ProcessorBind.h > > b/BaseTools/Source/C/Include/Arm/ProcessorBind.h > > index be4aac97664d..856d2bd9eff7 100644 > > --- a/BaseTools/Source/C/Include/Arm/ProcessorBind.h > > +++ b/BaseTools/Source/C/Include/Arm/ProcessorBind.h > > @@ -88,11 +88,6 @@ typedef INT32 INTN; > > /// > > #define MAX_2_BITS 0xC0000000 > > > > -/// > > -/// Maximum legal ARM address > > -/// > > -#define MAX_ADDRESS 0xFFFFFFFF > > - > > /// > > /// The stack alignment required for ARM > > /// > > diff --git a/BaseTools/Source/C/Include/Common/UefiBaseTypes.h > > b/BaseTools/Source/C/Include/Common/UefiBaseTypes.h > > index aa1aef3ce638..696ac15e4cd5 100644 > > --- a/BaseTools/Source/C/Include/Common/UefiBaseTypes.h > > +++ b/BaseTools/Source/C/Include/Common/UefiBaseTypes.h > > @@ -170,6 +170,5 @@ typedef union { > > > > > > #define EFI_MAX_BIT MAX_BIT > > -#define EFI_MAX_ADDRESS MAX_ADDRESS > > > > #endif > > diff --git a/BaseTools/Source/C/Include/Ia32/ProcessorBind.h > > b/BaseTools/Source/C/Include/Ia32/ProcessorBind.h > > index 4719b53d37fa..96ac691df042 100644 > > --- a/BaseTools/Source/C/Include/Ia32/ProcessorBind.h > > +++ b/BaseTools/Source/C/Include/Ia32/ProcessorBind.h > > @@ -131,11 +131,6 @@ typedef INT32 INTN; > > #define MAX_BIT 0x80000000 > > #define MAX_2_BITS 0xC0000000 > > > > -// > > -// Maximum legal IA-32 address > > -// > > -#define MAX_ADDRESS 0xFFFFFFFF > > - > > // > > // Modifier to ensure that all protocol member functions and EFI intrinsics > > // use the correct C calling convention. All protocol member functions and > > diff --git a/BaseTools/Source/C/Include/X64/ProcessorBind.h > > b/BaseTools/Source/C/Include/X64/ProcessorBind.h > > index c625f8cef4a1..987738508333 100644 > > --- a/BaseTools/Source/C/Include/X64/ProcessorBind.h > > +++ b/BaseTools/Source/C/Include/X64/ProcessorBind.h > > @@ -150,11 +150,6 @@ typedef INT64 INTN; > > #define MAX_BIT 0x8000000000000000ULL > > #define MAX_2_BITS 0xC000000000000000ULL > > > > -// > > -// Maximum legal Itanium-based address > > -// > > -#define MAX_ADDRESS 0xFFFFFFFFFFFFFFFFULL > > - > > // > > // Modifier to ensure that all protocol member functions and EFI intrinsics > > // use the correct C calling convention. All protocol member functions and > > diff --git a/BaseTools/Source/C/Common/CommonLib.c > > b/BaseTools/Source/C/Common/CommonLib.c > > index 42dfa821624d..5c40fdb5fd49 100644 > > --- a/BaseTools/Source/C/Common/CommonLib.c > > +++ b/BaseTools/Source/C/Common/CommonLib.c > > @@ -1236,7 +1236,6 @@ InternalAllocateCopyPool ( > > VOID *Memory; > > > > ASSERT (Buffer != NULL); > > - ASSERT (AllocationSize <= (MAX_ADDRESS - (UINTN) Buffer + 1)); > > > > Memory = malloc (AllocationSize); > > if (Memory != NULL) { > > -- > > 2.19.2 > > > > _______________________________________________ > > edk2-devel mailing list > > [email protected] > > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

