[kernel] r16130 - in dists/sid/linux-2.6/debian: . patches/bugfix/all/stable patches/features/all/openvz patches/series
Ben Hutchings
benh at alioth.debian.org
Fri Aug 13 22:16:00 UTC 2010
Author: benh
Date: Fri Aug 13 22:15:56 2010
New Revision: 16130
Log:
Add stable 2.6.32.19
Adjust context in openvz.patch.
Added:
dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19.patch
- copied, changed from r16129, dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19-rc1
Deleted:
dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19-rc1
Modified:
dists/sid/linux-2.6/debian/changelog
dists/sid/linux-2.6/debian/patches/features/all/openvz/openvz.patch
dists/sid/linux-2.6/debian/patches/series/21
Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog Fri Aug 13 03:29:13 2010 (r16129)
+++ dists/sid/linux-2.6/debian/changelog Fri Aug 13 22:15:56 2010 (r16130)
@@ -1,7 +1,7 @@
linux-2.6 (2.6.32-21) UNRELEASED; urgency=low
[ Ben Hutchings ]
- * Add stable 2.6.32.19-rc1
+ * Add stable 2.6.32.19:
- Revert ABI change in sched.h
-- Ben Hutchings <ben at decadent.org.uk> Thu, 12 Aug 2010 23:20:55 +0100
Copied and modified: dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19.patch (from r16129, dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19-rc1)
==============================================================================
--- dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19-rc1 Fri Aug 13 03:29:13 2010 (r16129, copy source)
+++ dists/sid/linux-2.6/debian/patches/bugfix/all/stable/2.6.32.19.patch Fri Aug 13 22:15:56 2010 (r16130)
@@ -1,3 +1,5 @@
+diff --git a/Makefile b/Makefile
+index e86dbf7..64e538c 100644
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 1c4119c..e516aa2 100644
--- a/arch/arm/Kconfig
@@ -820,6 +822,22 @@
vsyscall_gtod_data.clock.shift = clock->shift;
vsyscall_gtod_data.wall_time_sec = wall_time->tv_sec;
vsyscall_gtod_data.wall_time_nsec = wall_time->tv_nsec;
+diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
+index f4cee90..1739358 100644
+--- a/arch/x86/mm/fault.c
++++ b/arch/x86/mm/fault.c
+@@ -801,8 +801,10 @@ do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address,
+ up_read(&mm->mmap_sem);
+
+ /* Kernel mode? Handle exceptions or die: */
+- if (!(error_code & PF_USER))
++ if (!(error_code & PF_USER)) {
+ no_context(regs, error_code, address);
++ return;
++ }
+
+ /* User-space => ok to do another page fault: */
+ if (is_prefetch(regs, error_code, address))
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index 5a4398a..7d095ad 100644
--- a/arch/x86/mm/init_64.c
@@ -8549,6 +8567,49 @@
/*
* Torn down by someone else?
+diff --git a/mm/memory.c b/mm/memory.c
+index 348e206..76d1b21 100644
+--- a/mm/memory.c
++++ b/mm/memory.c
+@@ -2630,6 +2630,26 @@ out_release:
+ }
+
+ /*
++ * This is like a special single-page "expand_downwards()",
++ * except we must first make sure that 'address-PAGE_SIZE'
++ * doesn't hit another vma.
++ *
++ * The "find_vma()" will do the right thing even if we wrap
++ */
++static inline int check_stack_guard_page(struct vm_area_struct *vma, unsigned long address)
++{
++ address &= PAGE_MASK;
++ if ((vma->vm_flags & VM_GROWSDOWN) && address == vma->vm_start) {
++ address -= PAGE_SIZE;
++ if (find_vma(vma->vm_mm, address) != vma)
++ return -ENOMEM;
++
++ expand_stack(vma, address);
++ }
++ return 0;
++}
++
++/*
+ * We enter with non-exclusive mmap_sem (to exclude vma changes,
+ * but allow concurrent faults), and pte mapped but not yet locked.
+ * We return with mmap_sem still held, but pte unmapped and unlocked.
+@@ -2642,6 +2662,11 @@ static int do_anonymous_page(struct mm_struct *mm, struct vm_area_struct *vma,
+ spinlock_t *ptl;
+ pte_t entry;
+
++ if (check_stack_guard_page(vma, address) < 0) {
++ pte_unmap(page_table);
++ return VM_FAULT_SIGBUS;
++ }
++
+ if (!(flags & FAULT_FLAG_WRITE)) {
+ entry = pte_mkspecial(pfn_pte(my_zero_pfn(address),
+ vma->vm_page_prot));
diff --git a/mm/swapfile.c b/mm/swapfile.c
index 9c590ee..270e136 100644
--- a/mm/swapfile.c
Modified: dists/sid/linux-2.6/debian/patches/features/all/openvz/openvz.patch
==============================================================================
--- dists/sid/linux-2.6/debian/patches/features/all/openvz/openvz.patch Fri Aug 13 03:29:13 2010 (r16129)
+++ dists/sid/linux-2.6/debian/patches/features/all/openvz/openvz.patch Fri Aug 13 22:15:56 2010 (r16130)
@@ -76738,8 +76738,8 @@
pte_t entry;
+ struct page_beancounter *pbc = NULL;
- if (!(flags & FAULT_FLAG_WRITE)) {
- entry = pte_mkspecial(pfn_pte(my_zero_pfn(address),
+ if (check_stack_guard_page(vma, address) < 0) {
+ pte_unmap(page_table);
@@ -2645,6 +2732,9 @@ static int do_anonymous_page(struct mm_struct *mm, struct vm_area_struct *vma,
/* Allocate our own private page. */
pte_unmap(page_table);
Modified: dists/sid/linux-2.6/debian/patches/series/21
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/21 Fri Aug 13 03:29:13 2010 (r16129)
+++ dists/sid/linux-2.6/debian/patches/series/21 Fri Aug 13 22:15:56 2010 (r16130)
@@ -1,6 +1,6 @@
- bugfix/all/ext4-fix-freeze-deadlock-under-IO.patch
- features/all/USB-option-Use-generic-USB-wwan-code-2.patch
-+ bugfix/all/stable/2.6.32.19-rc1
++ bugfix/all/stable/2.6.32.19.patch
+ debian/fs-buffer.c-Avoid-ABI-change-in-2.6.32.19.patch
+ debian/revert-sched-cputime-Introduce-thread_group_times.patch
+ features/all/USB-option-Use-generic-USB-wwan-code-3.patch
More information about the Kernel-svn-changes
mailing list