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
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 12 Aug 2021 10:44:21 -0700
From:   David Matlack <dmatlack@...gle.com>
To:     Paolo Bonzini <pbonzini@...hat.com>
Cc:     LKML <linux-kernel@...r.kernel.org>,
        kvm list <kvm@...r.kernel.org>,
        Isaku Yamahata <isaku.yamahata@...el.com>,
        Sean Christopherson <seanjc@...gle.com>,
        Peter Xu <peterx@...hat.com>
Subject: Re: [PATCH 00/16] KVM: x86: pass arguments on the page fault path via
 struct kvm_page_fault

On Sat, Aug 7, 2021 at 6:49 AM Paolo Bonzini <pbonzini@...hat.com> wrote:
>
> This is a revival of Isaku's patches from
> https://lore.kernel.org/kvm/cover.1618914692.git.isaku.yamahata@intel.com/.
> The current kvm page fault handlers passes around many arguments to the
> functions.  To simplify those arguments and local variables, introduce
> a data structure, struct kvm_page_fault, to hold those arguments and
> variables.  struct kvm_page_fault is allocated on stack on the caller
> of kvm fault handler, kvm_mmu_do_page_fault(), and passed around.

(I was out of office for the past few days so I'm just getting around
to this series now.)

Overall it looks good. Thanks for getting it cleaned up and merged
into kvm/queue. I'll get Ben's memslot series applied on top of this,
do a bit of performance testing, and send it out probably tomorrow or
early next week.

>
> The patches were redone from scratch based on the suggested struct layout
> from the review (https://lore.kernel.org/kvm/YK65V++S2Kt1OLTu@google.com/)
> and the subjects of Isaku's patches, so I kept authorship for myself
> and gave him a "Suggested-by" tag.
>
> The first two steps are unrelated cleanups that come in handy later on.
>
> Paolo
>
> Paolo Bonzini (16):
>   KVM: MMU: pass unadulterated gpa to direct_page_fault
>   KVM: x86: clamp host mapping level to max_level in
>     kvm_mmu_max_mapping_level
>   KVM: MMU: Introduce struct kvm_page_fault
>   KVM: MMU: change mmu->page_fault() arguments to kvm_page_fault
>   KVM: MMU: change direct_page_fault() arguments to kvm_page_fault
>   KVM: MMU: change page_fault_handle_page_track() arguments to
>     kvm_page_fault
>   KVM: MMU: change try_async_pf() arguments to kvm_page_fault
>   KVM: MMU: change handle_abnormal_pfn() arguments to kvm_page_fault
>   KVM: MMU: change __direct_map() arguments to kvm_page_fault
>   KVM: MMU: change FNAME(fetch)() arguments to kvm_page_fault
>   KVM: MMU: change kvm_tdp_mmu_map() arguments to kvm_page_fault
>   KVM: MMU: change tdp_mmu_map_handle_target_level() arguments to
>     kvm_page_fault
>   KVM: MMU: change fast_page_fault() arguments to kvm_page_fault
>   KVM: MMU: change kvm_mmu_hugepage_adjust() arguments to kvm_page_fault
>   KVM: MMU: change disallowed_hugepage_adjust() arguments to
>     kvm_page_fault
>   KVM: MMU: change tracepoints arguments to kvm_page_fault
>
>  arch/x86/include/asm/kvm_host.h |   4 +-
>  arch/x86/kvm/mmu.h              |  81 ++++++++++-
>  arch/x86/kvm/mmu/mmu.c          | 241 ++++++++++++++------------------
>  arch/x86/kvm/mmu/mmu_internal.h |  13 +-
>  arch/x86/kvm/mmu/mmutrace.h     |  18 +--
>  arch/x86/kvm/mmu/paging_tmpl.h  |  96 ++++++-------
>  arch/x86/kvm/mmu/tdp_mmu.c      |  49 +++----
>  arch/x86/kvm/mmu/tdp_mmu.h      |   4 +-
>  8 files changed, 253 insertions(+), 253 deletions(-)
>
> --
> 2.27.0
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