[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-ia64-devel] RE: Implementing both (was: Xen/ia64 - global or per VP VHPT)
Hi, dan: > Hi Eddie -- > > Could you explain again what the foreignmap is? > Is it mappings for other domains (e.g. for domainA > to access memory in domainB)? Or is it for > the hypervisor to access domainA space? Or > something else? It is mapping for domain 0 (device model application) to access other domain's physical memory. Like a non modified domain N issue a IDE DMA read/write command, the service domain can directly read or write data to the point provided by domain N to avoid data copy with foreignmap. In this way, the map will be huge like 64GB to cover domain N, and one map for each domain (except service domain). My current implementation is to introduce another attribute to vTLB that means vTLB has TR, TC and FM (FM covers foreignmap and shared page). When collision chain memory is exhausted, all vTC will be cycled, but vTR and FM will remain there. Thus I can guarantee the hyper call shared page will never to purged that you are using TR temply now. It is same for foreignmap. Another important thing is that the entry in VHPT may be different with that in vTLB due to machine discontiguous situation. Suppose a guest has a 256MB huge tlb map that uses one vTC, but in VHPT it may be unable to find a machine contiguous space for that, so HV needs to convert this single map into bunch of VHPT entries like 256M/16K=16K entries. I guess you will headache without full tracking of guest vTLB. If you prefer to always use 16KB or 4KB page size for VHPT entries, the problem is disappeared but I am afraid it will consume so much VHPT entries and thus impact other entries performance. > > Since the current implementation doesn't have > this, I just want to ensure I understand it. > (And it would probably be useful for others > on the mailing list too!) > > Thanks, > Dan > _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |