Patch "sparc: Fix -Wstringop-overflow warning" has been added to the 4.9-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
sparc: Fix -Wstringop-overflow warning
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
sparc-fix-wstringop-overflow-warning.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Wed May 31 16:49:17 JST 2017
From: Orlando Arias <[email protected]>
Date: Tue, 16 May 2017 15:34:00 -0400
Subject: sparc: Fix -Wstringop-overflow warning
From: Orlando Arias <[email protected]>
[ Upstream commit deba804c90642c8ed0f15ac1083663976d578f54 ]
Greetings,
GCC 7 introduced the -Wstringop-overflow flag to detect buffer overflows in calls to string handling functions [1][2]. Due to the way ``empty_zero_page'' is declared in arch/sparc/include/setup.h, this causes a warning to trigger at compile time in the function mem_init(), which is subsequently converted to an error. The ensuing patch fixes this issue and aligns the declaration of empty_zero_page to that of other architectures. Thank you.
Cheers,
Orlando.
[1] https://gcc.gnu.org/ml/gcc-patches/2016-10/msg02308.html
[2] https://gcc.gnu.org/gcc-7/changes.html
--------------------------------------------------------------------------------
--- arch/sparc/include/asm/pgtable_32.h | 4 ++-- arch/sparc/include/asm/setup.h | 2 +- arch/sparc/mm/init_32.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-)
arch/sparc/include/asm/pgtable_32.h +2 -2
@@ -91,9 +91,9 @@ extern unsigned long pfn_base;* ZERO_PAGE is a global shared page that is always zero: used * for zero-mapped memory areas etc.. */ -extern unsigned long empty_zero_page; +extern unsigned long empty_zero_page[PAGE_SIZE /sizeof (unsigned long )]; -#define ZERO_PAGE (vaddr) (virt_to_page(&empty_zero_page)) +#define ZERO_PAGE (vaddr) (virt_to_page(empty_zero_page))/* * In general all page table modifications should use the V8 atomic
arch/sparc/include/asm/setup.h +1 -1
@@ -16,7 +16,7 @@ extern char reboot_command[];*/ extern unsigned char boot_cpu_id; -extern unsigned long empty_zero_page; +extern unsigned long empty_zero_page[PAGE_SIZE /sizeof (unsigned long )];extern int serial_console;static inline int con_is_present (void )
arch/sparc/mm/init_32.c +1 -1
@@ -301,7 +301,7 @@ void __init mem_init(void)/* Saves us work later. */ -memset ((void *)&empty_zero_page,0 ,PAGE_SIZE ); +memset ((void *)empty_zero_page,0 ,PAGE_SIZE ); i = last_valid_pfn >> ((20 -PAGE_SHIFT ) +5 ); i +=1 ;
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/sparc-fix-wstringop-overflow-warning.patch