]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 May 2015 21:38:17 +0000 (23:38 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 May 2015 21:38:17 +0000 (23:38 +0200)
added patches:
nosave-consolidate-__nosave_-begin-end-in-asm-sections.h.patch

queue-3.10/nosave-consolidate-__nosave_-begin-end-in-asm-sections.h.patch [new file with mode: 0644]
queue-3.10/series

diff --git a/queue-3.10/nosave-consolidate-__nosave_-begin-end-in-asm-sections.h.patch b/queue-3.10/nosave-consolidate-__nosave_-begin-end-in-asm-sections.h.patch
new file mode 100644 (file)
index 0000000..2643fbf
--- /dev/null
@@ -0,0 +1,195 @@
+From 7f8998c7aef3ac9c5f3f2943e083dfa6302e90d0 Mon Sep 17 00:00:00 2001
+From: Geert Uytterhoeven <geert@linux-m68k.org>
+Date: Thu, 9 Oct 2014 15:30:30 -0700
+Subject: nosave: consolidate __nosave_{begin,end} in <asm/sections.h>
+
+From: Geert Uytterhoeven <geert@linux-m68k.org>
+
+commit 7f8998c7aef3ac9c5f3f2943e083dfa6302e90d0 upstream.
+
+The different architectures used their own (and different) declarations:
+
+    extern __visible const void __nosave_begin, __nosave_end;
+    extern const void __nosave_begin, __nosave_end;
+    extern long __nosave_begin, __nosave_end;
+
+Consolidate them using the first variant in <asm/sections.h>.
+
+Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
+Cc: Russell King <linux@arm.linux.org.uk>
+Cc: Ralf Baechle <ralf@linux-mips.org>
+Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Ingo Molnar <mingo@redhat.com>
+Cc: "H. Peter Anvin" <hpa@zytor.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/mips/include/asm/suspend.h   |    7 -------
+ arch/mips/power/cpu.c             |    2 +-
+ arch/powerpc/kernel/suspend.c     |    4 +---
+ arch/s390/kernel/suspend.c        |    6 +-----
+ arch/sh/include/asm/sections.h    |    1 -
+ arch/sparc/power/hibernate.c      |    4 +---
+ arch/unicore32/include/mach/pm.h  |    3 ---
+ arch/unicore32/kernel/hibernate.c |    1 +
+ arch/x86/power/hibernate_32.c     |    4 +---
+ arch/x86/power/hibernate_64.c     |    4 +---
+ include/asm-generic/sections.h    |    4 ++++
+ 11 files changed, 11 insertions(+), 29 deletions(-)
+
+--- a/arch/mips/include/asm/suspend.h
++++ /dev/null
+@@ -1,7 +0,0 @@
+-#ifndef __ASM_SUSPEND_H
+-#define __ASM_SUSPEND_H
+-
+-/* References to section boundaries */
+-extern const void __nosave_begin, __nosave_end;
+-
+-#endif /* __ASM_SUSPEND_H */
+--- a/arch/mips/power/cpu.c
++++ b/arch/mips/power/cpu.c
+@@ -7,7 +7,7 @@
+  * Author: Hu Hongbing <huhb@lemote.com>
+  *       Wu Zhangjin <wuzhangjin@gmail.com>
+  */
+-#include <asm/suspend.h>
++#include <asm/sections.h>
+ #include <asm/fpu.h>
+ #include <asm/dsp.h>
+--- a/arch/powerpc/kernel/suspend.c
++++ b/arch/powerpc/kernel/suspend.c
+@@ -9,9 +9,7 @@
+ #include <linux/mm.h>
+ #include <asm/page.h>
+-
+-/* References to section boundaries */
+-extern const void __nosave_begin, __nosave_end;
++#include <asm/sections.h>
+ /*
+  *    pfn_is_nosave - check if given pfn is in the 'nosave' section
+--- a/arch/s390/kernel/suspend.c
++++ b/arch/s390/kernel/suspend.c
+@@ -9,14 +9,10 @@
+ #include <linux/pfn.h>
+ #include <linux/suspend.h>
+ #include <linux/mm.h>
++#include <asm/sections.h>
+ #include <asm/ctl_reg.h>
+ /*
+- * References to section boundaries
+- */
+-extern const void __nosave_begin, __nosave_end;
+-
+-/*
+  * The restore of the saved pages in an hibernation image will set
+  * the change and referenced bits in the storage key for each page.
+  * Overindication of the referenced bits after an hibernation cycle
+--- a/arch/sh/include/asm/sections.h
++++ b/arch/sh/include/asm/sections.h
+@@ -3,7 +3,6 @@
+ #include <asm-generic/sections.h>
+-extern long __nosave_begin, __nosave_end;
+ extern long __machvec_start, __machvec_end;
+ extern char __uncached_start, __uncached_end;
+ extern char __start_eh_frame[], __stop_eh_frame[];
+--- a/arch/sparc/power/hibernate.c
++++ b/arch/sparc/power/hibernate.c
+@@ -9,11 +9,9 @@
+ #include <asm/hibernate.h>
+ #include <asm/visasm.h>
+ #include <asm/page.h>
++#include <asm/sections.h>
+ #include <asm/tlb.h>
+-/* References to section boundaries */
+-extern const void __nosave_begin, __nosave_end;
+-
+ struct saved_context saved_context;
+ /*
+--- a/arch/unicore32/include/mach/pm.h
++++ b/arch/unicore32/include/mach/pm.h
+@@ -36,8 +36,5 @@ extern int puv3_pm_enter(suspend_state_t
+ /* Defined in hibernate_asm.S */
+ extern int restore_image(pgd_t *resume_pg_dir, struct pbe *restore_pblist);
+-/* References to section boundaries */
+-extern const void __nosave_begin, __nosave_end;
+-
+ extern struct pbe *restore_pblist;
+ #endif
+--- a/arch/unicore32/kernel/hibernate.c
++++ b/arch/unicore32/kernel/hibernate.c
+@@ -18,6 +18,7 @@
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
+ #include <asm/pgalloc.h>
++#include <asm/sections.h>
+ #include <asm/suspend.h>
+ #include "mach/pm.h"
+--- a/arch/x86/power/hibernate_32.c
++++ b/arch/x86/power/hibernate_32.c
+@@ -13,13 +13,11 @@
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
+ #include <asm/mmzone.h>
++#include <asm/sections.h>
+ /* Defined in hibernate_asm_32.S */
+ extern int restore_image(void);
+-/* References to section boundaries */
+-extern const void __nosave_begin, __nosave_end;
+-
+ /* Pointer to the temporary resume page tables */
+ pgd_t *resume_pg_dir;
+--- a/arch/x86/power/hibernate_64.c
++++ b/arch/x86/power/hibernate_64.c
+@@ -17,11 +17,9 @@
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
+ #include <asm/mtrr.h>
++#include <asm/sections.h>
+ #include <asm/suspend.h>
+-/* References to section boundaries */
+-extern const void __nosave_begin, __nosave_end;
+-
+ /* Defined in hibernate_asm_64.S */
+ extern int restore_image(void);
+--- a/include/asm-generic/sections.h
++++ b/include/asm-generic/sections.h
+@@ -3,6 +3,8 @@
+ /* References to section boundaries */
++#include <linux/compiler.h>
++
+ extern char _text[], _stext[], _etext[];
+ extern char _data[], _sdata[], _edata[];
+ extern char __bss_start[], __bss_stop[];
+@@ -18,6 +20,8 @@ extern char __start_rodata[], __end_roda
+ /* Start and end of .ctors section - used for constructor calls. */
+ extern char __ctors_start[], __ctors_end[];
++extern __visible const void __nosave_begin, __nosave_end;
++
+ /* function descriptor handling (if any).  Override
+  * in asm/sections.h */
+ #ifndef dereference_function_descriptor
index 451ff4a2f466713c536afac4ddac5cf25257bb5b..66385afa5480a26c14416e5fe91fa43fa12e29d1 100644 (file)
@@ -63,3 +63,4 @@ lib-memzero_explicit-use-barrier-instead-of-optimizer_hide_var.patch
 wl18xx-show-rx_frames_per_rates-as-an-array-as-it-really-is.patch
 c6x-time-ensure-consistency-in-__init.patch
 memstick-mspro_block-add-missing-curly-braces.patch
+nosave-consolidate-__nosave_-begin-end-in-asm-sections.h.patch