]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
arm/arm64: KVM: Fix and refactor unmap_range
authorChristoffer Dall <christoffer.dall@linaro.org>
Fri, 9 May 2014 21:31:31 +0000 (23:31 +0200)
committerJiri Slaby <jslaby@suse.cz>
Thu, 30 Apr 2015 09:15:07 +0000 (11:15 +0200)
commit9586ed38bdd7f4ab157ffd5abc2d396b966eef78
treeac827c72c491be11f5cf87b7acd40e4eab259086
parent4244260371d136600ba026fcba0da82d9386d352
arm/arm64: KVM: Fix and refactor unmap_range

commit 4f853a714bf16338ff5261128e6c7ae2569e9505 upstream.

unmap_range() was utterly broken, to quote Marc, and broke in all sorts
of situations.  It was also quite complicated to follow and didn't
follow the usual scheme of having a separate iterating function for each
level of page tables.

Address this by refactoring the code and introduce a pgd_clear()
function.

Reviewed-by: Jungseok Lee <jays.lee@samsung.com>
Reviewed-by: Mario Smarduch <m.smarduch@samsung.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Shannon Zhao <shannon.zhao@linaro.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
arch/arm/include/asm/kvm_mmu.h
arch/arm/kvm/mmu.c
arch/arm64/include/asm/kvm_mmu.h