|
@@ -61,8 +61,10 @@
|
|
|
#define segment_eq(a,b) ((a).ar4 == (b).ar4)
|
|
|
|
|
|
|
|
|
-#define __access_ok(addr,size) (1)
|
|
|
-
|
|
|
+static inline int __access_ok(const void *addr, unsigned long size)
|
|
|
+{
|
|
|
+ return 1;
|
|
|
+}
|
|
|
#define access_ok(type,addr,size) __access_ok(addr,size)
|
|
|
|
|
|
/*
|
|
@@ -206,25 +208,25 @@ extern int __put_user_bad(void) __attribute__((noreturn));
|
|
|
case 1: { \
|
|
|
unsigned char __x; \
|
|
|
__get_user_asm(__x, ptr, __gu_err); \
|
|
|
- (x) = (__typeof__(*(ptr))) __x; \
|
|
|
+ (x) = *(__typeof__(*(ptr)) *) &__x; \
|
|
|
break; \
|
|
|
}; \
|
|
|
case 2: { \
|
|
|
unsigned short __x; \
|
|
|
__get_user_asm(__x, ptr, __gu_err); \
|
|
|
- (x) = (__typeof__(*(ptr))) __x; \
|
|
|
+ (x) = *(__typeof__(*(ptr)) *) &__x; \
|
|
|
break; \
|
|
|
}; \
|
|
|
case 4: { \
|
|
|
unsigned int __x; \
|
|
|
__get_user_asm(__x, ptr, __gu_err); \
|
|
|
- (x) = (__typeof__(*(ptr))) __x; \
|
|
|
+ (x) = *(__typeof__(*(ptr)) *) &__x; \
|
|
|
break; \
|
|
|
}; \
|
|
|
case 8: { \
|
|
|
unsigned long long __x; \
|
|
|
__get_user_asm(__x, ptr, __gu_err); \
|
|
|
- (x) = (__typeof__(*(ptr))) __x; \
|
|
|
+ (x) = *(__typeof__(*(ptr)) *) &__x; \
|
|
|
break; \
|
|
|
}; \
|
|
|
default: \
|