mfn = get_gfn_untyped(d, xrfp.gpfn);
if ( mfn_valid(mfn) )
- guest_physmap_remove_page(d, xrfp.gpfn, mfn, PAGE_ORDER_4K);
+ guest_physmap_remove_page(d, xrfp.gpfn, mfn, 0);
else
rc = -ENOENT;
#define irq_complete_move(x) do {} \
while(!x)
-#define domain_pirq_to_irq(d, irq) domain_irq_to_vector(d, irq)
+#define domain_pirq_to_irq(d, irq) (irq) /* domain_irq_to_vector(d, irq) */
#define hvm_domain_use_pirq(d, info) 0
#endif
#include <asm/intrinsics.h>
#include <asm/kregs.h>
+#if !defined(XEN)
#include <asm/ptrace.h>
+#elif !defined(__ASSEMBLY__)
+struct cpu_user_regs;
+#define pt_regs cpu_user_regs
+#endif
#include <asm/ustack.h>
/* Our arch specific arch_init_sched_domain is in arch/ia64/kernel/domain.c */
#endif /* !__ASSEMBLY__ */
+#ifdef XEN
+#include <asm/ptrace.h>
+#endif
+
#endif /* _ASM_IA64_PROCESSOR_H */
#define __XEN_LIST_H__
#include <xen/lib.h>
-#include <xen/prefetch.h>
#include <asm/system.h>
/* These are non-NULL pointers that will result in page faults
#define LIST_HEAD_READ_MOSTLY(name) \
struct list_head __read_mostly name = LIST_HEAD_INIT(name)
+/* Do not move this ahead of the struct list_head definition! */
+#include <xen/prefetch.h>
+
static inline void INIT_LIST_HEAD(struct list_head *list)
{
list->next = list;
int (*memory_adjust_reservation) (struct domain *d1, struct domain *d2);
int (*memory_stat_reservation) (struct domain *d1, struct domain *d2);
int (*memory_pin_page) (struct domain *d, struct page_info *page);
+ int (*remove_from_physmap) (struct domain *d1, struct domain *d2);
int (*console_io) (struct domain *d, int cmd);
int (*update_va_mapping) (struct domain *d, struct domain *f,
l1_pgentry_t pte);
int (*add_to_physmap) (struct domain *d1, struct domain *d2);
- int (*remove_from_physmap) (struct domain *d1, struct domain *d2);
int (*sendtrigger) (struct domain *d);
int (*bind_pt_irq) (struct domain *d, struct xen_domctl_bind_pt_irq *bind);
int (*unbind_pt_irq) (struct domain *d);
return xsm_call(memory_pin_page(d, page));
}
+static inline int xsm_remove_from_physmap(struct domain *d1, struct domain *d2)
+{
+ return xsm_call(remove_from_physmap(d1, d2));
+}
+
static inline int xsm_console_io (struct domain *d, int cmd)
{
return xsm_call(console_io(d, cmd));
return xsm_call(add_to_physmap(d1, d2));
}
-static inline int xsm_remove_from_physmap(struct domain *d1, struct domain *d2)
-{
- return xsm_call(remove_from_physmap(d1, d2));
-}
-
static inline int xsm_sendtrigger(struct domain *d)
{
return xsm_call(sendtrigger(d));