diff options
Diffstat (limited to 'arch/x86/lib/usercopy_64.c')
| -rw-r--r-- | arch/x86/lib/usercopy_64.c | 49 | 
1 files changed, 0 insertions, 49 deletions
diff --git a/arch/x86/lib/usercopy_64.c b/arch/x86/lib/usercopy_64.c index b7c2849ffb6..0d0326f388c 100644 --- a/arch/x86/lib/usercopy_64.c +++ b/arch/x86/lib/usercopy_64.c @@ -9,55 +9,6 @@  #include <asm/uaccess.h>  /* - * Copy a null terminated string from userspace. - */ - -#define __do_strncpy_from_user(dst,src,count,res)			   \ -do {									   \ -	long __d0, __d1, __d2;						   \ -	might_fault();							   \ -	__asm__ __volatile__(						   \ -		"	testq %1,%1\n"					   \ -		"	jz 2f\n"					   \ -		"0:	lodsb\n"					   \ -		"	stosb\n"					   \ -		"	testb %%al,%%al\n"				   \ -		"	jz 1f\n"					   \ -		"	decq %1\n"					   \ -		"	jnz 0b\n"					   \ -		"1:	subq %1,%0\n"					   \ -		"2:\n"							   \ -		".section .fixup,\"ax\"\n"				   \ -		"3:	movq %5,%0\n"					   \ -		"	jmp 2b\n"					   \ -		".previous\n"						   \ -		_ASM_EXTABLE(0b,3b)					   \ -		: "=&r"(res), "=&c"(count), "=&a" (__d0), "=&S" (__d1),	   \ -		  "=&D" (__d2)						   \ -		: "i"(-EFAULT), "0"(count), "1"(count), "3"(src), "4"(dst) \ -		: "memory");						   \ -} while (0) - -long -__strncpy_from_user(char *dst, const char __user *src, long count) -{ -	long res; -	__do_strncpy_from_user(dst, src, count, res); -	return res; -} -EXPORT_SYMBOL(__strncpy_from_user); - -long -strncpy_from_user(char *dst, const char __user *src, long count) -{ -	long res = -EFAULT; -	if (access_ok(VERIFY_READ, src, 1)) -		return __strncpy_from_user(dst, src, count); -	return res; -} -EXPORT_SYMBOL(strncpy_from_user); - -/*   * Zero Userspace   */  |