Re: [PATCH v2 2/2] iommu/hyperv: Keep a new domain's page tables if it cannot be deleted
From: Jason Gunthorpe
Date: Fri Nov 13 2026 - 19:47:27 EST
On Thu, Nov 12, 2026 at 02:57:00PM -0500, Yuho Choi wrote:
> When hv_iommu_domain_alloc_paging() fails to configure a new device
> domain, hv_create_configure_device_domain() deletes the domain again,
> and the caller then frees the page tables with pt_iommu_deinit(). If
> the delete fails as well, the hypervisor still has the domain, which
> may already point at the page tables, and they are freed anyway.
>
> Create and configure the domain in hv_iommu_domain_alloc_paging()
> itself, and leak the page tables and the domain when the delete fails,
> as hv_iommu_paging_domain_free() does.
>
> Fixes: 2690d4156b51 ("iommu/hyperv: Add para-virtualized IOMMU support for Hyper-V guest")
> Reported-by: Jacob Pan <jacob.pan@xxxxxxxxxxxxxxxxxxx>
> Closes: https://lore.kernel.org/all/20261105141427.00005946@xxxxxxxxxxxxxxxxxxx/
> Signed-off-by: Yuho Choi <oss.patchbox@xxxxxxxxx>
> ---
> drivers/iommu/hyperv/hv-iommu-guest.c | 10 +++++++++-
> 1 file changed, 9 insertions(+), 1 deletion(-)
Reviewed-by: Jason Gunthorpe <jgg@xxxxxxxxxx>
Jason