From: David Howells Make the get_user macro cast the source pointer to an appropriate type for the specified size. Signed-off-by: David Howells Signed-off-by: Andrew Morton --- include/asm-frv/uaccess.h | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff -puN include/asm-frv/uaccess.h~frv-make-get_user-macro-cast-pointers include/asm-frv/uaccess.h --- devel/include/asm-frv/uaccess.h~frv-make-get_user-macro-cast-pointers 2006-01-06 22:58:35.000000000 -0800 +++ devel-akpm/include/asm-frv/uaccess.h 2006-01-06 22:58:35.000000000 -0800 @@ -180,16 +180,16 @@ do { \ \ switch (sizeof(*(ptr))) { \ case 1: \ - __get_user_asm(__gu_err, __gu_val, ptr, "ub", "=r"); \ + __get_user_asm(__gu_err, *(u8*)&__gu_val, ptr, "ub", "=r"); \ break; \ case 2: \ - __get_user_asm(__gu_err, __gu_val, ptr, "uh", "=r"); \ + __get_user_asm(__gu_err, *(u16*)&__gu_val, ptr, "uh", "=r"); \ break; \ case 4: \ - __get_user_asm(__gu_err, __gu_val, ptr, "", "=r"); \ + __get_user_asm(__gu_err, *(u32*)&__gu_val, ptr, "", "=r"); \ break; \ case 8: \ - __get_user_asm(__gu_err, __gu_val, ptr, "d", "=e"); \ + __get_user_asm(__gu_err, *(u64*)&__gu_val, ptr, "d", "=e"); \ break; \ default: \ __gu_err = __get_user_bad(); \ _