summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/x86_64/lib/csum-wrappers.c4
-rw-r--r--arch/x86_64/lib/usercopy.c2
-rw-r--r--include/asm-i386/checksum.h6
-rw-r--r--include/asm-x86_64/i387.h2
4 files changed, 7 insertions, 7 deletions
diff --git a/arch/x86_64/lib/csum-wrappers.c b/arch/x86_64/lib/csum-wrappers.c
index a8e4c189f9eb..c5b166224045 100644
--- a/arch/x86_64/lib/csum-wrappers.c
+++ b/arch/x86_64/lib/csum-wrappers.c
@@ -43,7 +43,7 @@ csum_partial_copy_from_user(const char __user *src, char *dst,
len -= 2;
}
}
- isum = csum_partial_copy_generic((void *)src,dst,len,isum,errp,NULL);
+ isum = csum_partial_copy_generic((__force void *)src,dst,len,isum,errp,NULL);
if (likely(*errp == 0))
return isum;
}
@@ -88,7 +88,7 @@ csum_partial_copy_to_user(const char *src, char __user *dst,
}
*errp = 0;
- return csum_partial_copy_generic(src, (void *)dst,len,isum,NULL,errp);
+ return csum_partial_copy_generic(src, (void __force *)dst,len,isum,NULL,errp);
}
EXPORT_SYMBOL(csum_partial_copy_to_user);
diff --git a/arch/x86_64/lib/usercopy.c b/arch/x86_64/lib/usercopy.c
index c83825e5c956..a17c85c5b769 100644
--- a/arch/x86_64/lib/usercopy.c
+++ b/arch/x86_64/lib/usercopy.c
@@ -145,7 +145,7 @@ long strlen_user(const char __user *s)
unsigned long copy_in_user(void __user *to, const void __user *from, unsigned len)
{
if (access_ok(VERIFY_WRITE, to, len) && access_ok(VERIFY_READ, from, len)) {
- return copy_user_generic((void *)to, (void *)from, len);
+ return copy_user_generic((__force void *)to, (__force void *)from, len);
}
return len;
}
diff --git a/include/asm-i386/checksum.h b/include/asm-i386/checksum.h
index d62e8b7a91cf..96e4b2df8a3f 100644
--- a/include/asm-i386/checksum.h
+++ b/include/asm-i386/checksum.h
@@ -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);
}
/*
@@ -178,7 +178,7 @@ static __inline__ unsigned int csum_and_copy_to_user(const char *src,
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;
diff --git a/include/asm-x86_64/i387.h b/include/asm-x86_64/i387.h
index 10638b85021a..229401824d1b 100644
--- a/include/asm-x86_64/i387.h
+++ b/include/asm-x86_64/i387.h
@@ -138,7 +138,7 @@ static inline void save_init_fpu( struct task_struct *tsk )
*/
static inline int restore_i387(struct _fpstate __user *buf)
{
- return restore_fpu_checking((struct i387_fxsave_struct *)buf);
+ return restore_fpu_checking((__force struct i387_fxsave_struct *)buf);
}
#endif /* __ASM_X86_64_I387_H */