diff options
author | Jonas Bonn <jonas@southpole.se> | 2012-05-27 10:25:47 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-27 21:00:32 -0700 |
commit | b48b2c3e50433ff6f7e46186daa7f986bd960215 (patch) | |
tree | 9a10b2130582f99df5ae7eae0b959425e791118c /arch/openrisc/include/asm/uaccess.h | |
parent | 1629372caaaf7ef744d3b983be56b99468a68ff8 (diff) | |
download | blackbird-op-linux-b48b2c3e50433ff6f7e46186daa7f986bd960215.tar.gz blackbird-op-linux-b48b2c3e50433ff6f7e46186daa7f986bd960215.zip |
openrisc: use generic strnlen_user() function
The generic version is both easier to support and more correct.
Signed-off-by: Jonas Bonn <jonas@southpole.se>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/openrisc/include/asm/uaccess.h')
-rw-r--r-- | arch/openrisc/include/asm/uaccess.h | 30 |
1 files changed, 2 insertions, 28 deletions
diff --git a/arch/openrisc/include/asm/uaccess.h b/arch/openrisc/include/asm/uaccess.h index 04b93de92636..ab2e7a198a4c 100644 --- a/arch/openrisc/include/asm/uaccess.h +++ b/arch/openrisc/include/asm/uaccess.h @@ -318,33 +318,7 @@ clear_user(void *addr, unsigned long size) extern long strncpy_from_user(char *dest, const char __user *src, long count); -/* - * Return the size of a string (including the ending 0) - * - * Return 0 for error - */ - -extern int __strnlen_user(const char *str, long len, unsigned long top); - -/* - * Returns the length of the string at str (including the null byte), - * or 0 if we hit a page we can't access, - * or something > len if we didn't find a null byte. - * - * The `top' parameter to __strnlen_user is to make sure that - * we can never overflow from the user area into kernel space. - */ -static inline long strnlen_user(const char __user *str, long len) -{ - unsigned long top = (unsigned long)get_fs(); - unsigned long res = 0; - - if (__addr_ok(str)) - res = __strnlen_user(str, len, top); - - return res; -} - -#define strlen_user(str) strnlen_user(str, TASK_SIZE-1) +extern __must_check long strlen_user(const char __user *str); +extern __must_check long strnlen_user(const char __user *str, long n); #endif /* __ASM_OPENRISC_UACCESS_H */ |