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