Acidanthera UEFI Development Kit based on EDK II edk2-stable202311
Go to file
Ard Biesheuvel d32702d2c2 ArmPkg/ArmMmuLib: use a pool allocation for the root table
Currently, we allocate a full page for the root translation table, even
if the configured translation only requires two entries (16 bytes) for
the root level, which happens to be the case for a 40 bit VA. Likewise,
for a 36-bit VA space, the root table only needs 16 entries of 8 bytes
each, adding up to 128 bytes.

So switch to a pool allocation for the root table if we can, but take into
account that the architecture requires it to be naturally aligned to its
size, i.e., a 64 byte table requires 64 byte alignment, whereas pool
allocations in general are only guaranteed to be aligned to 8 bytes.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2016-09-13 13:43:11 +01:00
AppPkg AppPkg/.../Python: Clean up and document how to escape the -# option. 2016-01-06 01:00:19 +00:00
ArmPkg ArmPkg/ArmMmuLib: use a pool allocation for the root table 2016-09-13 13:43:11 +01:00
ArmPlatformPkg ArmPlatformPkg/NorFlashDxe: use strictly aligned CopyMem() 2016-09-09 13:48:49 +01:00
ArmVirtPkg ArmVirtPkg: restrict mapping attributes of normal memory to EFI_MEMORY_WB 2016-09-08 10:35:22 +01:00
BaseTools BaseTools/EfiRom: supply missing machine type lookup strings 2016-09-09 10:36:30 +02:00
BeagleBoardPkg BeagleBoardPkg EmbeddedPkg Omap35xxPkg: move to ArmBaseLib 2016-09-08 09:20:36 +01:00
Conf EDK II: Add .gitignore 2014-10-14 16:08:15 +00:00
CorebootModulePkg CorebootModulePkg/SecCore: Adding NASM files in SecCore module 2016-08-03 17:20:17 -07:00
CorebootPayloadPkg CorebootPayloadPkg/ResetSystemLib: Implement ResetPlatformSpecific 2016-09-02 10:07:15 +08:00
CryptoPkg CryptoPkg: Fix "responsiblity" typos 2016-08-11 15:21:49 +08:00
DuetPkg DuetPkg: Add DxeMpInitLib instance reference 2016-08-19 15:09:26 +08:00
EdkCompatibilityPkg EdkCompatibilityPkg: Fix GCC build failure 2016-08-01 12:44:44 +08:00
EdkShellBinPkg */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
EdkShellPkg */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
EmbeddedPkg BeagleBoardPkg EmbeddedPkg Omap35xxPkg: move to ArmBaseLib 2016-09-08 09:20:36 +01:00
EmulatorPkg BaseTools GCC: use 'gcc' as the linker command for GCC44 and later 2016-08-02 08:40:43 +02:00
FatBinPkg FatBinPkg: Change to 2-clause BSD license 2016-04-22 00:55:21 -07:00
FatPkg FatPkg DSC: Add build option to disable deprecated APIs 2016-08-08 11:00:03 +08:00
IntelFrameworkModulePkg IntelFrameworkModulePkg: Use IsZeroGuid API for zero GUID checking 2016-08-31 11:13:49 +08:00
IntelFrameworkPkg IntelFrameworkPkg DSC: Add build option to disable deprecated APIs 2016-08-08 11:00:04 +08:00
IntelFsp2Pkg IntelFsp2Pkg: Fix typo and comments 2016-08-31 14:27:54 +08:00
IntelFsp2WrapperPkg IntelFsp2WrapperPkg DSC: Add build option to disable deprecated APIs 2016-08-08 11:00:05 +08:00
IntelFspPkg IntelFspPkg DSC: Add build option to disable deprecated APIs 2016-08-08 11:00:06 +08:00
IntelFspWrapperPkg IntelFspWrapperPkg DSC: Add build option to disable deprecated APIs 2016-08-08 11:00:06 +08:00
IntelSiliconPkg IntelSiliconPkg: Rename IGD structures to make it consistent 2016-09-03 06:14:18 +08:00
MdeModulePkg MdeModulePkg/HiiDB: Handle the "&READONLY" tag in <KeywordResp> correctly 2016-09-12 18:26:18 +08:00
MdePkg MdePkg/BaseLib AARCH64: terminate stack frame list on stack switch 2016-09-09 13:46:52 +01:00
NetworkPkg NetworkPkg/DnsDxe: Handle CNAME type responded from the name server 2016-09-07 14:28:17 +08:00
Nt32Pkg Nt32Pkg: Fix VS2010/VS2012 build failure 2016-09-12 13:42:18 +08:00
Omap35xxPkg BeagleBoardPkg EmbeddedPkg Omap35xxPkg: move to ArmBaseLib 2016-09-08 09:20:36 +01:00
OptionRomPkg OptionRomPkg: .dsc fixes for ARM/AARCH64 and USB drivers 2016-09-09 20:41:43 +01:00
OvmfPkg OvmfPkg: Fix typing errors in header files 2016-09-13 14:14:31 +02:00
PcAtChipsetPkg PcAtChipsetPkg: Remove KbcResetDxe 2016-09-02 10:07:17 +08:00
PerformancePkg PerformancePkg DSC: Add build option to disable deprecated APIs 2016-08-08 11:00:09 +08:00
QuarkPlatformPkg QuarkPlatformPkg: Declare PciSegmentLib in platform dsc 2016-09-05 18:15:25 +08:00
QuarkSocPkg QuarkSocPkg/QuarkSocPkg.dsc: Declare PciSegmentLib 2016-09-05 18:15:38 +08:00
SecurityPkg SecurityPkg/SecurityPkg.dsc: Declare PciSegmentLib 2016-09-05 18:15:45 +08:00
ShellBinPkg ShellBinPkg Arm/AArch64 Shell binary update 2016-08-02 12:25:13 +02:00
ShellPkg ShellPkg/UefiHandleParsingLib: fix retval for empty child controller array 2016-09-08 20:43:37 +02:00
SourceLevelDebugPkg UefiCpuPkg/LocalApic.h: Remove duplicated/conflicted definitions 2016-08-17 19:54:41 +08:00
StdLib StdLib/LibC ARM AARCH64: do not redefine compiler intrinsics 2016-08-09 10:10:12 +02:00
StdLibPrivateInternalFiles StdLib: Clarify and improve comments. 2016-01-06 00:31:42 +00:00
UefiCpuPkg UefiCpuPkg/XeonPhiMsr.h: add MSR reference from SDM in comment 2016-09-08 09:18:08 +08:00
UnixPkg UnixPkg: Remove UnixPkg files (It is replaced by EmulatorPkg) 2013-07-29 21:09:55 +00:00
Vlv2DeviceRefCodePkg Vlv2DeviceRefCodePkg/ValleyView2Soc: Remove the unused code 2016-08-03 11:02:19 +08:00
Vlv2TbltDevicePkg Vlv2TbltDevicePkg/dec: Correct wrong default value. 2016-09-07 16:44:41 +08:00
.gitignore EDK II: Add .gitignore 2014-10-14 16:08:15 +00:00
BuildNotes2.txt BaseTools: Updated BuildNotes URLs 2016-03-25 09:46:44 +08:00
Edk2Setup.bat BaseTools: Update Edk2Setup.bat to support multiple workspaces 2015-10-08 09:29:36 +00:00
Maintainers.txt Maintainers.txt: Add Giri as IntelFsp2*Pkg, IntelSiliconPkg maintainer 2016-09-08 23:36:45 +08:00
edksetup.bat Update edksetup.bat to check NASM system environment variable 2016-07-26 10:16:48 +08:00
edksetup.sh BaseTools: Update edksetup.sh to support multiple workspaces 2015-10-08 09:29:56 +00:00