diff options
author | Daniel De Graaf <dgdegra@tycho.nsa.gov> | 2011-12-02 13:45:56 -0800 |
---|---|---|
committer | Daniel De Graaf <dgdegra@tycho.nsa.gov> | 2011-12-02 13:45:56 -0800 |
commit | f21c69c577345e1529a446fd87f4f6f449fdca47 (patch) | |
tree | 32523383c78ec9a7438fcda926e051f142cb4c23 /xen/include/xsm | |
parent | c9f7324e6c6f634bc0f7214fd0ab12fb9847c857 (diff) | |
download | xen-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.h | 28 |
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) |