# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 7540798860353a5d46d2d4909b74fe7092c9b2d3
# Parent 1c69197d29b719cb42e73e0d26c024935fd18364
Remove defunct compile option CONFIG_XEN_SHADOW_MODE.
It has been superceded by run-time flag
XENFEAT_auto_translated_physmap.
This patch changes behaviour slightly:
1. set_pmd/set_pgd/set_pud always use mmu_ops, even when
XENFEAT_writable_page_tables is available. Unclear whether
we want to add a test to avoid this.
2. xen_l1_entry_update always uses mmu_op. Again, could gate
this on XENFEAT_writable_page_tables.
3. We always pin/unpin pagetables. Could gate this on a
new XENFEAT flag.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
diff -r 1c69197d29b7 -r 754079886035 buildconfigs/linux-defconfig_xen0_x86_32
--- a/buildconfigs/linux-defconfig_xen0_x86_32 Thu Feb 9 17:35:15 2006
+++ b/buildconfigs/linux-defconfig_xen0_x86_32 Thu Feb 9 19:25:33 2006
@@ -1317,7 +1317,6 @@
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
diff -r 1c69197d29b7 -r 754079886035 buildconfigs/linux-defconfig_xen0_x86_64
--- a/buildconfigs/linux-defconfig_xen0_x86_64 Thu Feb 9 17:35:15 2006
+++ b/buildconfigs/linux-defconfig_xen0_x86_64 Thu Feb 9 19:25:33 2006
@@ -1242,7 +1242,6 @@
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
diff -r 1c69197d29b7 -r 754079886035 buildconfigs/linux-defconfig_xenU_x86_32
--- a/buildconfigs/linux-defconfig_xenU_x86_32 Thu Feb 9 17:35:15 2006
+++ b/buildconfigs/linux-defconfig_xenU_x86_32 Thu Feb 9 19:25:33 2006
@@ -864,7 +864,6 @@
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
diff -r 1c69197d29b7 -r 754079886035 buildconfigs/linux-defconfig_xenU_x86_64
--- a/buildconfigs/linux-defconfig_xenU_x86_64 Thu Feb 9 17:35:15 2006
+++ b/buildconfigs/linux-defconfig_xenU_x86_64 Thu Feb 9 19:25:33 2006
@@ -1142,7 +1142,6 @@
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
diff -r 1c69197d29b7 -r 754079886035 buildconfigs/linux-defconfig_xen_x86_32
--- a/buildconfigs/linux-defconfig_xen_x86_32 Thu Feb 9 17:35:15 2006
+++ b/buildconfigs/linux-defconfig_xen_x86_32 Thu Feb 9 19:25:33 2006
@@ -2999,7 +2999,6 @@
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
diff -r 1c69197d29b7 -r 754079886035 buildconfigs/linux-defconfig_xen_x86_64
--- a/buildconfigs/linux-defconfig_xen_x86_64 Thu Feb 9 17:35:15 2006
+++ b/buildconfigs/linux-defconfig_xen_x86_64 Thu Feb 9 19:25:33 2006
@@ -2674,7 +2674,6 @@
CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_XEN_BLKDEV_TAP is not set
# CONFIG_XEN_TPMDEV_FRONTEND is not set
-# CONFIG_XEN_SHADOW_MODE is not set
CONFIG_XEN_SCRUB_PAGES=y
CONFIG_XEN_DISABLE_SERIAL=y
CONFIG_HAVE_ARCH_ALLOC_SKB=y
diff -r 1c69197d29b7 -r 754079886035
linux-2.6-xen-sparse/arch/i386/kernel/head-xen.S
--- a/linux-2.6-xen-sparse/arch/i386/kernel/head-xen.S Thu Feb 9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/arch/i386/kernel/head-xen.S Thu Feb 9 19:25:33 2006
@@ -10,9 +10,6 @@
.ascii ",PAE=yes"
#else
.ascii ",PAE=no"
-#endif
-#ifdef CONFIG_XEN_SHADOW_MODE
- .ascii ",SHADOW=translate"
#endif
.ascii ",LOADER=generic"
.byte 0
diff -r 1c69197d29b7 -r 754079886035
linux-2.6-xen-sparse/arch/i386/mm/hypervisor.c
--- a/linux-2.6-xen-sparse/arch/i386/mm/hypervisor.c Thu Feb 9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/arch/i386/mm/hypervisor.c Thu Feb 9 19:25:33 2006
@@ -52,7 +52,6 @@
#endif
#endif
-#ifndef CONFIG_XEN_SHADOW_MODE
void xen_l1_entry_update(pte_t *ptr, pte_t val)
{
mmu_update_t u;
@@ -96,7 +95,6 @@
BUG_ON(HYPERVISOR_mmu_update(&u, 1, NULL, DOMID_SELF) < 0);
}
#endif /* CONFIG_X86_64 */
-#endif /* CONFIG_XEN_SHADOW_MODE */
void xen_machphys_update(unsigned long mfn, unsigned long pfn)
{
@@ -181,7 +179,6 @@
#endif /* CONFIG_SMP */
-#ifndef CONFIG_XEN_SHADOW_MODE
void xen_pgd_pin(unsigned long ptr)
{
struct mmuext_op op;
@@ -253,7 +250,6 @@
BUG_ON(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0);
}
#endif /* CONFIG_X86_64 */
-#endif /* CONFIG_XEN_SHADOW_MODE */
void xen_set_ldt(unsigned long ptr, unsigned long len)
{
diff -r 1c69197d29b7 -r 754079886035
linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c
--- a/linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c Thu Feb 9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c Thu Feb 9 19:25:33 2006
@@ -402,7 +402,6 @@
kmem_cache_free(pgd_cache, pgd);
}
-#ifndef CONFIG_XEN_SHADOW_MODE
void make_lowmem_page_readonly(void *va, unsigned int feature)
{
pte_t *pte;
@@ -500,7 +499,6 @@
va = (void *)((unsigned long)va + PAGE_SIZE);
}
}
-#endif /* CONFIG_XEN_SHADOW_MODE */
static inline void pgd_walk_set_prot(void *pt, pgprot_t flags)
{
diff -r 1c69197d29b7 -r 754079886035 linux-2.6-xen-sparse/drivers/xen/Kconfig
--- a/linux-2.6-xen-sparse/drivers/xen/Kconfig Thu Feb 9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/drivers/xen/Kconfig Thu Feb 9 19:25:33 2006
@@ -123,13 +123,6 @@
help
The TPM-device frontend driver.
-config XEN_SHADOW_MODE
- bool "Fake shadow mode"
- default n
- help
- Fakes out a shadow mode kernel
-
-
config XEN_SCRUB_PAGES
bool "Scrub memory before freeing it to Xen"
default y
diff -r 1c69197d29b7 -r 754079886035
linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h
--- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h Thu Feb
9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h Thu Feb
9 19:25:33 2006
@@ -76,7 +76,6 @@
void xen_tlb_flush(void);
void xen_invlpg(unsigned long ptr);
-#ifndef CONFIG_XEN_SHADOW_MODE
void xen_l1_entry_update(pte_t *ptr, pte_t val);
void xen_l2_entry_update(pmd_t *ptr, pmd_t val);
void xen_l3_entry_update(pud_t *ptr, pud_t val); /* x86_64/PAE */
@@ -89,14 +88,6 @@
void xen_pmd_unpin(unsigned long ptr); /* x86_64 only */
void xen_pte_pin(unsigned long ptr);
void xen_pte_unpin(unsigned long ptr);
-#else
-#define xen_l1_entry_update(_p, _v) set_pte((_p), (_v))
-#define xen_l2_entry_update(_p, _v) set_pgd((_p), (_v))
-#define xen_pgd_pin(_p) ((void)0)
-#define xen_pgd_unpin(_p) ((void)0)
-#define xen_pte_pin(_p) ((void)0)
-#define xen_pte_unpin(_p) ((void)0)
-#endif
void xen_set_ldt(unsigned long ptr, unsigned long bytes);
void xen_machphys_update(unsigned long mfn, unsigned long pfn);
diff -r 1c69197d29b7 -r 754079886035
linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-2level.h
--- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-2level.h
Thu Feb 9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-2level.h
Thu Feb 9 19:25:33 2006
@@ -31,11 +31,7 @@
#define set_pte_atomic(pteptr, pteval) set_pte(pteptr,pteval)
-#ifndef CONFIG_XEN_SHADOW_MODE
#define set_pmd(pmdptr, pmdval) xen_l2_entry_update((pmdptr), (pmdval))
-#else
-#define set_pmd(pmdptr, pmdval) (*(pmdptr) = (pmdval))
-#endif
#define ptep_get_and_clear(mm,addr,xp) __pte_ma(xchg(&(xp)->pte_low, 0))
#define pte_same(a, b) ((a).pte_low == (b).pte_low)
diff -r 1c69197d29b7 -r 754079886035
linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h
--- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h
Thu Feb 9 17:35:15 2006
+++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h
Thu Feb 9 19:25:33 2006
@@ -83,17 +83,10 @@
} \
} while (0)
-#ifdef CONFIG_XEN_SHADOW_MODE
-# define set_pmd(pmdptr,pmdval) \
- set_64bit((unsigned long long *)(pmdptr),pmd_val(pmdval))
-# define set_pud(pudptr,pudval) \
- (*(pudptr) = (pudval))
-#else
-# define set_pmd(pmdptr,pmdval) \
+#define set_pmd(pmdptr,pmdval) \
xen_l2_entry_update((pmdptr), (pmdval))
-# define set_pud(pudptr,pudval) \
+#define set_pud(pudptr,pudval) \
xen_l3_entry_update((pudptr), (pudval))
-#endif
/*
* Pentium-II erratum A13: in PAE mode we explicitly have to flush
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|