Merge tag 'pwm/for-4.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry...
[deliverable/linux.git] / drivers / iommu / dmar.c
index 80e3c176008e511ec75c1771758b63de8ad39d9d..62a400c5ba0614fde00d18ad2207b430d99433ee 100644 (file)
@@ -1063,13 +1063,19 @@ static int alloc_iommu(struct dmar_drhd_unit *drhd)
 
        raw_spin_lock_init(&iommu->register_lock);
 
-       drhd->iommu = iommu;
-
-       if (intel_iommu_enabled)
+       if (intel_iommu_enabled) {
                iommu->iommu_dev = iommu_device_create(NULL, iommu,
                                                       intel_iommu_groups,
                                                       "%s", iommu->name);
 
+               if (IS_ERR(iommu->iommu_dev)) {
+                       err = PTR_ERR(iommu->iommu_dev);
+                       goto err_unmap;
+               }
+       }
+
+       drhd->iommu = iommu;
+
        return 0;
 
 err_unmap:
This page took 0.024773 seconds and 5 git commands to generate.