aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile
diff options
context:
space:
mode:
Diffstat (limited to 'arch/tile')
-rw-r--r--arch/tile/Kconfig8
-rw-r--r--arch/tile/include/asm/uaccess.h7
-rw-r--r--arch/tile/lib/uaccess.c8
3 files changed, 7 insertions, 16 deletions
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 25877aebc685..0f712f4e1b33 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -19,6 +19,7 @@ config TILE
19 select HAVE_SYSCALL_WRAPPERS if TILEGX 19 select HAVE_SYSCALL_WRAPPERS if TILEGX
20 select VIRT_TO_BUS 20 select VIRT_TO_BUS
21 select SYS_HYPERVISOR 21 select SYS_HYPERVISOR
22 select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
22 select ARCH_HAVE_NMI_SAFE_CMPXCHG 23 select ARCH_HAVE_NMI_SAFE_CMPXCHG
23 select GENERIC_CLOCKEVENTS 24 select GENERIC_CLOCKEVENTS
24 select MODULES_USE_ELF_RELA 25 select MODULES_USE_ELF_RELA
@@ -114,13 +115,6 @@ config STRICT_DEVMEM
114config SMP 115config SMP
115 def_bool y 116 def_bool y
116 117
117# Allow checking for compile-time determined overflow errors in
118# copy_from_user(). There are still unprovable places in the
119# generic code as of 2.6.34, so this option is not really compatible
120# with -Werror, which is more useful in general.
121config DEBUG_COPY_FROM_USER
122 def_bool n
123
124config HVC_TILE 118config HVC_TILE
125 depends on TTY 119 depends on TTY
126 select HVC_DRIVER 120 select HVC_DRIVER
diff --git a/arch/tile/include/asm/uaccess.h b/arch/tile/include/asm/uaccess.h
index 9ab078a4605d..8a082bc6bca5 100644
--- a/arch/tile/include/asm/uaccess.h
+++ b/arch/tile/include/asm/uaccess.h
@@ -395,7 +395,12 @@ _copy_from_user(void *to, const void __user *from, unsigned long n)
395 return n; 395 return n;
396} 396}
397 397
398#ifdef CONFIG_DEBUG_COPY_FROM_USER 398#ifdef CONFIG_DEBUG_STRICT_USER_COPY_CHECKS
399/*
400 * There are still unprovable places in the generic code as of 2.6.34, so this
401 * option is not really compatible with -Werror, which is more useful in
402 * general.
403 */
399extern void copy_from_user_overflow(void) 404extern void copy_from_user_overflow(void)
400 __compiletime_warning("copy_from_user() size is not provably correct"); 405 __compiletime_warning("copy_from_user() size is not provably correct");
401 406
diff --git a/arch/tile/lib/uaccess.c b/arch/tile/lib/uaccess.c
index f8d398c9ee7f..030abe3ee4f1 100644
--- a/arch/tile/lib/uaccess.c
+++ b/arch/tile/lib/uaccess.c
@@ -22,11 +22,3 @@ int __range_ok(unsigned long addr, unsigned long size)
22 is_arch_mappable_range(addr, size)); 22 is_arch_mappable_range(addr, size));
23} 23}
24EXPORT_SYMBOL(__range_ok); 24EXPORT_SYMBOL(__range_ok);
25
26#ifdef CONFIG_DEBUG_COPY_FROM_USER
27void copy_from_user_overflow(void)
28{
29 WARN(1, "Buffer overflow detected!\n");
30}
31EXPORT_SYMBOL(copy_from_user_overflow);
32#endif