• Alex Williamson's avatar
    intel-iommu: Only unlink device domains from iommu · 9b4554b2
    Alex Williamson authored
    Commit a97590e5 added unlinking domains from iommus to reciprocate the
    iommu from domains unlinking that was already done.  We actually want
    to only do this for device domains and never for the static
    identity map domain or VM domains.  The SI domain is special and
    never freed, while VM domain->id lives in their own special address
    space, separate from iommu->domain_ids.
    
    In the current code, a VM can get domain->id zero, then mark that
    domain unused when unbound from pci-stub.  This leads to DMAR
    write faults when the device is re-bound to the host driver.
    Signed-off-by: default avatarAlex Williamson <alex.williamson@redhat.com>
    Cc: stable@kernel.org
    Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
    9b4554b2
intel-iommu.c 98.8 KB