All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Ackerley Tng" <ackerleytng@google.com>,
	"Alexey Kardashevskiy" <aik@amd.com>,
	"Aneesh Kumar K.V" <aneesh.kumar@kernel.org>,
	"Christian Brauner" <brauner@kernel.org>,
	"David Hildenbrand" <david@kernel.org>,
	"David Woodhouse" <dwmw2@infradead.org>,
	"Fred Griffoul" <fgriffo@amazon.co.uk>,
	"Jacob Pan" <jacob.pan@linux.microsoft.com>,
	"Jianxiong Gao" <jxgao@google.com>,
	"John Starks" <John.Starks@microsoft.com>,
	"Michael Roth" <michael.roth@amd.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Samiullah Khawaja" <skhawaja@google.com>,
	"Sean Christopherson" <seanjc@google.com>,
	"Suzuki K Poulose" <suzuki.poulose@arm.com>,
	"Tarun Sahu" <tarunsahu@google.com>,
	"Vishal Annapurve" <vannapurve@google.com>,
	"Xu Yilun" <yilun.xu@linux.intel.com>,
	"Fuad Tabba" <fuad.tabba@linux.dev>
Cc: kvm@vger.kernel.org, linux-mm@kvack.org
Subject: Re: [PATCH RFC v3 28/88] KVM: guest_memfd: Support reporting PFN attributes
Date: Sun, 08 Nov 2026 00:44:03 +0000	[thread overview]
Message-ID: <sashiko-outbox-203439@kernel.org> (raw)
In-Reply-To: <20261106-gmem-alternative-providers-v3-28-8484dde66a7e@google.com>

Thank you for your contribution! Sashiko AI review found 4 potential
issues to consider:
- [Medium] KVM: arm64: gmem_abort() exits on L2 write when L1 S2 is
  read-only
- [Low] KVM: arm64: nv: unresolved TODO comment in kvm_translate_vncr()
- [Low] KVM: SVM: shadowed read-only PFN check in sev_handle_rmp_fault()
- [Low] KVM: arm64: nv: unaligned GPA passed with PAGE_SIZE in
  kvm_translate_vncr()
--

commit 0c51d556213ce4b6cb7adb6d1befd0cf237a2240
Author: Fred Griffoul <fgriffo@amazon.co.uk>

KVM: guest_memfd: Support reporting PFN attributes

This commit adds a pfn_attrs output parameter to kvm_gmem_get_pfn() and
__kvm_gmem_get_pfn(), defines GUEST_MEMFD_PFN_ATTRS_READONLY, and
handles read-only guest_memfd frames across x86 and arm64 fault paths.

> diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c
> index 705f6d84770e9..8f0217185973c 100644
> --- a/arch/arm64/kvm/mmu.c
> +++ b/arch/arm64/kvm/mmu.c
[ ... ]
> @@ -1773,18 +1775,21 @@ static int gmem_abort(const struct kvm_s2_fault_desc *s2fd,
>  	/* Pairs with the smp_wmb() in kvm_mmu_invalidate_end(). */
>  	smp_rmb();
>  
> -	ret = kvm_gmem_get_pfn(kvm, s2fd->memslot, canonical_gfn, &s2vi.pfn, NULL);
> -	if (ret) {
> +	ret = kvm_gmem_get_pfn(kvm, s2fd->memslot, canonical_gfn, &s2vi.pfn, NULL,
> +			       &pfn_attrs);
> +	writable = !(s2fd->memslot->flags & KVM_MEM_READONLY) &&
> +		   !(pfn_attrs & GUEST_MEMFD_PFN_ATTRS_READONLY);
> +	if (ret || (write_fault && !writable)) {
>  		/* If result is non-NULL this is a synthetic fault. */
>  		if (!result)
>  			kvm_prepare_memory_fault_exit(s2fd->vcpu, gfn_to_gpa(canonical_gfn),
>  						      s2vi.vma_pagesize, write_fault, exec_fault,
>  						      false);
>  		kfree(mapping);
> -		return ret;
> +		return ret ?: -EFAULT;
>  	}

[Severity: Medium]
When L2 writes to an unmapped shadow Stage-2 IPA that L1 mapped
read-only in its own Stage-2 page tables, kvm_s2_handle_perm_fault()
returns 0 on the initial translation fault so that gmem_abort() installs
a read-only shadow Stage-2 PTE and the retried write traps as a
permission fault to be forwarded to L1:

arch/arm64/kvm/nested.c:kvm_s2_handle_perm_fault() {
	if (!kvm_vcpu_trap_is_permission_fault(vcpu))
		return 0;
    ...
}

Does checking (write_fault && !writable) without checking whether
s2fd->nested permits writes cause gmem_abort() to exit to L0 userspace
with KVM_EXIT_MEMORY_FAULT instead of installing the read-only shadow
Stage-2 mapping when the backing PFN has GUEST_MEMFD_PFN_ATTRS_READONLY
set?  Checking (!s2fd->nested || kvm_s2_trans_writable(s2fd->nested))
here would let the read-only shadow mapping be installed so the Stage-2
permission fault is delivered to L1.

[ ... ]

> diff --git a/arch/arm64/kvm/nested.c b/arch/arm64/kvm/nested.c
> index 4d83281a7a28b..4519e92d89d66 100644
> --- a/arch/arm64/kvm/nested.c
> +++ b/arch/arm64/kvm/nested.c
> @@ -1615,14 +1615,24 @@ static int kvm_translate_vncr(struct kvm_vcpu *vcpu, bool *is_gmem)
>  			return -EFAULT;
>  		}
>  	} else {
> -		ret = kvm_gmem_get_pfn(vcpu->kvm, memslot, gfn, &pfn, NULL);
> +		u64 pfn_attrs;
> +
> +		ret = kvm_gmem_get_pfn(vcpu->kvm, memslot, gfn, &pfn, NULL,
> +				       &pfn_attrs);
>  		if (ret) {
>  			kvm_prepare_memory_fault_exit(vcpu, vt->wr.pa, PAGE_SIZE,
>  					      write_fault, false, false);
>  			return ret;
>  		}
>  
> -		writable = !(memslot->flags & KVM_MEM_READONLY);
> +		writable = !(memslot->flags & KVM_MEM_READONLY) &&
> +			   !(pfn_attrs & GUEST_MEMFD_PFN_ATTRS_READONLY);
> +		/* TODO: Explain why vt->wr.pw needs to be checked. */

[Severity: Low]
This isn't a bug, but this placeholder TODO comment was left in place
instead of explaining that !vt->wr.pw must return 0 so
kvm_handle_vncr_abort() injects a stage-1 permission fault into the
guest via handle_vncr_perm() rather than exiting to host userspace.

> +		if (write_fault && vt->wr.pw && !writable) {
> +			kvm_prepare_memory_fault_exit(vcpu, vt->wr.pa, PAGE_SIZE,
> +						      true, false, false);
> +			return -EFAULT;
> +		}
>  	}

[Severity: Low]
VNCR_EL2 and vt->wr.pa are 4KB-aligned regardless of the host page size.
On a 16KB or 64KB page size host, does passing vt->wr.pa with PAGE_SIZE
to kvm_prepare_memory_fault_exit() report an unaligned GPA range
[vt->wr.pa, vt->wr.pa + PAGE_SIZE) that straddles into gfn + 1 instead
of gfn_to_gpa(gfn)?

[ ... ]

> diff --git a/arch/x86/kvm/svm/sev.c b/arch/x86/kvm/svm/sev.c
> index 6427db390b1cd..5e37ea4bc7937 100644
> --- a/arch/x86/kvm/svm/sev.c
> +++ b/arch/x86/kvm/svm/sev.c
[ ... ]
> @@ -5092,13 +5097,19 @@ void sev_handle_rmp_fault(struct kvm_vcpu *vcpu, gpa_t gpa, u64 error_code)
>  	mmu_seq = kvm->mmu_invalidate_seq;
>  	smp_rmb();
>  
> -	ret = kvm_gmem_get_pfn(kvm, slot, gfn, &pfn, &order);
> +	ret = kvm_gmem_get_pfn(kvm, slot, gfn, &pfn, &order, &pfn_attrs);
>  	if (ret) {
>  		pr_warn_ratelimited("SEV: Unexpected RMP fault, no backing page for private GPA 0x%llx\n",
>  				    gpa);
>  		return;
>  	}
>  
> +	if (pfn_attrs & GUEST_MEMFD_PFN_ATTRS_READONLY) {
> +		pr_warn_ratelimited("SEV: Unexpected RMP fault, read-only backing page for GPA 0x%llx\n",
> +				    gpa);
> +		return;
> +	}

[Severity: Low]
Can this GUEST_MEMFD_PFN_ATTRS_READONLY check be reached for a private
GPA?  In kvm_gmem_get_pfn(), a private page with
GUEST_MEMFD_PFN_ATTRS_READONLY set already fails with -EFAULT, so the
if (ret) branch above catches it first and logs "no backing page for
private GPA" instead of "read-only backing page".

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261106-gmem-alternative-providers-v3-0-8484dde66a7e@google.com?part=28

  reply	other threads:[~2026-11-08  0:44 UTC|newest]

