audk/ArmPkg/Library
Garrett Kirkendall 7017c2699d ArmPkg/ArmLib: Fix AARCH64 page table entry filling overrun
Update the LastBlockEntry return value when allocating a new page table block
and the parent page table entry is not valid.  Discovered when producing page
table entries for a memory region that spans multiple page table entries of a
parent page table block.  Not very memory space efficient because the rest of
the code could calculate a required page level that is deeper than some blocks
of the memory region might require.  Case that found the problem:
MemoryRegion->VirtualBase = 0
MemoryRegion->Length = 0x7F000000
This fix will create an un-needed level of page table for address
range 0 -> 0x40000000

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Garrett Kirkendall <garrett.kirkendall@amd.com>
Reviewed-By: Olivier Martin <olivier.martin@arm.com>


git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15177 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-24 13:10:54 +00:00
..
ArmArchTimerLib ArmPkg: Move definition of ArmIsArchTimerImplemented / ArmReadIdPfrN to ArmLib 2013-11-28 21:37:36 +00:00
ArmCacheMaintenanceLib ARM Packages: Fixed line endings 2013-01-25 11:28:06 +00:00
ArmDisassemblerLib ArmPkg/ArmDisassemblerLib: Fixed logical/bitwise operator confusion 2013-12-10 16:38:17 +00:00
ArmDmaLib ArmPkg/ArmDmaLib: Fixed the calculation of the Base Address of the Buffer 2013-09-02 13:13:29 +00:00
ArmLib ArmPkg/ArmLib: Fix AARCH64 page table entry filling overrun 2014-01-24 13:10:54 +00:00
ArmSmcLib ArmPkg: Added Aarch64 support 2013-07-18 18:07:46 +00:00
ArmSmcLibNull ArmPkg: Added Aarch64 support 2013-07-18 18:07:46 +00:00
BaseMemoryLibStm ArmPkg: Added Aarch64 support 2013-07-18 18:07:46 +00:00
BaseMemoryLibVstm ARM Packages: Fixed line endings 2013-01-25 11:28:06 +00:00
BasePeCoffLib ArmPkg: Update the AArch64 Image File Machine Type to match the PE/COFF spec 2013-07-24 15:31:19 +00:00
BdsLib ArmPkg/ArmPkg.dec: Redefined PcdSystemMemory(Base|Size) as UINT64 2014-01-10 11:27:31 +00:00
CompilerIntrinsicsLib ArmPkg/CompilerIntrinsicsLib: Make __aeabi_memcpy the same as memcpy 2014-01-15 12:24:31 +00:00
DebugAgentSymbolsBaseLib ArmPkg: Added Aarch64 support 2013-07-18 18:07:46 +00:00
DebugPeCoffExtraActionLib ArmPkg/DebugPeCoffExtraActionLib: Fixed the printing of the location of the EFI modules 2013-11-28 21:39:46 +00:00
DebugUncachedMemoryAllocationLib ARM Packages: Fixed line endings 2013-01-25 11:28:06 +00:00
DefaultExceptionHandlerLib ArmPkg: Added Aarch64 support 2013-07-18 18:07:46 +00:00
PeiServicesTablePointerLib ArmPkg: Implement PeiServicesTablePointerLib using TPIDRURW register 2011-06-03 09:43:12 +00:00
RvdPeCoffExtraActionLib ARM Packages: Fixed line endings 2013-01-25 11:28:06 +00:00
SemiHostingDebugLib Update the copyright notice format 2010-04-29 12:15:47 +00:00
SemiHostingSerialPortLib ArmPkg/SemiHostingSerialPortLib: Return number of written bytes in SerialPortWrite() 2011-07-19 15:01:27 +00:00
SemihostLib ArmPkg: Added Aarch64 support 2013-07-18 18:07:46 +00:00
UncachedMemoryAllocationLib ArmPkg/UncachedMemoryAllocationLib: Removed unused header (Protocol/Cpu.h) 2013-07-16 00:07:24 +00:00