]> git.proxmox.com Git - mirror_edk2.git/commit
ArmPkg/ArmMmuLib AARCH64: rewrite page table code
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Sat, 7 Mar 2020 08:38:48 +0000 (09:38 +0100)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Tue, 10 Mar 2020 00:19:30 +0000 (00:19 +0000)
commit191fa79bcee103457724a4ac7cbda8c03bedac6a
tree03f84fa5257e143a8114ffe3b47966985d7edeb2
parenta3e25cc8a1dd3d1ea24ed02f90c44221e015e965
ArmPkg/ArmMmuLib AARCH64: rewrite page table code

Replace the slightly overcomplicated page table management code with
a simplified, recursive implementation that should be far easier to
reason about.

Note that, as a side effect, this extends the per-entry cache invalidation
that we do on page table entries to block and page entries, whereas the
previous change inadvertently only affected the creation of table entries.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Message-Id: <20200307083849.8940-2-ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif@nuviainc.com>
ArmPkg/Library/ArmMmuLib/AArch64/ArmMmuLibCore.c