aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/xsm
diff options
context:
space:
mode:
authorDaniel De Graaf <dgdegra@tycho.nsa.gov>2011-12-02 13:45:56 -0800
committerDaniel De Graaf <dgdegra@tycho.nsa.gov>2011-12-02 13:45:56 -0800
commitf21c69c577345e1529a446fd87f4f6f449fdca47 (patch)
tree32523383c78ec9a7438fcda926e051f142cb4c23 /xen/include/xsm
parentc9f7324e6c6f634bc0f7214fd0ab12fb9847c857 (diff)
downloadxen-f21c69c577345e1529a446fd87f4f6f449fdca47.tar.gz
xen-f21c69c577345e1529a446fd87f4f6f449fdca47.tar.bz2
xen-f21c69c577345e1529a446fd87f4f6f449fdca47.zip
xsm: Revert "Fix xsm_mmu_* and xsm_update_va_mapping hooks"
This reverts 23220:56a3b9c7367f, which removes all validation of the target pages in the mapping. This crash was solved by properly marking pages without known SIDs in 22207:20f139010445. Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov> Committed-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/include/xsm')
-rw-r--r--xen/include/xsm/xsm.h28
1 files changed, 13 insertions, 15 deletions
diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h
index fb152caef8..e8111a46b7 100644
--- a/xen/include/xsm/xsm.h
+++ b/xen/include/xsm/xsm.h
@@ -141,12 +141,11 @@ struct xsm_operations {
int (*getidletime) (void);
int (*machine_memory_map) (void);
int (*domain_memory_map) (struct domain *d);
- int (*mmu_normal_update) (struct domain *d,
- intpte_t fpte, struct page_info *page);
- int (*mmu_machphys_update) (struct domain *d, struct page_info *page);
- int (*update_va_mapping) (struct domain *d,
- l1_pgentry_t pte,
- struct page_info *page);
+ int (*mmu_normal_update) (struct domain *d, struct domain *f,
+ intpte_t fpte);
+ int (*mmu_machphys_update) (struct domain *d, unsigned long mfn);
+ 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 (*sendtrigger) (struct domain *d);
int (*bind_pt_irq) (struct domain *d, struct xen_domctl_bind_pt_irq *bind);
@@ -595,22 +594,21 @@ static inline int xsm_domain_memory_map(struct domain *d)
return xsm_call(domain_memory_map(d));
}
-static inline int xsm_mmu_normal_update (struct domain *d,
- intpte_t fpte, struct page_info *page)
+static inline int xsm_mmu_normal_update (struct domain *d, struct domain *f,
+ intpte_t fpte)
{
- return xsm_call(mmu_normal_update(d, fpte, page));
+ return xsm_call(mmu_normal_update(d, f, fpte));
}
-static inline int xsm_mmu_machphys_update (struct domain *d, struct page_info *page)
+static inline int xsm_mmu_machphys_update (struct domain *d, unsigned long mfn)
{
- return xsm_call(mmu_machphys_update(d, page));
+ return xsm_call(mmu_machphys_update(d, mfn));
}
-static inline int xsm_update_va_mapping(struct domain *d,
- l1_pgentry_t pte,
- struct page_info *page)
+static inline int xsm_update_va_mapping(struct domain *d, struct domain *f,
+ l1_pgentry_t pte)
{
- return xsm_call(update_va_mapping(d, pte, page));
+ return xsm_call(update_va_mapping(d, f, pte));
}
static inline int xsm_add_to_physmap(struct domain *d1, struct domain *d2)