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] RE: transferring ownership of domheap pages

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>, "Xen-Devel (E-mail)" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] RE: transferring ownership of domheap pages
From: Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>
Date: Fri, 13 Feb 2009 15:14:53 +0000 (GMT)
Cc:
Delivery-date: Fri, 13 Feb 2009 07:16:18 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C5BAE5BC.1E39%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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hmm... it looks like steal_page() only works one way,
from owned-by-d to anonymous, true?  I need the
other direction as well.  Other than that, the
only difference I see is that page->count_info
is being cleared/set in a cmpxchg loop; I assume
this is because multiple domains might be contending
to use/unuse the page?  I wonder if I need that
given that in my case the page is never addressed by
any domain, just used inside the hypervisor, and
the owned-by-d is mostly for accounting purposes.

> Yeah, that's pretty... optimistic. ;-) 

What else do you see that is missing in my first cut?
Do you see any other code there that's just wrong?

Thanks,
Dan

> -----Original Message-----
> From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx]
> Sent: Friday, February 13, 2009 1:54 AM
> To: Dan Magenheimer; Xen-Devel (E-mail)
> Subject: Re: [Xen-devel] RE: transferring ownership of domheap pages
> 
> 
> Yeah, that's pretty... optimistic. ;-) Use steal_page() plus 
> whatever bits
> of gnttab_transfer() you think you might need. If you can 
> cleanly abstract
> that into a common function all the better, but you probably 
> won't need much
> code in addition to steal_page() anyway.
> 
>  -- Keir
> 
> On 13/02/2009 03:37, "Dan Magenheimer" 
> <dan.magenheimer@xxxxxxxxxx> wrote:
> 
> > Here's a first cut.  Works only from anon to non-anon
> > or non-anon to anon (not non-anon1 to non-anon2).
> > 
> >> -----Original Message-----
> >> From: Dan Magenheimer
> >> Sent: Thursday, February 12, 2009 5:59 PM
> >> To: Xen-Devel (E-mail)
> >> Subject: transferring ownership of domheap pages
> >> 
> >> 
> >> I'd like to have routines to transfer ownership
> >> of a page both from domain D1 to anonymous and
> >> from anonymous to domain D2, without the necessity
> >> of doing a free_domheap_pages followed by an
> >> alloc_domheap_pages (primarily because I don't
> >> want to scrub the page as I know it will be
> >> immediately overwritten by the new owner).
> >> The anon-to-D2 would fail (return NULL) if
> >> D2 is fully allocated.
> >> 
> >> Any problems to watch out for?
> >> 
> >> Thanks,
> >> Dan
> >> 
> >> P.S. Only has to work on 64-bit Xen if that matters.
> >> 
> 
> 
>

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel