Re: [PATCH] pci, dmar: flush IOTLB before exit domain

From: David Woodhouse
Date: Mon May 09 2011 - 10:49:06 EST


On Thu, 2011-05-05 at 18:13 -0700, Yinghai Lu wrote:
> @@ -3252,6 +3252,9 @@ static int device_notifier(struct notifi
> return 0;
>
> if (action == BUS_NOTIFY_UNBOUND_DRIVER && !iommu_pass_through) {
> + /* before we remove dev with domain, flush IOTLB */
> + flush_unmaps();
> +
> domain_remove_one_dev_info(domain, pdev);
>
> if (!(domain->flags & DOMAIN_FLAG_VIRTUAL_MACHINE) &&

That calls flush_unmaps() without the async_umap_flush_lock held,
doesn't it? A few days ago I asked someone else to test this candidate
patch for a similar issue:

http://david.woodhou.se/flush-unmaps-on-unbind.patch

--
David Woodhouse Open Source Technology Centre
David.Woodhouse@xxxxxxxxx Intel Corporation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/