mirror of https://github.com/acidanthera/audk.git
add assertion to ensure HwErr type variable range is less than or equal to VariableStore range.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9199 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
e77d8dd3ce
commit
48cd992ac7
|
@ -272,10 +272,11 @@
|
|||
# In IA64 platforms, this value should be larger than 128KB.
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x8000|UINT32|0x30000004
|
||||
|
||||
## The size of reserved HwErr variable space. This space is located at NV variable range.
|
||||
# HwErr type variable is stored with common non-volatile variables in NV region.
|
||||
## The size of reserved HwErr variable space. Note that this value must be less than or equal to PcdFlashNvStorageVariableSize
|
||||
# In EdkII implementation, HwErr type variable is stored with common non-volatile variables in the same NV region.
|
||||
# so the platform integrator should ensure this value is less than or equal to PcdFlashNvStorageVariableSize.
|
||||
# this value is used to guarantee the space of HwErr type variable and not populated by common variable.
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x8000|UINT32|0x30000006
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x0000|UINT32|0x30000006
|
||||
|
||||
## The size of volatile buffer. This buffer is used to store VOLATILE attribute variable.
|
||||
gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x10000|UINT32|0x30000005
|
||||
|
|
|
@ -1313,6 +1313,14 @@ InitializeVariableStore (
|
|||
{
|
||||
VARIABLE_STORE_HEADER *VariableStore;
|
||||
|
||||
//
|
||||
// Note that in EdkII variable driver implementation, Hardware Error Record type variable
|
||||
// is stored with common variable in the same NV region. So the platform integrator should
|
||||
// ensure that the value of PcdHwErrStorageSize is less than or equal to the value of
|
||||
// PcdFlashNvStorageVariableSize.
|
||||
//
|
||||
ASSERT (FixedPcdGet32(PcdHwErrStorageSize) <= FixedPcdGet32(PcdFlashNvStorageVariableSize));
|
||||
|
||||
//
|
||||
// Allocate memory for volatile variable store
|
||||
//
|
||||
|
|
|
@ -2246,6 +2246,14 @@ VariableCommonInitialize (
|
|||
|
||||
EfiInitializeLock(&mVariableModuleGlobal->VariableGlobal.VariableServicesLock, TPL_NOTIFY);
|
||||
|
||||
//
|
||||
// Note that in EdkII variable driver implementation, Hardware Error Record type variable
|
||||
// is stored with common variable in the same NV region. So the platform integrator should
|
||||
// ensure that the value of PcdHwErrStorageSize is less than or equal to the value of
|
||||
// PcdFlashNvStorageVariableSize.
|
||||
//
|
||||
ASSERT (FixedPcdGet32(PcdHwErrStorageSize) <= FixedPcdGet32(PcdFlashNvStorageVariableSize));
|
||||
|
||||
//
|
||||
// Allocate memory for volatile variable store, note that there is a scratch space to store scratch data.
|
||||
//
|
||||
|
|
Loading…
Reference in New Issue