UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
Current code allocate buffer for the pointer which later get value
from PCD database. but current code error use "=" for this case.
Use AllocateCopyPool instead to fix it.
V2 enhanced to directly use AllocateCopyPool to get the PCD value.
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Shao Ming <ming.shao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Eric Dong <eric.dong@intel.com>
---
UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
index 474aea3..b3b2d84 100644
--- a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
+++ b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
@@ -64,9 +64,8 @@ GetSupportPcds (
UINT8 *SupportBitMask;
BitMaskSize = PcdGetSize (PcdCpuFeaturesSupport);
- SupportBitMask = AllocateZeroPool (BitMaskSize);
+ SupportBitMask = AllocateCopyPool (BitMaskSize, (UINT8 *) PcdGetPtr (PcdCpuFeaturesSupport));
ASSERT (SupportBitMask != NULL);
- SupportBitMask = (UINT8 *) PcdGetPtr (PcdCpuFeaturesSupport);
return SupportBitMask;
}
@@ -85,9 +84,8 @@ GetConfigurationPcds (
UINT8 *SupportBitMask;
BitMaskSize = PcdGetSize (PcdCpuFeaturesUserConfiguration);
- SupportBitMask = AllocateZeroPool (BitMaskSize);
+ SupportBitMask = AllocateCopyPool (BitMaskSize, (UINT8 *) PcdGetPtr (PcdCpuFeaturesUserConfiguration));
ASSERT (SupportBitMask != NULL);
- SupportBitMask = (UINT8 *) PcdGetPtr (PcdCpuFeaturesUserConfiguration);
return SupportBitMask;
}
--
2.7.0.windows.1
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Eric, You can eliminate the BitMaskSize local if you use the following: SupportBitMask = AllocateCopyPool ( PcdGetSize (PcdCpuFeaturesSupport), (UINT8 *) PcdGetPtr (PcdCpuFeaturesSupport) ); Mike > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On > Behalf Of Eric Dong > Sent: Monday, August 14, 2017 10:59 PM > To: edk2-devel@lists.01.org > Cc: Ni, Ruiyu <ruiyu.ni@intel.com>; Shao, Ming > <ming.shao@intel.com> > Subject: [edk2] [Patch v2] UefiCpuPkg RegisterCpuFeaturesLib: > Fix buffer pointer error usage. > > Current code allocate buffer for the pointer which later get > value > from PCD database. but current code error use "=" for this case. > Use AllocateCopyPool instead to fix it. > > V2 enhanced to directly use AllocateCopyPool to get the PCD > value. > > Cc: Ruiyu Ni <ruiyu.ni@intel.com> > Cc: Shao Ming <ming.shao@intel.com> > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Eric Dong <eric.dong@intel.com> > --- > > UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize. > c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitializ > e.c > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitializ > e.c > index 474aea3..b3b2d84 100644 > --- > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitializ > e.c > +++ > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitializ > e.c > @@ -64,9 +64,8 @@ GetSupportPcds ( > UINT8 *SupportBitMask; > > BitMaskSize = PcdGetSize (PcdCpuFeaturesSupport); > - SupportBitMask = AllocateZeroPool (BitMaskSize); > + SupportBitMask = AllocateCopyPool (BitMaskSize, (UINT8 *) > PcdGetPtr (PcdCpuFeaturesSupport)); > ASSERT (SupportBitMask != NULL); > - SupportBitMask =(UINT8 *) PcdGetPtr (PcdCpuFeaturesSupport); > > return SupportBitMask; > } > @@ -85,9 +84,8 @@ GetConfigurationPcds ( > UINT8 *SupportBitMask; > > BitMaskSize = PcdGetSize (PcdCpuFeaturesUserConfiguration); > - SupportBitMask = AllocateZeroPool (BitMaskSize); > + SupportBitMask = AllocateCopyPool (BitMaskSize, (UINT8 *) > PcdGetPtr (PcdCpuFeaturesUserConfiguration)); > ASSERT (SupportBitMask != NULL); > - SupportBitMask = (UINT8 *) PcdGetPtr > (PcdCpuFeaturesUserConfiguration); > > return SupportBitMask; > } > -- > 2.7.0.windows.1 > > _______________________________________________ > edk2-devel mailing list > 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
© 2016 - 2024 Red Hat, Inc.