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

RE: [Xen-devel] Dom heap virtual address question

  • To: "Daniel Magenheimer" <dan.magenheimer@xxxxxxxxxx>, "Xen-Devel (E-mail)" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
  • Date: Wed, 27 Aug 2008 09:29:18 +0800
  • Cc:
  • Delivery-date: Tue, 26 Aug 2008 18:29:53 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AckH4xfPPWE6zRaWRnSdxraEe536VAAABPVg
  • Thread-topic: [Xen-devel] Dom heap virtual address question

>From: Daniel Magenheimer [mailto:dan.magenheimer@xxxxxxxxxx] 
>Sent: 2008年8月27日 9:20
>Hi Kevin --
>Thanks much for the reply.
>Further clarification on the _global versions:
>If domainA makes a hypercall that results in the
>va = mfn_to_virt(page_to_mfn(alloc_domheap_pages()))
>(or equivalent wrapped in map/unmap_domain_page)
>and then domainB makes a hypercall but IN THE
>HYPERVISOR I want to make use of the previously
>saved va (or mapped mfn), is that still in the context
>of domainA?  In other words, I must use _global?

Yes. The ptes used for non global version is domain
specific, which is changed along with context switch.
However ptes for _global version are persistent across
domains. This is for 32bit xen.

For 64bit xen, both local and global version are simply
macros to mfn_to_virt which is a directly mapping
style setuped at boot time. In such case, you can always 
access previously mapped va from any domain context, 
regardless of which interface is used.

But for portability, it's better to have 32bit implication
in mind to avoid mistake. :-)


Xen-devel mailing list



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