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

Re: [Xen-devel] HYPERVISOR_update_va_mapping in mm/memory.c



> hi,
> 
> I am trying to guess the purpose of the calls to
> HYPERVISOR_update_va_mapping in mm/memory.c, or rather why this code
> (which apparently handles user space demand paging) uses a special
> hypercall rather than the usual pte-update calls.
> 
> Could anyone briefly explain to me what this hypercall does, and why it
> needs to be special?
> 
> thanks,
> Jacob

It's faster to execute than doing the same thing via the usual update
hypercall, because:
 1. The code executes one special case so it is shorter and
 straight-line.
 2. Xen modifies the specified PTE directly using the guest-provided
 mapping of that PTE. This is faster than creating a temporary mapping
 of that page in Xen's address space.

Short answer: it's just a performance optimisation.

 -- Keir


-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

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