audk/MdeModulePkg/Universal/Variable
Star Zeng 313491310c MdeModulePkg Variable: Handle variable Attributes mismatch case
between variable HOB and NV storage.

Variable HOB may be built by a system that supports and loads variable
default, the variables in the HOB will be flush to NV storage after
variable write search ready.
After that, if the variable's Attributes is changed by someone and
system reboots and tries to load default again, the variable Attributes
mismatch case between variable HOB and NV storage will appear.

Original code did not handle the case correctly, that may eventually
cause NV storage contains two valid same variables that will lead to
system hang if GetNextVariableName() called.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18225 6f19259b-4bc3-4df7-8a09-765794883524
2015-08-17 02:30:43 +00:00
..
EmuRuntimeDxe MdeModulePkg/Universal/Variable: Use safe string functions to refine code. 2015-07-01 08:34:22 +00:00
Pei MdeModulePkg VariablePei: Merge from VariablePei in SecurityPkg 2015-07-01 03:03:26 +00:00
RuntimeDxe MdeModulePkg Variable: Handle variable Attributes mismatch case 2015-08-17 02:30:43 +00:00