|
|
|
|
|
|
|
|
|
|
xen-devel
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
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- Re: [Xen-devel] question on iommu _map_page,
Kaushik Kumar Ram <=
|
|
|
|
|