Baolu:

Yes, it is a generic issue for hotplug devices with current Intel IOMMU driver,
as reported in this thread as well.

The patch you provided does the job in our case. Please update this thread once
your patch is merged. Thanks.

Best Regards,
James

On 2/23/19 12:56 AM, Lu Baolu wrote
>
> @@ -4807,16 +4807,19 @@ static int device_notifier(struct notifier_block *nb,
>       if (iommu_dummy(dev))
>               return 0;
> 
>-      if (action != BUS_NOTIFY_REMOVED_DEVICE)
>-              return 0;
>-
>-      domain = find_domain(dev);
>-      if (!domain)
>-              return 0;
>+      if (action == BUS_NOTIFY_REMOVED_DEVICE) {
>+              domain = find_domain(dev);
>+              if (!domain)
>+                      return 0;
> 
>-      dmar_remove_one_dev_info(dev);
>-      if (!domain_type_is_vm_or_si(domain) && list_empty(&domain->devices))
>-              domain_exit(domain);
>+              dmar_remove_one_dev_info(dev);
>+              if (!domain_type_is_vm_or_si(domain) &&
>+                  list_empty(&domain->devices))
>+                      domain_exit(domain);
>+      } else if (action == BUS_NOTIFY_ADD_DEVICE) {
>+              if (iommu_should_identity_map(dev, 1))
>+                      domain_add_dev_info(si_domain, dev);
>+      }


Reply via email to