[kernel] r15391 - dists/sid/linux-2.6/debian/patches/features/all/xen
Ben Hutchings
benh at alioth.debian.org
Tue Mar 16 01:49:15 UTC 2010
Author: benh
Date: Tue Mar 16 01:49:13 2010
New Revision: 15391
Log:
Remove highmem PTE workaround, included in 2.6.32.10
Modified:
dists/sid/linux-2.6/debian/patches/features/all/xen/pvops.patch
Modified: dists/sid/linux-2.6/debian/patches/features/all/xen/pvops.patch
==============================================================================
--- dists/sid/linux-2.6/debian/patches/features/all/xen/pvops.patch Tue Mar 16 01:44:04 2010 (r15390)
+++ dists/sid/linux-2.6/debian/patches/features/all/xen/pvops.patch Tue Mar 16 01:49:13 2010 (r15391)
@@ -2972,14 +2972,6 @@
#include <xen/interface/xen.h>
#include <xen/interface/version.h>
#include <xen/interface/physdev.h>
-@@ -48,6 +49,7 @@
- #include <asm/traps.h>
- #include <asm/setup.h>
- #include <asm/desc.h>
-+#include <asm/pgalloc.h>
- #include <asm/pgtable.h>
- #include <asm/tlbflush.h>
- #include <asm/reboot.h>
@@ -65,6 +67,11 @@ DEFINE_PER_CPU(struct vcpu_info, xen_vcpu_info);
enum xen_domain_type xen_domain_type = XEN_NATIVE;
EXPORT_SYMBOL_GPL(xen_domain_type);
@@ -3137,19 +3129,6 @@
/* Install Xen paravirt ops */
pv_info = xen_info;
pv_init_ops = xen_init_ops;
-@@ -1085,6 +1124,12 @@ asmlinkage void __init xen_start_kernel(void)
-
- xen_init_mmu_ops();
-
-+ /*
-+ * Prevent page tables from being allocated in highmem, even
-+ * if CONFIG_HIGHPTE is enabled.
-+ */
-+ __userpte_alloc_gfp &= ~__GFP_HIGHMEM;
-+
- /* Prevent unwanted bits from being set in PTEs. */
- __supported_pte_mask &= ~_PAGE_GLOBAL;
- if (!xen_initial_domain())
@@ -1137,6 +1182,8 @@ asmlinkage void __init xen_start_kernel(void)
pgd = (pgd_t *)xen_start_info->pt_base;
@@ -3435,27 +3414,6 @@
static void xen_pgd_free(struct mm_struct *mm, pgd_t *pgd)
{
#ifdef CONFIG_X86_64
-@@ -1432,14 +1552,15 @@ static void *xen_kmap_atomic_pte(struct page *page, enum km_type type)
- {
- pgprot_t prot = PAGE_KERNEL;
-
-+ /*
-+ * We disable highmem allocations for page tables so we should never
-+ * see any calls to kmap_atomic_pte on a highmem page.
-+ */
-+ BUG_ON(PageHighMem(page));
-+
- if (PagePinned(page))
- prot = PAGE_KERNEL_RO;
-
-- if (0 && PageHighMem(page))
-- printk("mapping highpte %lx type %d prot %s\n",
-- page_to_pfn(page), type,
-- (unsigned long)pgprot_val(prot) & _PAGE_RW ? "WRITE" : "READ");
--
- return kmap_atomic_prot(page, type, prot);
- }
- #endif
@@ -1447,10 +1568,17 @@ static void *xen_kmap_atomic_pte(struct page *page, enum km_type type)
#ifdef CONFIG_X86_32
static __init pte_t mask_rw_pte(pte_t *ptep, pte_t pte)
More information about the Kernel-svn-changes
mailing list