audk/MdeModulePkg
Star Zeng 3e02ebb2bb MdeModulePkg: Variable drivers robustly handle crashes during Reclaim().
PEI variable implementation checks only the variable header signature for validity. This does not seem robust if system crash occurred during previous Reclaim() operation. If the crash occurred while FTW was rewriting the variable FV, the signature could be valid even though the rest of the FV isn't valid.
Solution: Add a FaultTolerantWritePei driver to check and provide the FTW last write status, then PEI variable and early phase(before FTW protocol ready) of DXE variable can check the status and determine if all or partial variable data has been backed up in spare block, and then use the backed up data.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14454 6f19259b-4bc3-4df7-8a09-765794883524
2013-07-03 09:08:40 +00:00
..
Application Update code to pass packaging tool. 2011-05-30 09:56:57 +00:00
Bus MdeModulePkg/Usb: Boost the r/w performance by reducing stall time on polling cmd execution status 2013-06-24 03:03:55 +00:00
Core Guarantee that free memory in the 4K page starting at address 0 is always cleared to 0. The algorithm is to clear page zero if it is registered with the DXE Core with type EfiConventionalMemory, and to also clear page zero if it is freed using the UEFI Boot Service FreePages(). This patch improves OS compatibility for OSes that may evaluate page 0 for legacy data structures. Before this patch, free memory may contain random values which induces random boot failures for some OSes. This patch may also help find NULL pointer bugs sooner because all of the fields in a data structure dereferenced through NULL will also be NULL now. 2013-03-22 21:20:07 +00:00
Include MdeModulePkg: Variable drivers robustly handle crashes during Reclaim(). 2013-07-03 09:08:40 +00:00
Library Update HiiDataBase and UefiHiiLib to support Name/Value varstore. 2013-07-02 07:53:35 +00:00
Logo Update the copyright notice format 2010-04-24 09:49:11 +00:00
Universal MdeModulePkg: Variable drivers robustly handle crashes during Reclaim(). 2013-07-03 09:08:40 +00:00
Contributions.txt EDK II Packages: Add Contributions.txt and License.txt files 2012-04-11 23:19:46 +00:00
License.txt Update copyright format 2012-04-24 06:49:39 +00:00
MdeModulePkg.dec MdeModulePkg: Variable drivers robustly handle crashes during Reclaim(). 2013-07-03 09:08:40 +00:00
MdeModulePkg.dsc MdeModulePkg: Variable drivers robustly handle crashes during Reclaim(). 2013-07-03 09:08:40 +00:00