WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] question on iommu _map_page

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] question on iommu _map_page
From: Kaushik Kumar Ram <kaushik@xxxxxxxx>
Date: Fri, 2 Jul 2010 01:22:30 -0500
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Thu, 01 Jul 2010 23:23:29 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C837B342.17533%keir.fraser@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <C837B342.17533%keir.fraser@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
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>