--- zzzz-none-000/linux-2.6.19.2/include/asm-i386/checksum.h 2007-01-10 19:10:37.000000000 +0000 +++ davinci-8020-5505/linux-2.6.19.2/include/asm-i386/checksum.h 2007-01-19 14:42:56.000000000 +0000 @@ -30,6 +30,12 @@ asmlinkage unsigned int csum_partial_copy_generic(const unsigned char *src, unsigned char *dst, int len, int sum, int *src_err_ptr, int *dst_err_ptr); +asmlinkage unsigned int csum_partial_copy_generic_to_user(const unsigned char *src, unsigned char *dst, + int len, int sum, int *src_err_ptr, int *dst_err_ptr); + +asmlinkage unsigned int csum_partial_copy_generic_from_user(const unsigned char *src, unsigned char *dst, + int len, int sum, int *src_err_ptr, int *dst_err_ptr); + /* * Note: when you get a NULL pointer exception here this means someone * passed in an incorrect kernel address to one of these functions. @@ -49,7 +55,7 @@ int len, int sum, int *err_ptr) { might_sleep(); - return csum_partial_copy_generic((__force unsigned char *)src, dst, + return csum_partial_copy_generic_from_user((__force unsigned char *)src, dst, len, sum, err_ptr, NULL); } @@ -183,7 +189,7 @@ { might_sleep(); if (access_ok(VERIFY_WRITE, dst, len)) - return csum_partial_copy_generic(src, (__force unsigned char *)dst, len, sum, NULL, err_ptr); + return csum_partial_copy_generic_to_user(src, (__force unsigned char *)dst, len, sum, NULL, err_ptr); if (len) *err_ptr = -EFAULT;