diff options
author | Jakub Kicinski <kuba@kernel.org> | 2022-10-24 13:44:11 -0700 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-10-24 13:44:11 -0700 |
commit | 96917bb3a377e1ed103fd5c420a95e5fb25ca104 (patch) | |
tree | 59e0ef14e8707efba95d2f795742ba69a03bc8d0 /arch/arm64/kvm/mmu.c | |
parent | 86d6f77a3cce1189ab7c31e52e4d47ca58e7a601 (diff) | |
parent | 337a0a0b63f1c30195733eaacf39e4310a592a68 (diff) | |
download | lwn-96917bb3a377e1ed103fd5c420a95e5fb25ca104.tar.gz lwn-96917bb3a377e1ed103fd5c420a95e5fb25ca104.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
include/linux/net.h
a5ef058dc4d9 ("net: introduce and use custom sockopt socket flag")
e993ffe3da4b ("net: flag sockets supporting msghdr originated zerocopy")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'arch/arm64/kvm/mmu.c')
-rw-r--r-- | arch/arm64/kvm/mmu.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c index 34c5feed9dc1..60ee3d9f01f8 100644 --- a/arch/arm64/kvm/mmu.c +++ b/arch/arm64/kvm/mmu.c @@ -31,6 +31,13 @@ static phys_addr_t hyp_idmap_vector; static unsigned long io_map_base; +static phys_addr_t stage2_range_addr_end(phys_addr_t addr, phys_addr_t end) +{ + phys_addr_t size = kvm_granule_size(KVM_PGTABLE_MIN_BLOCK_LEVEL); + phys_addr_t boundary = ALIGN_DOWN(addr + size, size); + + return (boundary - 1 < end - 1) ? boundary : end; +} /* * Release kvm_mmu_lock periodically if the memory region is large. Otherwise, @@ -52,7 +59,7 @@ static int stage2_apply_range(struct kvm *kvm, phys_addr_t addr, if (!pgt) return -EINVAL; - next = stage2_pgd_addr_end(kvm, addr, end); + next = stage2_range_addr_end(addr, end); ret = fn(pgt, addr, next - addr); if (ret) break; |