lkml.org 
[lkml]   [2017]   [Aug]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH] [RFC] ARM: vdso: work around gcc-8 warning
Date
gcc-8 correctly points out that reading four bytes from a pointer to a
'char' variable is wrong

arch/arm/kernel/vdso.c: In function 'vdso_init':
arch/arm/kernel/vdso.c:200:6: error: '__builtin_memcmp_eq' reading 4 bytes from a region of size 1 [-Werror=stringop-overflow=]

However, in this case the variable just stands for the beginning of the
vdso and is not actually a 'char', so the code is doing what it is meant
to do.

Not sure what the best solution for this is, changing the hack to
declare the variable as 'int' instead makes the warning go away.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/include/asm/vdso.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/include/asm/vdso.h b/arch/arm/include/asm/vdso.h
index d0295f1dd1a3..eff7d3a1d1ce 100644
--- a/arch/arm/include/asm/vdso.h
+++ b/arch/arm/include/asm/vdso.h
@@ -11,7 +11,7 @@ struct mm_struct;

void arm_install_vdso(struct mm_struct *mm, unsigned long addr);

-extern char vdso_start, vdso_end;
+extern int vdso_start, vdso_end;

extern unsigned int vdso_total_pages;

--
2.9.0
\
 
 \ /
  Last update: 2017-08-23 16:07    [W:0.039 / U:1.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site