[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZxYVnsW9WF1Wp8mx@yzhao56-desk.sh.intel.com>
Date: Mon, 21 Oct 2024 16:49:34 +0800
From: Yan Zhao <yan.y.zhao@...el.com>
To: Sean Christopherson <seanjc@...gle.com>
CC: Paolo Bonzini <pbonzini@...hat.com>, Marc Zyngier <maz@...nel.org>,
"Oliver Upton" <oliver.upton@...ux.dev>, Tianrui Zhao
<zhaotianrui@...ngson.cn>, "Bibo Mao" <maobibo@...ngson.cn>, Huacai Chen
<chenhuacai@...nel.org>, "Michael Ellerman" <mpe@...erman.id.au>, Anup Patel
<anup@...infault.org>, "Paul Walmsley" <paul.walmsley@...ive.com>, Palmer
Dabbelt <palmer@...belt.com>, Albert Ou <aou@...s.berkeley.edu>, Christian
Borntraeger <borntraeger@...ux.ibm.com>, Janosch Frank
<frankja@...ux.ibm.com>, "Claudio Imbrenda" <imbrenda@...ux.ibm.com>,
<kvm@...r.kernel.org>, <linux-arm-kernel@...ts.infradead.org>,
<kvmarm@...ts.linux.dev>, <loongarch@...ts.linux.dev>,
<linux-mips@...r.kernel.org>, <linuxppc-dev@...ts.ozlabs.org>,
<kvm-riscv@...ts.infradead.org>, <linux-riscv@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, Alex Bennée
<alex.bennee@...aro.org>, David Matlack <dmatlack@...gle.com>, David Stevens
<stevensd@...omium.org>, Andrew Jones <ajones@...tanamicro.com>
Subject: Re: [PATCH v13 19/85] KVM: Introduce kvm_follow_pfn() to eventually
replace "gfn_to_pfn" APIs
On Thu, Oct 10, 2024 at 11:23:21AM -0700, Sean Christopherson wrote:
> --- a/virt/kvm/pfncache.c
> +++ b/virt/kvm/pfncache.c
> @@ -159,6 +159,12 @@ static kvm_pfn_t hva_to_pfn_retry(struct gfn_to_pfn_cache *gpc)
> kvm_pfn_t new_pfn = KVM_PFN_ERR_FAULT;
> void *new_khva = NULL;
> unsigned long mmu_seq;
> + struct kvm_follow_pfn kfp = {
> + .slot = gpc->memslot,
> + .gfn = gpa_to_gfn(gpc->gpa),
> + .flags = FOLL_WRITE,
> + .hva = gpc->uhva,
> + };
Is .map_writable uninitialized?
>
> lockdep_assert_held(&gpc->refresh_lock);
>
> @@ -197,8 +203,7 @@ static kvm_pfn_t hva_to_pfn_retry(struct gfn_to_pfn_cache *gpc)
> cond_resched();
> }
>
> - /* We always request a writable mapping */
> - new_pfn = hva_to_pfn(gpc->uhva, false, false, true, NULL);
> + new_pfn = hva_to_pfn(&kfp);
> if (is_error_noslot_pfn(new_pfn))
> goto out_error;
>
> --
> 2.47.0.rc1.288.g06298d1525-goog
>
Powered by blists - more mailing lists