summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorSean Christopherson <seanjc@google.com>2024-01-09 17:15:32 -0800
committerSean Christopherson <seanjc@google.com>2024-02-06 11:04:11 -0800
commit8284765f03b7a0b18968cefeb5e78aca647b8f8b (patch)
tree2dacd08f38baf749f7a1ca25f490193f88c0008c /include
parent422eeb543ac99ea24b80c19492c3359696500a47 (diff)
downloadlinux-stable-8284765f03b7a0b18968cefeb5e78aca647b8f8b.tar.gz
linux-stable-8284765f03b7a0b18968cefeb5e78aca647b8f8b.tar.bz2
linux-stable-8284765f03b7a0b18968cefeb5e78aca647b8f8b.zip
KVM: Get reference to VM's address space in the async #PF worker
Get a reference to the target VM's address space in async_pf_execute() instead of gifting a reference from kvm_setup_async_pf(). Keeping the address space alive just to service an async #PF is counter-productive, i.e. if the process is exiting and all vCPUs are dead, then NOT doing get_user_pages_remote() and freeing the address space asap is desirable. Handling the mm reference entirely within async_pf_execute() also simplifies the async #PF flows as a whole, e.g. it's not immediately obvious when the worker task vs. the vCPU task is responsible for putting the gifted mm reference. Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com> Reviewed-by: Xu Yilun <yilun.xu@intel.com> Link: https://lore.kernel.org/r/20240110011533.503302-4-seanjc@google.com Signed-off-by: Sean Christopherson <seanjc@google.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/kvm_host.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 7e7fd25b09b3..bbfefd7e612f 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -238,7 +238,6 @@ struct kvm_async_pf {
struct list_head link;
struct list_head queue;
struct kvm_vcpu *vcpu;
- struct mm_struct *mm;
gpa_t cr2_or_gpa;
unsigned long addr;
struct kvm_arch_async_pf arch;