[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 1/5] IOMMU: make page table population preemptible
>>> On 13.12.13 at 16:09, Andrew Cooper <andrew.cooper3@xxxxxxxxxx> wrote: > On 13/12/2013 13:59, Jan Beulich wrote: >> @@ -290,15 +307,14 @@ static int assign_device(struct domain * >> rc); >> } >> >> - if ( has_arch_pdevs(d) && !need_iommu(d) ) >> + done: >> + if ( !has_arch_pdevs(d) && need_iommu(d) ) > > We now have a case where, for the first device, we could set up > pagetables for a large domain, get an error with assignment, then tear > them all back down. (-EBUSY from pci_get_pdev() looks like a good > non-fatal candidate for causing this behaviour) > > I am wondering whether this is better for worse than the race condition > where a guest couldn't use the device. A guest could not reasonably > expect to use a device before the toolstack is done setting it up. A > buggy toolstack could quite easily tie up a lot of Xen time creating and > destroying complete iommu pagetable sets. I don't think it's worth worrying about buggy tool stacks here - they should simply get fixed. Furthermore this change in operation ordering is only a (nice) side effect, the necessary cleanup seemed easier with the order changed. And said time window would have grown with the added preemption handling. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |