diff options
author | Daniel De Graaf <dgdegra@tycho.nsa.gov> | 2011-12-18 14:33:19 +0000 |
---|---|---|
committer | Daniel De Graaf <dgdegra@tycho.nsa.gov> | 2011-12-18 14:33:19 +0000 |
commit | 4c1b911bbcd97fb68b4a9e0903a6644e50adda01 (patch) | |
tree | ced092f6dc59142d3362611e9acf117ffc250363 /xen/include/xsm | |
parent | d55b4c2dc629e9460d72c17bb2b0fa2028123199 (diff) | |
download | xen-4c1b911bbcd97fb68b4a9e0903a6644e50adda01.tar.gz xen-4c1b911bbcd97fb68b4a9e0903a6644e50adda01.tar.bz2 xen-4c1b911bbcd97fb68b4a9e0903a6644e50adda01.zip |
xsm: add remote_remap permission
The mmu_update hypercall can be used to manipulate the page tables of
a remote domain. Add a check for this in the XSM hook in addition to
the existing check on mapping pages of a remote domain.
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Diffstat (limited to 'xen/include/xsm')
-rw-r--r-- | xen/include/xsm/xsm.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h index ce3b6aa9d5..43829c7762 100644 --- a/xen/include/xsm/xsm.h +++ b/xen/include/xsm/xsm.h @@ -141,8 +141,8 @@ 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, struct domain *f, - intpte_t fpte); + int (*mmu_normal_update) (struct domain *d, struct domain *t, + 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); @@ -593,10 +593,10 @@ 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, struct domain *f, - intpte_t fpte) +static inline int xsm_mmu_normal_update (struct domain *d, struct domain *t, + struct domain *f, intpte_t fpte) { - return xsm_call(mmu_normal_update(d, f, fpte)); + return xsm_call(mmu_normal_update(d, t, f, fpte)); } static inline int xsm_mmu_machphys_update (struct domain *d, unsigned long mfn) |