audk/ArmPkg/Library
Heyi Guo 8483681426 ArmPkg/Mmu: Fix potential page table memory leak
During page entry attribute update, if there are table entries
between starting BlockEntry and LastBlockEntry, table entries will be
set as block entries and the allocated memory of the tables will be
leaked.

So instead, we break the inner loop when we find a table entry and run
outer loop again to step into the table by the same logic.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Heyi Guo <heyi.guo@linaro.org>
Cc: Leif Lindholm <leif.lindholm@linaro.org>

[ardb: move termination condition check inside the loop]
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18425 6f19259b-4bc3-4df7-8a09-765794883524
2015-09-09 13:37:50 +00:00
..
ArmArchTimerLib ArmPkg: ArmArchTimerLib: conditionally rebase to actual timer frequency 2015-02-02 12:01:48 +00:00
ArmCacheMaintenanceLib ArmPkg: remove cache maintenance by VA operation range size threshold 2015-04-14 11:54:40 +00:00
ArmDisassemblerLib ArmPkg/ArmDisassemblerLib: ARMThumb and AArch64 fixes 2014-09-09 15:57:18 +00:00
ArmDmaLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
ArmGenericTimerPhyCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using physical timer 2014-09-09 16:06:10 +00:00
ArmGenericTimerVirtCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using virtual timer 2014-09-09 16:07:43 +00:00
ArmGicArchLib ArmPkg: cache detected revision in ArmGicArchLib 2015-07-28 20:45:10 +00:00
ArmGicArchSecLib ArmPkg: copy ArmGicArchLib to ArmGicArchSecLib 2015-07-28 20:44:58 +00:00
ArmHvcLib ArmPkg: Ensured the stack is always quad-word aligned 2014-11-11 00:51:11 +00:00
ArmLib ArmPkg/Mmu: Fix potential page table memory leak 2015-09-09 13:37:50 +00:00
ArmPsciResetSystemLib Renamed ArmPlatformPkg/ArmVirtualizationPkg into ArmVirtPkg 2015-05-29 13:50:43 +00:00
ArmSmcLib ArmPkg: Ensured the stack is always quad-word aligned 2014-11-11 00:51:11 +00:00
ArmSmcLibNull ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
BaseMemoryLibStm ArmPkg/BaseMemoryLib(Sym|Vstm): Do not post increment returned pointer 2015-04-02 13:51:28 +00:00
BaseMemoryLibVstm ArmPkg/BaseMemoryLib(Sym|Vstm): Do not post increment returned pointer 2015-04-02 13:51:28 +00:00
BdsLib ArmPkg/BdsLib: Remove Linux loader from BdsLib 2015-07-14 14:35:20 +00:00
CompilerIntrinsicsLib ArmPkg/CompilerIntrinsicesLib: Fixed memmove() and memset() 2014-11-11 00:52:11 +00:00
DebugAgentSymbolsBaseLib ArmPlatformPkg: Increase more ARM address Pcd entries to 64-bit. 2014-11-11 00:43:03 +00:00
DebugPeCoffExtraActionLib ArmPkg: DebugPeCoffExtraActionLib: debugger commands are not errors 2015-03-02 16:19:26 +00:00
DebugUncachedMemoryAllocationLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
DefaultExceptionHandlerLib ARM Packages: Replace tabs by spaces for indentation 2014-08-26 10:14:17 +00:00
PeiServicesTablePointerLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
RvdPeCoffExtraActionLib ArmPkg/Semihostlib: Rename semi-hosting open option 2014-10-27 10:37:20 +00:00
SemiHostingDebugLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemiHostingSerialPortLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemihostLib ArmPkg/SemihostLib: Add library functions 2014-10-27 10:38:18 +00:00
UncachedMemoryAllocationLib ArmPkg: Bug fix for UncachedMemoryAllocationLib 2015-09-02 16:29:31 +00:00