Thread overview: 216+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-07  0:36 [PATCH RFC v3 00/88] guest_memfd alternative providers Ackerley Tng
2026-11-07  0:36 ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 01/88] KVM: guest_memfd: Split folio allocation and insertion in kvm_gmem_get_folio Ackerley Tng via B4 Relay
2026-11-07  0:36   ` Ackerley Tng
2026-11-07  0:36 ` [PATCH RFC v3 02/88] KVM: guest_memfd: Route folio allocation through native provider operations Ackerley Tng via B4 Relay
2026-11-07  0:36   ` Ackerley Tng
2026-11-07  0:36 ` [PATCH RFC v3 03/88] mm: shmem: Implement guest_memfd provider operations for tmpfs Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 04/88] KVM: guest_memfd: Support provider folio invalidation Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 05/88] KVM: guest_memfd: Support using resource provider Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 06/88] KVM: selftests: Add helper to create guest_memfd with a resource file Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 07/88] KVM: selftests: Test negative validation of resource_fd argument Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 08/88] KVM: selftests: Test rejection of unsupported filesystem for resource_fd Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 09/88] KVM: selftests: Test rejection of memfd " Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 10/88] KVM: selftests: Test rejection of swap tmpfs mounts Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 11/88] KVM: selftests: Test rejection of hugepage " Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 12/88] KVM: selftests: Test rejection of regular file in tmpfs mount Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 13/88] KVM: selftests: Test guest_memfd with tmpfs resource pool Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 14/88] KVM: selftests: Test guest_memfd resource pool sharing across instances Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 15/88] KVM: selftests: Test memory allocation against shared tmpfs resource pool Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 16/88] KVM: selftests: Test that shared tmpfs resource pool size limit is respected Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 17/88] KVM: selftests: Test guest execution with tmpfs-backed guest_memfd Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:43   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 18/88] KVM: selftests: Document testing TODOs Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 19/88] KVM: selftests: Test guest_memfd conversions with tmpfs backing Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:36 ` [PATCH RFC v3 20/88] samples/kvm: Introduce memory provider module skeleton Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 21/88] samples/kvm: Support creating memory provider files Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 22/88] samples/kvm: Support marking page ranges present or absent Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 23/88] samples/kvm: Support marking page ranges read-only Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 24/88] samples/kvm: Support querying provider file statistics Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-07  0:36 ` [PATCH RFC v3 25/88] KVM: selftests: Add basic test for sample memory provider Ackerley Tng
2026-11-07  0:36   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 26/88] KVM: selftests: Test marking page ranges present and absent Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 27/88] KVM: selftests: Test marking page ranges read-only Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 28/88] KVM: guest_memfd: Support reporting PFN attributes Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot [this message]
2026-11-07  0:37 ` [PATCH RFC v3 29/88] KVM: guest_memfd: Support getting PFNs for stage 2 from providers Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 30/88] KVM: guest_memfd: Refactor error handling in kvm_gmem_fault_user_mapping Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 31/88] KVM: guest_memfd: Set VM_PFNMAP on VMA in PFN mode Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 32/88] KVM: guest_memfd: Support user fault handling " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 33/88] KVM: guest_memfd: Skip checking outstanding references " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 34/88] KVM: guest_memfd: Support converting to shared " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 35/88] KVM: guest_memfd: Support preallocating memory via fallocate " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 36/88] KVM: guest_memfd: Clamp hole punch range to inode size Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 37/88] KVM: guest_memfd: Support reclaim during hole punch in PFN mode Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 38/88] KVM: guest_memfd: Support arch reclaim on inode destruction " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 39/88] KVM: guest_memfd: Support put_pfn_range provider op " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 40/88] KVM: guest_memfd: Add TODO for memory failure handling " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 41/88] KVM: guest_memfd: Allow attaching PFN-backed providers Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 42/88] KVM: guest_memfd: Export kvm_gmem_revoke for provider-driven revocation Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 43/88] KVM: selftests: Test flag dependency of PFN_MODE on USE_RESOURCE Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 44/88] samples/kvm: Implement attach and release provider ops in sample provider Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 45/88] samples/kvm: Disallow MP_SET_READONLY after attach Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 46/88] samples/kvm: Implement get_pfn provider operation Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 47/88] samples/kvm: Implement put_pfn_range " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 48/88] samples/kvm: Support dynamic revocation via kvm_gmem_revoke Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 49/88] samples/kvm: Implement lookup_pfn_range provider operation Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 50/88] KVM: selftests: Test guest_memfd conversions with sample memory provider backing Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 51/88] KVM: guest_memfd: Support reporting PFN cacheability Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 52/88] KVM: guest_memfd: Support mmap provider operation Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 53/88] KVM: guest_memfd: Support check_set_attributes " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 54/88] KVM: guest_memfd: Support read and write operations and provider callbacks Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 55/88] vfio: Track device file access mode with an enum Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 56/88] vfio: Support VFIO_DEVICE_BIND_FLAG_CTRL_ONLY Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 57/88] vfio: Dispatch guest_memfd provider operations via vfio_device_ops Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 58/88] vfio/pci: Implement attach and release provider ops for guest_memfd Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 59/88] vfio: Dispatch guest_memfd get_pfn provider op via vfio_device_ops Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 60/88] vfio/pci: Implement get_pfn provider op for guest_memfd Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 61/88] vfio: Implement mmap " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 62/88] vfio: Dispatch guest_memfd check_set_attributes via vfio_device_ops Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 63/88] vfio/pci: Implement check_set_attributes provider op for guest_memfd Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 64/88] vfio: Add vfio_device_gmem_revoke helper " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-09  5:03   ` Aneesh Kumar K.V
2026-11-07  0:37 ` [PATCH RFC v3 65/88] vfio/pci: Revoke guest_memfd memory on BAR invalidation and reset Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 66/88] vfio: Dispatch guest_memfd lookup_pfn_range via vfio_device_ops Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 67/88] vfio/pci: Implement lookup_pfn_range provider op for guest_memfd Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 68/88] vfio/pci: Use iov_iter for MMIO read and write Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 69/88] vfio: Dispatch guest_memfd read and write provider ops via vfio_device_ops Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 70/88] vfio/pci: Introduce vfio_pci_bar_rw_kbuf for kernel buffer MMIO access Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 71/88] vfio/pci: Implement read and write provider ops for guest_memfd Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 72/88] KVM: selftests: Add initial VFIO test verifying device info Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 73/88] KVM: selftests: Verify VFIO region info for igb device Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 74/88] KVM: selftests: Verify VFIO IRQ " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 75/88] KVM: selftests: Verify VFIO MMIO read and write " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 76/88] KVM: selftests: Verify VFIO MMIO mmap access " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 77/88] KVM: selftests: Verify VFIO device reset " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 78/88] KVM: selftests: Verify VFIO access directly and via guest_memfd Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 79/88] KVM: selftests: Verify BAR revocation and access gating in low power state Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 80/88] KVM: selftests: Verify host VMA flags for VFIO BAR Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 81/88] KVM: selftests: Verify guest mapping " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-07  0:37 ` [PATCH RFC v3 82/88] KVM: selftests: Verify VFIO dmabuf creation for igb device Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 83/88] KVM: selftests: Verify VFIO ioeventfd " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 84/88] KVM: selftests: Verify memory conversions for VFIO BARs Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:37 ` [PATCH RFC v3 85/88] KVM: selftests: Verify shared and private mmap access " Ackerley Tng
2026-11-07  0:37   ` Ackerley Tng via B4 Relay
2026-11-07  0:38 ` [PATCH RFC v3 86/88] KVM: selftests: Expect successful conversion on MSI-X BARs in VFIO test Ackerley Tng
2026-11-07  0:38   ` Ackerley Tng via B4 Relay
2026-11-07  0:38 ` [PATCH RFC v3 87/88] QUESTION: KVM: guest_memfd: Disallow private mappings of shared-only PFNs Ackerley Tng
2026-11-07  0:38   ` Ackerley Tng via B4 Relay
2026-11-08  0:44   ` sashiko-bot
2026-11-09  5:37   ` Aneesh Kumar K.V
2026-11-07  0:38 ` [PATCH RFC v3 88/88] KVM: selftests: Verify shared and private pread and pwrite for VFIO BARs Ackerley Tng
2026-11-07  0:38   ` Ackerley Tng via B4 Relay

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=sashiko-outbox-203439@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=John.Starks@microsoft.com \
    --cc=ackerleytng@google.com \
    --cc=aik@amd.com \
    --cc=aneesh.kumar@kernel.org \
    --cc=brauner@kernel.org \
    --cc=david@kernel.org \
    --cc=dwmw2@infradead.org \
    --cc=fgriffo@amazon.co.uk \
    --cc=fuad.tabba@linux.dev \
    --cc=jacob.pan@linux.microsoft.com \
    --cc=jxgao@google.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=michael.roth@amd.com \
    --cc=pbonzini@redhat.com \
    --cc=sashiko-reviews@lists.linux.dev \
    --cc=seanjc@google.com \
    --cc=skhawaja@google.com \
    --cc=suzuki.poulose@arm.com \
    --cc=tarunsahu@google.com \
    --cc=vannapurve@google.com \
    --cc=yilun.xu@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.