VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / include / asm-i386 / checksum.h
index 1afe056..96e4b2d 100644 (file)
@@ -43,10 +43,10 @@ unsigned int csum_partial_copy_nocheck ( const char *src, char *dst,
 }
 
 static __inline__
-unsigned int csum_partial_copy_from_user ( const char *src, char *dst,
+unsigned int csum_partial_copy_from_user ( const char __user *src, char *dst,
                                                int len, int sum, int *err_ptr)
 {
-       return csum_partial_copy_generic ( src, dst, len, sum, err_ptr, NULL);
+       return csum_partial_copy_generic ( (__force char *)src, dst, len, sum, err_ptr, NULL);
 }
 
 /*
@@ -172,11 +172,13 @@ static __inline__ unsigned short int csum_ipv6_magic(struct in6_addr *saddr,
  *     Copy and checksum to user
  */
 #define HAVE_CSUM_COPY_USER
-static __inline__ unsigned int csum_and_copy_to_user(const char *src, char *dst,
-                                   int len, int sum, int *err_ptr)
+static __inline__ unsigned int csum_and_copy_to_user(const char *src, 
+                                                    char __user *dst,
+                                                    int len, int sum, 
+                                                    int *err_ptr)
 {
        if (access_ok(VERIFY_WRITE, dst, len))
-               return csum_partial_copy_generic(src, dst, len, sum, NULL, err_ptr);
+               return csum_partial_copy_generic(src, (__force char *)dst, len, sum, NULL, err_ptr);
 
        if (len)
                *err_ptr = -EFAULT;