|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Mapping foreign frames from dom0
Hello,
I am hacking on a Mini-OS that is able to run as domain 0 and is able to
start a guest (another Mini-OS for now). I was able to get a memory
allocated to the guest and am now trying to build its pagetable and
after that copy the kernel to the right places. The problem is:
Given a machine frame number from a memory frame of the guest, how do I
conceptionally map this into dom0's address space? I followed the code
path from xc_map_foreign_range to some obscure pagetable updates in the
Linux kernel, but am still unable to make heads or tails of it.
Any help is appreciated.
Foreign mappings are very similar to standard mappings (assuming that
the mapping domain is privileged). HYPERVISOR_mmu_update with domid set
to the foreign domain will deal with page table update.
Note that you need to find some virtual address for the mapping. This is
what demand_map_area is for, have a look at map_frames() in
arch/x86/mm.c for more info.
Derek Murray has an implementation of foreign mappings and the whole
domain builder for that matter. I'll however not share his code. You
better ask him directly when he gets back to Cambridge (at the beginning
of the next week). I'm CC-ing him.
Cheers
Gregor
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|