# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1231933494 0
# Node ID 93ea699242418730253e2ae22c74bddd3e5fdfc9
# Parent 107e10e0e07c3984630b8d3eaecb5bb957be387a
Sync Xen public memory.h header file.
Remove ia64 translations of removed hypercall structs.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
arch/ia64/xen/xcom_privcmd.c | 70 -----------------------------------------
include/xen/interface/memory.h | 58 ++++++++++-----------------------
2 files changed, 19 insertions(+), 109 deletions(-)
diff -r 107e10e0e07c -r 93ea69924241 arch/ia64/xen/xcom_privcmd.c
--- a/arch/ia64/xen/xcom_privcmd.c Tue Jan 13 15:17:54 2009 +0000
+++ b/arch/ia64/xen/xcom_privcmd.c Wed Jan 14 11:44:54 2009 +0000
@@ -565,80 +565,12 @@ xencomm_privcmd_memory_op(privcmd_hyperc
return ret;
}
- case XENMEM_translate_gpfn_list:
- {
- xen_translate_gpfn_list_t kern_op;
- xen_translate_gpfn_list_t __user *user_op;
- struct xencomm_handle *desc_gpfn = NULL;
- struct xencomm_handle *desc_mfn = NULL;
- struct xencomm_handle *desc_op;
- void *addr;
-
- user_op = (xen_translate_gpfn_list_t __user *)
- hypercall->arg[1];
- if (copy_from_user(&kern_op, user_op,
- sizeof(xen_translate_gpfn_list_t)))
- return -EFAULT;
- desc_op = xencomm_map_no_alloc(&kern_op, sizeof(kern_op));
-
- if (kern_op.nr_gpfns) {
- /* gpfn_list. */
- addr = xen_guest_handle(kern_op.gpfn_list);
-
- desc_gpfn = xencomm_map(addr, kern_op.nr_gpfns *
- sizeof(*xen_guest_handle
- (kern_op.gpfn_list)));
- if (addr != NULL && kern_op.nr_gpfns > 0 &&
- desc_gpfn == NULL)
- return -ENOMEM;
- set_xen_guest_handle(kern_op.gpfn_list,
- (void *)desc_gpfn);
-
- /* mfn_list. */
- addr = xen_guest_handle(kern_op.mfn_list);
-
- desc_mfn = xencomm_map(addr, kern_op.nr_gpfns *
- sizeof(*xen_guest_handle
- (kern_op.mfn_list)));
- if (addr != NULL && kern_op.nr_gpfns > 0 &&
- desc_mfn == NULL) {
- xencomm_free(desc_gpfn);
- return -ENOMEM;
- }
-
- set_xen_guest_handle(kern_op.mfn_list,
- (void *)desc_mfn);
- }
-
- ret = xencomm_arch_hypercall_memory_op(cmd, desc_op);
-
- xencomm_free(desc_gpfn);
- xencomm_free(desc_mfn);
-
- if (ret != 0)
- return ret;
-
- return ret;
- }
case XENMEM_add_to_physmap:
- case XENMEM_remove_from_physmap:
{
void __user *arg = (void __user *)hypercall->arg[1];
- size_t argsize;
struct xencomm_handle *desc;
- switch (cmd) {
- case XENMEM_add_to_physmap:
- argsize = sizeof(struct xen_add_to_physmap);
- break;
- case XENMEM_remove_from_physmap:
- argsize = sizeof(struct xen_remove_from_physmap);
- break;
- default:
- BUG();
- }
-
- desc = xencomm_map(arg, argsize);
+ desc = xencomm_map(arg, sizeof(struct xen_add_to_physmap));
if (desc == NULL)
return -ENOMEM;
diff -r 107e10e0e07c -r 93ea69924241 include/xen/interface/memory.h
--- a/include/xen/interface/memory.h Tue Jan 13 15:17:54 2009 +0000
+++ b/include/xen/interface/memory.h Wed Jan 14 11:44:54 2009 +0000
@@ -48,6 +48,8 @@
/* NUMA node to allocate from. */
#define XENMEMF_node(x) (((x) + 1) << 8)
#define XENMEMF_get_node(x) ((((x) >> 8) - 1) & 0xffu)
+/* Flag to populate physmap with populate-on-demand entries */
+#define XENMEMF_populate_on_demand (1<<16)
#endif
struct xen_memory_reservation {
@@ -204,7 +206,7 @@ struct xen_add_to_physmap {
/* Source mapping space. */
#define XENMAPSPACE_shared_info 0 /* shared info page */
#define XENMAPSPACE_grant_table 1 /* grant table page */
-#define XENMAPSPACE_mfn 2 /* usual MFN */
+#define XENMAPSPACE_gmfn 2 /* GMFN */
unsigned int space;
/* Index into source mapping space. */
@@ -216,45 +218,8 @@ typedef struct xen_add_to_physmap xen_ad
typedef struct xen_add_to_physmap xen_add_to_physmap_t;
DEFINE_XEN_GUEST_HANDLE(xen_add_to_physmap_t);
-/*
- * Unmaps the page appearing at a particular GPFN from the specified guest's
- * pseudophysical address space.
- * arg == addr of xen_remove_from_physmap_t.
- */
-#define XENMEM_remove_from_physmap 15
-struct xen_remove_from_physmap {
- /* Which domain to change the mapping for. */
- domid_t domid;
-
- /* GPFN of the current mapping of the page. */
- xen_pfn_t gpfn;
-};
-typedef struct xen_remove_from_physmap xen_remove_from_physmap_t;
-DEFINE_XEN_GUEST_HANDLE(xen_remove_from_physmap_t);
-
-/*
- * Translates a list of domain-specific GPFNs into MFNs. Returns a -ve error
- * code on failure. This call only works for auto-translated guests.
- */
-#define XENMEM_translate_gpfn_list 8
-struct xen_translate_gpfn_list {
- /* Which domain to translate for? */
- domid_t domid;
-
- /* Length of list. */
- xen_ulong_t nr_gpfns;
-
- /* List of GPFNs to translate. */
- XEN_GUEST_HANDLE(xen_pfn_t) gpfn_list;
-
- /*
- * Output list to contain MFN translations. May be the same as the input
- * list (in which case each input GPFN is overwritten with the output MFN).
- */
- XEN_GUEST_HANDLE(xen_pfn_t) mfn_list;
-};
-typedef struct xen_translate_gpfn_list xen_translate_gpfn_list_t;
-DEFINE_XEN_GUEST_HANDLE(xen_translate_gpfn_list_t);
+/*** REMOVED ***/
+/*#define XENMEM_translate_gpfn_list 8*/
/*
* Returns the pseudo-physical memory map as it was when the domain
@@ -299,6 +264,19 @@ typedef struct xen_foreign_memory_map xe
typedef struct xen_foreign_memory_map xen_foreign_memory_map_t;
DEFINE_XEN_GUEST_HANDLE(xen_foreign_memory_map_t);
+#define XENMEM_set_pod_target 16
+#define XENMEM_get_pod_target 17
+struct xen_pod_target {
+ /* IN */
+ uint64_t target_pages;
+ /* OUT */
+ uint64_t tot_pages;
+ uint64_t pod_cache_pages;
+ uint64_t pod_entries;
+ /* IN */
+ domid_t domid;
+};
+typedef struct xen_pod_target xen_pod_target_t;
#endif /* __XEN_PUBLIC_MEMORY_H__ */
/*
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|