|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [Patch 2/2] Add dom0_get_sectioninfo for XEN/VTI
As discussed before on the list, unmodified domain is presented a
real-platform-like physical address space, including memory hole, MMIO,
etc. Device Model needs to map pages of other unmodified domain into its
own virtual space. To achieve that, DM needs to retrieve physical pfn ->
machine pfn information of targeted domain. However current
DOM0_GETMEMLIST only returns a list of active pages allocated to
targeted domain, which doesn't include hole information.
Attached patch adds a new operation (DOM0_GET_SECTIONINFO), to retrieve
hierarchy of physical address space. Together with DOM0_GETMEMLIST, DM
can then construct correct information to access page from other
domains.
Xenolinux has no such issue since it's physical memory is always
contiguous. ;-)
Signed-off-by Kevin Tian <Kevin.tian@xxxxxxxxx>
Thanks,
Kevin
--- xeno-unstable.org/xen/include/public/dom0_ops.h 2005-06-16
17:42:48.000000000 +0800
+++ xeno-unstable/xen/include/public/dom0_ops.h 2005-06-16
17:46:09.000000000 +0800
@@ -371,6 +372,24 @@ typedef struct {
* IA64 specific operations (START)
**********************************************************/
+#define DOM0_GET_SECTIONINFO DOM0_IA64_OP_BASE
+typedef struct {
+ memory_t start; /* start of memory hole */
+ memory_t end; /* end of memory hole */
+} dom0_section_t;
+
+/* Request section info which describes memory holes in guest
+ * physical layer, like mmio, etc. When sections is NULL, return
+ * number of holes. When sections is valid, return section info
+ * upon requested number.
+ * (ia64 specific now, but should adapt to other arch with holes)
+ */
+typedef struct {
+ domid_t domain; /* Domain to be affected */
+ u32 section_nr; /* How many holes existing? */
+ dom0_section_t *sections; /* List to contain section info */
+} dom0_get_sectioninfo_t;
+
/**********************************************************
* IA64 specific operations (END)
**********************************************************/
@@ -407,6 +426,7 @@ typedef struct {
dom0_microcode_t microcode;
dom0_ioport_permission_t ioport_permission;
dom0_getvcpucontext_t getvcpucontext;
+ dom0_get_sectioninfo_t getsectioninfo;
} u;
} dom0_op_t;
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [Patch 2/2] Add dom0_get_sectioninfo for XEN/VTI,
Tian, Kevin <=
|
|
|
|
|