Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
at v2.6.26-rc6 34 lines 826 B view raw
1#ifndef __ASM_SH_UACCESS_H 2#define __ASM_SH_UACCESS_H 3 4#ifdef CONFIG_SUPERH32 5# include "uaccess_32.h" 6#else 7# include "uaccess_64.h" 8#endif 9 10static inline unsigned long 11copy_from_user(void *to, const void __user *from, unsigned long n) 12{ 13 unsigned long __copy_from = (unsigned long) from; 14 __kernel_size_t __copy_size = (__kernel_size_t) n; 15 16 if (__copy_size && __access_ok(__copy_from, __copy_size)) 17 return __copy_user(to, from, __copy_size); 18 19 return __copy_size; 20} 21 22static inline unsigned long 23copy_to_user(void __user *to, const void *from, unsigned long n) 24{ 25 unsigned long __copy_to = (unsigned long) to; 26 __kernel_size_t __copy_size = (__kernel_size_t) n; 27 28 if (__copy_size && __access_ok(__copy_to, __copy_size)) 29 return __copy_user(to, from, __copy_size); 30 31 return __copy_size; 32} 33 34#endif /* __ASM_SH_UACCESS_H */