lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 21 Apr 2022 08:12:37 +0300 From: Maxim Levitsky <mlevitsk@...hat.com> To: kvm@...r.kernel.org Cc: Rodrigo Vivi <rodrigo.vivi@...el.com>, Paolo Bonzini <pbonzini@...hat.com>, intel-gfx@...ts.freedesktop.org, Joonas Lahtinen <joonas.lahtinen@...ux.intel.com>, Jani Nikula <jani.nikula@...ux.intel.com>, Thomas Gleixner <tglx@...utronix.de>, linux-kernel@...r.kernel.org, Wanpeng Li <wanpengli@...cent.com>, Jim Mattson <jmattson@...gle.com>, Tvrtko Ursulin <tvrtko.ursulin@...ux.intel.com>, "H. Peter Anvin" <hpa@...or.com>, Vitaly Kuznetsov <vkuznets@...hat.com>, Zhi Wang <zhi.a.wang@...el.com>, Daniel Vetter <daniel@...ll.ch>, intel-gvt-dev@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org, x86@...nel.org, David Airlie <airlied@...ux.ie>, Sean Christopherson <seanjc@...gle.com>, Ingo Molnar <mingo@...hat.com>, Joerg Roedel <joro@...tes.org>, Dave Hansen <dave.hansen@...ux.intel.com>, Borislav Petkov <bp@...en8.de>, Zhenyu Wang <zhenyuw@...ux.intel.com>, Maxim Levitsky <mlevitsk@...hat.com> Subject: [RFC PATCH v2 03/10] KVM: x86: mmu: add gfn_in_memslot helper This is a tiny refactoring, and can be useful to check if a GPA/GFN is within a memslot a bit more cleanly. Signed-off-by: Maxim Levitsky <mlevitsk@...hat.com> --- include/linux/kvm_host.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h index 252ee4a61b58b..12e261559070b 100644 --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h @@ -1580,6 +1580,13 @@ int kvm_request_irq_source_id(struct kvm *kvm); void kvm_free_irq_source_id(struct kvm *kvm, int irq_source_id); bool kvm_arch_irqfd_allowed(struct kvm *kvm, struct kvm_irqfd *args); + +static inline bool gfn_in_memslot(struct kvm_memory_slot *slot, gfn_t gfn) +{ + return (gfn >= slot->base_gfn && gfn < slot->base_gfn + slot->npages); +} + + /* * Returns a pointer to the memslot if it contains gfn. * Otherwise returns NULL. @@ -1590,12 +1597,13 @@ try_get_memslot(struct kvm_memory_slot *slot, gfn_t gfn) if (!slot) return NULL; - if (gfn >= slot->base_gfn && gfn < slot->base_gfn + slot->npages) + if (gfn_in_memslot(slot, gfn)) return slot; else return NULL; } + /* * Returns a pointer to the memslot that contains gfn. Otherwise returns NULL. * -- 2.26.3
Powered by blists - more mailing lists