[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4D5D817B.8040609@redhat.com>
Date: Thu, 17 Feb 2011 15:13:47 -0500
From: Don Dutile <ddutile@...hat.com>
To: Alex Williamson <alex.williamson@...hat.com>
CC: dwmw2@...radead.org, iommu@...ts.linux-foundation.org,
linux-kernel@...r.kernel.org, linux-pci@...r.kernel.org,
chrisw@...hat.com
Subject: Re: [PATCH v2 0/2] intel-iommu: Fix domain_ids exhaustion
Alex Williamson wrote:
> When we unbind a device from a driver, we don't properly unlink
> the domain from the iommu, so we never free the domain id it
> was using. We're typically limited to something like 256 domain
> ids, so a loop of unbinding and rebinding a device can exhaust
> this pretty quickly. If we're assigning the device to a KVM
> guest, libvirt does exactly this each time the device is removed
> from the host driver or added back. When we do run out, we oops
> the kernel. Fix these.
>
> v2:
>
> We only want to call domain_exit() for domains automatically created
> via the dma ops path. VM and SI domains have their own life cycle
> and should not be destroyed here. With v1, if a device was unbound
> from pci-stub while assigned to a VM, the kernel would oops on the
> next call into iommu ops.
>
> BTW, should we even be removing the device from the domain in the
> VM domain case? Drivers and VM domains are (unfortunately) orthogonal
> concepts here with the way KVM is currently wired. Thanks,
>
> Alex
>
> ---
>
> Alex Williamson (2):
> intel-iommu: Fix get_domain_for_dev() error path
> intel-iommu: Unlink domain from iommu
>
>
> drivers/pci/intel-iommu.c | 15 +++++++++++++--
> 1 files changed, 13 insertions(+), 2 deletions(-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
Acked-by: Donald Dutile <ddutile@...hat.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists