On Tue, 2017-02-21 at 16:19 +0100, Joerg Roedel wrote:
> Hi Mike,
> 
> thanks for the report, this didn't trigger in my local testing here.
> Loosk like I need to test without intel_iommu=on too :/
> 
> Anyway, can you check whether the attached patch helps?

Yup, boots.

> diff --git a/drivers/iommu/dmar.c b/drivers/iommu/dmar.c
> index d9c0decfc91a..a74fec8d266a 100644
> --- a/drivers/iommu/dmar.c
> +++ b/drivers/iommu/dmar.c
> @@ -1108,8 +1108,10 @@ static int alloc_iommu(struct dmar_drhd_unit
> *drhd)
>  
>  static void free_iommu(struct intel_iommu *iommu)
>  {
> -     iommu_device_sysfs_remove(&iommu->iommu);
> -     iommu_device_unregister(&iommu->iommu);
> +     if (intel_iommu_enabled) {
> +             iommu_device_sysfs_remove(&iommu->iommu);
> +             iommu_device_unregister(&iommu->iommu);
> +     }
>  
>       if (iommu->irq) {
>               if (iommu->pr_irq) {

Reply via email to