[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] question on iommu _map_page
On Jun 11, 2010, at 3:32 AM, Keir Fraser wrote: > On 10/06/2010 22:59, "Kaushik Kumar Ram" <kaushik@xxxxxxxx> wrote: >> >> Checking if act->pin is zero before calling iommu_unmap_page() (in >> grant_table.c) is not sufficient since there can be multiple >> active grants all referring to the same mfn. In fact I came across iommu page >> faults because pages were >> getting unmapped from the IOMMU when active grants referring to these pages >> were still around. >> Ideally, there needs to be a per-page count of how many IOMMU mappings exists >> for a page. >> I can't think of an obvious fix for this problem. For my purposes, I hacked >> page_info to add another counter which I guess is not an acceptable solution! > > See if xen-unstable:21597 works for you. Keir, I finally found some time to test your patch. While it seems to fix the problem, it *significantly* degrades performance. On running netperf, there is a 10X reduction in throughput to a guest VM. On profiling, I find a significant number of cycles being spent in mapcount(). In the current solution, the entire grant table is searched every time (right ?). The mapping info ought to be stored in some per-page location... for efficient access. -Kaushik _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |