* src and dst are best aligned to 64bits.
*/
unsigned int
-csum_partial_copy_from_user(const char *src, char *dst,
+csum_partial_copy_from_user(const char __user *src, char *dst,
int len, unsigned int isum, int *errp)
{
*errp = 0;
if (unlikely((unsigned long)src & 6)) {
while (((unsigned long)src & 6) && len >= 2) {
__u16 val16;
- *errp = __get_user(val16, (__u16 *)src);
+ *errp = __get_user(val16, (__u16 __user *)src);
if (*errp)
return isum;
*(__u16 *)dst = val16;
len -= 2;
}
}
- isum = csum_partial_copy_generic(src,dst,len,isum,errp,NULL);
+ isum = csum_partial_copy_generic((void *)src,dst,len,isum,errp,NULL);
if (likely(*errp == 0))
return isum;
}
* src and dst are best aligned to 64bits.
*/
unsigned int
-csum_partial_copy_to_user(const char *src, char *dst,
+csum_partial_copy_to_user(const char *src, char __user *dst,
int len, unsigned int isum, int *errp)
{
if (unlikely(!access_ok(VERIFY_WRITE, dst, len))) {
while (((unsigned long)dst & 6) && len >= 2) {
__u16 val16 = *(__u16 *)src;
isum = add32_with_carry(isum, val16);
- *errp = __put_user(val16, (__u16 *)dst);
+ *errp = __put_user(val16, (__u16 __user *)dst);
if (*errp)
return isum;
src += 2;
}
*errp = 0;
- return csum_partial_copy_generic(src,dst,len,isum,NULL,errp);
+ return csum_partial_copy_generic(src, (void *)dst,len,isum,NULL,errp);
}
EXPORT_SYMBOL(csum_partial_copy_to_user);