rpms/kernel-xen-2.6/devel kernel.spec, 1.31, 1.32 linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch, 1.1, 1.2 linux-2.6-xen-0021-pvops-64-Use-paravirt_alloc_pd-instead-of-paravir.patch, 1.1, NONE linux-2.6-xen-0022-Xen-pin-immediately-L1-pagetables-MERGME.patch, 1.1, NONE
Mark McLoughlin (markmc)
fedora-extras-commits at redhat.com
Mon Apr 7 20:48:52 UTC 2008
Author: markmc
Update of /cvs/pkgs/rpms/kernel-xen-2.6/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv27784
Modified Files:
kernel.spec
linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch
Removed Files:
linux-2.6-xen-0021-pvops-64-Use-paravirt_alloc_pd-instead-of-paravir.patch
linux-2.6-xen-0022-Xen-pin-immediately-L1-pagetables-MERGME.patch
Log Message:
* Mon Apr 07 2008 Mark McLoughlin <markmc at redhat.com>
- Small fixup to pagetable-pinning fix
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel-xen-2.6/devel/kernel.spec,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- kernel.spec 7 Apr 2008 15:38:06 -0000 1.31
+++ kernel.spec 7 Apr 2008 20:48:14 -0000 1.32
@@ -688,8 +688,6 @@
Patch5017: linux-2.6-xen-0018-xen-x86_64-Add-64-bit-version-of-privcmd_hypercall.patch
Patch5018: linux-2.6-xen-0019-xen-x86_64-Only-define-load_user_cs_desc-on-32-bi.patch
Patch5019: linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch
-Patch5020: linux-2.6-xen-0021-pvops-64-Use-paravirt_alloc_pd-instead-of-paravir.patch
-Patch5021: linux-2.6-xen-0022-Xen-pin-immediately-L1-pagetables-MERGME.patch
# kernel-xen patches end
# Xen hypervisor patches (20000+)
@@ -1248,8 +1246,6 @@
ApplyPatch linux-2.6-xen-0019-xen-x86_64-Only-define-load_user_cs_desc-on-32-bi.patch
%ifarch x86_64
ApplyPatch linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch
-ApplyPatch linux-2.6-xen-0021-pvops-64-Use-paravirt_alloc_pd-instead-of-paravir.patch
-ApplyPatch linux-2.6-xen-0022-Xen-pin-immediately-L1-pagetables-MERGME.patch
%endif
# kernel-xen apply end
@@ -1859,6 +1855,9 @@
%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
%changelog
+* Mon Apr 07 2008 Mark McLoughlin <markmc at redhat.com>
+- Small fixup to pagetable-pinning fix
+
* Mon Apr 07 2008 Eduardo Habkost <ehabkost at redhat.com>
- Add x86_64 pagetable-pinning fixes (bug #440587)
linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch:
Index: linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel-xen-2.6/devel/linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch 4 Apr 2008 17:23:58 -0000 1.1
+++ linux-2.6-xen-0020-xen-x86_64-Initial-x86_64-support-for-Xen-paravirt_.patch 7 Apr 2008 20:48:14 -0000 1.2
@@ -1,9 +1,9 @@
-From 0fd8f984f8bfaca42bcd5958f835d01c4d59e80a Mon Sep 17 00:00:00 2001
+From 9a157353e9b1f9bc13b1eaf1a75608476fa2c7e2 Mon Sep 17 00:00:00 2001
From: Eduardo Habkost <ehabkost at redhat.com>
Date: Wed, 2 Apr 2008 18:17:24 +0100
Subject: [PATCH] xen x86_64: Initial x86_64 support for Xen paravirt_ops
-Taken from the xen-pvops-64-2.6.25-rc8-markmc1 tag.
+Taken from the xen-64-2008-04-07-0.1 tag.
Signed-off-by: Eduardo Habkost <ehabkost at redhat.com>
Signed-off-by: Mark McLoughlin <markmc at redhat.com>
@@ -37,7 +37,7 @@
arch/x86/xen/init.h | 20 ++
arch/x86/xen/init_32.c | 3 +
arch/x86/xen/init_64.c | 181 ++++++++++++
- arch/x86/xen/mmu.c | 447 ++++++++++++++++++++----------
+ arch/x86/xen/mmu.c | 454 +++++++++++++++++++++----------
arch/x86/xen/mmu.h | 47 ++--
arch/x86/xen/multicalls.c | 9 +-
arch/x86/xen/setup.c | 22 ++
@@ -75,7 +75,7 @@
include/xen/page.h | 34 ++-
init/main.c | 10 +
mm/slab.c | 8 +-
- 67 files changed, 2796 insertions(+), 677 deletions(-)
+ 67 files changed, 2803 insertions(+), 677 deletions(-)
create mode 100644 arch/x86/xen/entry.S
create mode 100644 arch/x86/xen/entry_32.S
create mode 100644 arch/x86/xen/entry_64.S
@@ -2888,7 +2888,7 @@
+
+
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
-index 2a054ef..31f0f4a 100644
+index 2a054ef..9480fc5 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -53,6 +53,8 @@
@@ -3462,7 +3462,7 @@
leave_mm(smp_processor_id());
/* If this cpu still has a stale cr3 reference, then make sure
-@@ -638,3 +729,75 @@ void xen_exit_mmap(struct mm_struct *mm)
+@@ -638,3 +729,82 @@ void xen_exit_mmap(struct mm_struct *mm)
spin_unlock(&mm->page_table_lock);
}
@@ -3495,6 +3495,13 @@
+ * being allocated.
+ */
+ make_lowmem_page_readonly(__va(PFN_PHYS(pfn)));
++
++ /* PTE is the only level we are really sure is right,
++ * by now. The other levels need to be correctly
++ * indicated by the pvops interface
++ */
++ if (level == PT_PTE)
++ pin_page(page, MMUEXT_PIN_L1_TABLE);
+ } else
+ /* make sure there are no stray mappings of
+ this page */
@@ -4883,7 +4890,7 @@
#ifdef __ASSEMBLY__
diff --git a/include/asm-x86/pgalloc_64.h b/include/asm-x86/pgalloc_64.h
-index 982e1cb..f473a67 100644
+index 982e1cb..6181290 100644
--- a/include/asm-x86/pgalloc_64.h
+++ b/include/asm-x86/pgalloc_64.h
@@ -2,6 +2,7 @@
@@ -4921,11 +4928,11 @@
+ set_pmd(pmd, __pmd(_PAGE_TABLE | __pa(pte))); \
+ } while (0)
+#define pud_populate(mm, pud, pmd) do { \
-+ paravirt_alloc_pt(mm, __pa(pmd) >> PAGE_SHIFT); \
++ paravirt_alloc_pd(mm, __pa(pmd) >> PAGE_SHIFT); \
+ set_pud(pud, __pud(_PAGE_TABLE | __pa(pmd))); \
+ } while (0)
+#define pgd_populate(mm, pgd, pud) do {\
-+ paravirt_alloc_pt(mm, __pa(pud) >> PAGE_SHIFT); \
++ paravirt_alloc_pd(mm, __pa(pud) >> PAGE_SHIFT); \
+ set_pgd(pgd, __pgd(_PAGE_TABLE | __pa(pud))); \
+ set_pgd(__user_pgd(pgd), __pgd(_PAGE_TABLE | __pa(pud))); \
+ } while (0)
@@ -4944,7 +4951,7 @@
{
- return (pmd_t *)get_zeroed_page(GFP_KERNEL|__GFP_REPEAT);
+ pmd_t *pmd = (pmd_t *)get_zeroed_page(GFP_KERNEL|__GFP_REPEAT);
-+ paravirt_alloc_pt(mm, __pa(pmd) >> PAGE_SHIFT);
++ paravirt_alloc_pd(mm, __pa(pmd) >> PAGE_SHIFT);
+ return pmd;
}
@@ -4952,7 +4959,7 @@
{
- return (pud_t *)get_zeroed_page(GFP_KERNEL|__GFP_REPEAT);
+ pud_t *pud = (pud_t *)get_zeroed_page(GFP_KERNEL|__GFP_REPEAT);
-+ paravirt_alloc_pt(mm, __pa(pud) >> PAGE_SHIFT);
++ paravirt_alloc_pd(mm, __pa(pud) >> PAGE_SHIFT);
+ return pud;
}
--- linux-2.6-xen-0021-pvops-64-Use-paravirt_alloc_pd-instead-of-paravir.patch DELETED ---
--- linux-2.6-xen-0022-Xen-pin-immediately-L1-pagetables-MERGME.patch DELETED ---
More information about the fedora-extras-commits
mailing list