[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [PATCH] Add hypercall to mark superpages to improve performance
On 30/04/2010 12:43, "Dave McCracken" <dcm@xxxxxxxx> wrote: >> Finally, does this really require new hypercalls? Could there not instead >> be an always-enabled robust method for Xen to do superpage tracking? > > I'm open to alternative suggestions on how to lock superpages into writable > state once they're mapped without having to touch each individual page, even > on the first map/unmap. We could refcount superpage mappings in the base page > of each superpage and then whenever a small page is mapped check its base > page, but that would require an additional refcounted field in struct > page_info. I figured that would not be considered acceptable. One option would be an array of reference counts indexed by superpage number (i.e, mfn>>9). So kind of a separate array to page_info, and a non-zero superpage refcount would arrange to hold a reference on every relevant page in page_info. That could be implemented with no extra hypercalls, and I reckon it's probably easier to make this race-free too. Obviously it does have extra code complexity to construct this array (which I suppose needs to be sparse, just like page_info array, in the face of very sparse memory maps). The space overhead (about 8 bytes per 2MB, or 0.0004% of total system memory) would be trivial. Compared with an extra reference count in every page_info, which would have a much higher 0.2% overhead. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |