[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH RFC v2 6/9] xen/arm: Add handling write fault for dirty-page tracing



> -----Original Message-----
> From: Ian Campbell [mailto:ian.campbell@xxxxxxxxxx]
> Sent: Monday, July 08, 2013 1:53 AM
> To: Jaeyong Yoo
> Cc: 'Elena Pyatunina'; xen-devel@xxxxxxxxxxxxx
> Subject: Re: [Xen-devel] [PATCH RFC v2 6/9] xen/arm: Add handling write
> fault for dirty-page tracing
> 
> On Fri, 2013-07-05 at 13:42 +0900, Jaeyong Yoo wrote:
> > > > > I think we'd want to establish a linear map of the current guest
> > > > > p2m for these purposes so we could also avoid all the
> > > > > map_domain_page stuff in the fault path. I think there is enough
> > > > > virtual address space left for that even on 32-bit, it's less
> > > > > critical on 64-bit anyway since we are about to have a direct map
> of RAM available to us.
> > > >
> > > > I think it is a good idea to have an ever-mapping linear dirty-bit
> > > > map for guest p2m.
> > >
> > > By Linear map I meant slotting the p2m into the hypervisor's own
> > > page tables (I believe the relevant p2m and pte bits in the entries
> > > do not overlap, so this is possible), such that the p2m table
> > > entries are available at known virtual addresses and you can locate
> > > the L1, L2 and
> > > L3 entries corresponding to a given guest physical address with just
> > > arithmetic, i.e. something like:
> > > http://www.technovelty.org/linux/virtual-linear-page-table.html
> >
> > Which virtual address range should we map the p2m? Would it be
> > xenheap, domheap, or unassigned range (for instance, between  frametable
> and vmap)?
> 
> Since it needs to take over a bunch of entries in the page tables it
> should be its own virtual address range. Looking at xen/include/asm-
> arm/config.h between the frametable and vmap seems sensible.

I have finished VLPT (virtual-linear-page-table) and it gives much faster 
speed for dirty-page marking. For original version, it took around 5 usec for
marking a dirty-bit, but now it only takes around 1.5 usec since we remove
all map/unmap domain pages.

Now, I'm thinking of migrating multiple VMs at a moment, then we need to 
assign virtual memory for VLPT to different each migrating domain. 
And, I'm thinking to implement similar to vmap assignment. 
Can you tell me your opinion about this?

Jaeyong


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.