diff options
author | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2010-12-01 18:23:31 -0500 |
---|---|---|
committer | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2011-05-20 17:14:31 -0400 |
commit | 331468b11b94428a9eb2ed8b3240c17612533a99 (patch) | |
tree | 7a817b20110d7fbfb58a3baf2a11af2c2da97466 | |
parent | 61c4f2c81c61f73549928dfd9f3e8f26aa36a8cf (diff) |
xen: drop all the special iomap pte paths.
Xen can work out when we're doing IO mappings for itself, so we don't
need to do anything special, and the extra tests just clog things up.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
-rw-r--r-- | arch/x86/xen/mmu.c | 25 |
1 files changed, 0 insertions, 25 deletions
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c index 0684f3c74d53..4f5e0dc5f6e5 100644 --- a/arch/x86/xen/mmu.c +++ b/arch/x86/xen/mmu.c | |||
@@ -243,11 +243,6 @@ static bool xen_page_pinned(void *ptr) | |||
243 | return PagePinned(page); | 243 | return PagePinned(page); |
244 | } | 244 | } |
245 | 245 | ||
246 | static bool xen_iomap_pte(pte_t pte) | ||
247 | { | ||
248 | return pte_flags(pte) & _PAGE_IOMAP; | ||
249 | } | ||
250 | |||
251 | void xen_set_domain_pte(pte_t *ptep, pte_t pteval, unsigned domid) | 246 | void xen_set_domain_pte(pte_t *ptep, pte_t pteval, unsigned domid) |
252 | { | 247 | { |
253 | struct multicall_space mcs; | 248 | struct multicall_space mcs; |
@@ -266,11 +261,6 @@ void xen_set_domain_pte(pte_t *ptep, pte_t pteval, unsigned domid) | |||
266 | } | 261 | } |
267 | EXPORT_SYMBOL_GPL(xen_set_domain_pte); | 262 | EXPORT_SYMBOL_GPL(xen_set_domain_pte); |
268 | 263 | ||
269 | static void xen_set_iomap_pte(pte_t *ptep, pte_t pteval) | ||
270 | { | ||
271 | xen_set_domain_pte(ptep, pteval, DOMID_IO); | ||
272 | } | ||
273 | |||
274 | static void xen_extend_mmu_update(const struct mmu_update *update) | 264 | static void xen_extend_mmu_update(const struct mmu_update *update) |
275 | { | 265 | { |
276 | struct multicall_space mcs; | 266 | struct multicall_space mcs; |
@@ -347,11 +337,6 @@ void set_pte_mfn(unsigned long vaddr, unsigned long mfn, pgprot_t flags) | |||
347 | void xen_set_pte_at(struct mm_struct *mm, unsigned long addr, | 337 | void xen_set_pte_at(struct mm_struct *mm, unsigned long addr, |
348 | pte_t *ptep, pte_t pteval) | 338 | pte_t *ptep, pte_t pteval) |
349 | { | 339 | { |
350 | if (xen_iomap_pte(pteval)) { | ||
351 | xen_set_iomap_pte(ptep, pteval); | ||
352 | goto out; | ||
353 | } | ||
354 | |||
355 | ADD_STATS(set_pte_at, 1); | 340 | ADD_STATS(set_pte_at, 1); |
356 | // ADD_STATS(set_pte_at_pinned, xen_page_pinned(ptep)); | 341 | // ADD_STATS(set_pte_at_pinned, xen_page_pinned(ptep)); |
357 | ADD_STATS(set_pte_at_current, mm == current->mm); | 342 | ADD_STATS(set_pte_at_current, mm == current->mm); |
@@ -632,11 +617,6 @@ void xen_set_pud(pud_t *ptr, pud_t val) | |||
632 | 617 | ||
633 | void xen_set_pte(pte_t *ptep, pte_t pte) | 618 | void xen_set_pte(pte_t *ptep, pte_t pte) |
634 | { | 619 | { |
635 | if (xen_iomap_pte(pte)) { | ||
636 | xen_set_iomap_pte(ptep, pte); | ||
637 | return; | ||
638 | } | ||
639 | |||
640 | ADD_STATS(pte_update, 1); | 620 | ADD_STATS(pte_update, 1); |
641 | // ADD_STATS(pte_update_pinned, xen_page_pinned(ptep)); | 621 | // ADD_STATS(pte_update_pinned, xen_page_pinned(ptep)); |
642 | ADD_STATS(pte_update_batched, paravirt_get_lazy_mode() == PARAVIRT_LAZY_MMU); | 622 | ADD_STATS(pte_update_batched, paravirt_get_lazy_mode() == PARAVIRT_LAZY_MMU); |
@@ -653,11 +633,6 @@ void xen_set_pte(pte_t *ptep, pte_t pte) | |||
653 | #ifdef CONFIG_X86_PAE | 633 | #ifdef CONFIG_X86_PAE |
654 | void xen_set_pte_atomic(pte_t *ptep, pte_t pte) | 634 | void xen_set_pte_atomic(pte_t *ptep, pte_t pte) |
655 | { | 635 | { |
656 | if (xen_iomap_pte(pte)) { | ||
657 | xen_set_iomap_pte(ptep, pte); | ||
658 | return; | ||
659 | } | ||
660 | |||
661 | set_64bit((u64 *)ptep, native_pte_val(pte)); | 636 | set_64bit((u64 *)ptep, native_pte_val(pte)); |
662 | } | 637 | } |
663 | 638 | ||