[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [Patch RFC 00/13] VT-d Asynchronous Device-TLB Flush for ATS Device
Hi, At 11:09 +0000 on 11 Oct (1444561760), Xu, Quan wrote: > One question: do two lists refer to page_list and arch.relmem_list? No, I was wondering if a page ever needed to be queued waiting for two different flushes -- e.g. if there are multiple IOMMUs. > I know you prefer __scheme_A__(I think Jan prefers __scheme_A__ too. Jan, > correct me, if I am wrong :) ) > which fits better with the usual way refcounts are used. But __scheme_A__ > would be difficult for buy-in by my team (Obviously, why spend so many effort > for such a small issue? why does __scheme_B__ not accept?) I think, > __scheme_A__ is also a tricky solution. > What in particular is worrying you about scheme A? AFAICS you need to build the same refcount-taking mechanism for either scheme. Is it the interactions with other p2m-based features in VMs that don't have devices passed through? In that case perhaps you could just mandate that ATS support means no shared HAP/IOMMU tables, and do the refcounting only in the IOMMU ones? > I think __scheme_A__ is complex to keep a log of all relevant pending > derefs, and to be processed when the flush completes; > > optimized __scheme_A__: > It could keep a log of the reference only when the IOMMU entry is _ > removed/overwritten_.(if the IOMMU entry is not _ removed/overwritten_, it is > safe.). Yes, though I'd add any change from read-write to read-only. Basically, you only need the log/deref whenever you need to flush the IOMMU. :) Cheers, Tim. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |