diff options
| -rw-r--r-- | include/asm-powerpc/uaccess.h | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/include/asm-powerpc/uaccess.h b/include/asm-powerpc/uaccess.h index 1a0736f8803f..bd0fb8495154 100644 --- a/include/asm-powerpc/uaccess.h +++ b/include/asm-powerpc/uaccess.h | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | 6 | ||
| 7 | #include <linux/sched.h> | 7 | #include <linux/sched.h> |
| 8 | #include <linux/errno.h> | 8 | #include <linux/errno.h> |
| 9 | #include <asm/asm-compat.h> | ||
| 9 | #include <asm/processor.h> | 10 | #include <asm/processor.h> |
| 10 | #include <asm/page.h> | 11 | #include <asm/page.h> |
| 11 | 12 | ||
| @@ -141,12 +142,11 @@ extern long __put_user_bad(void); | |||
| 141 | " b 2b\n" \ | 142 | " b 2b\n" \ |
| 142 | ".previous\n" \ | 143 | ".previous\n" \ |
| 143 | ".section __ex_table,\"a\"\n" \ | 144 | ".section __ex_table,\"a\"\n" \ |
| 144 | " .balign %5\n" \ | 145 | PPC_LONG_ALIGN "\n" \ |
| 145 | PPC_LONG "1b,3b\n" \ | 146 | PPC_LONG "1b,3b\n" \ |
| 146 | ".previous" \ | 147 | ".previous" \ |
| 147 | : "=r" (err) \ | 148 | : "=r" (err) \ |
| 148 | : "r" (x), "b" (addr), "i" (-EFAULT), "0" (err),\ | 149 | : "r" (x), "b" (addr), "i" (-EFAULT), "0" (err)) |
| 149 | "i"(sizeof(unsigned long))) | ||
| 150 | 150 | ||
| 151 | #ifdef __powerpc64__ | 151 | #ifdef __powerpc64__ |
| 152 | #define __put_user_asm2(x, ptr, retval) \ | 152 | #define __put_user_asm2(x, ptr, retval) \ |
| @@ -162,13 +162,12 @@ extern long __put_user_bad(void); | |||
| 162 | " b 3b\n" \ | 162 | " b 3b\n" \ |
| 163 | ".previous\n" \ | 163 | ".previous\n" \ |
| 164 | ".section __ex_table,\"a\"\n" \ | 164 | ".section __ex_table,\"a\"\n" \ |
| 165 | " .balign %5\n" \ | 165 | PPC_LONG_ALIGN "\n" \ |
| 166 | PPC_LONG "1b,4b\n" \ | 166 | PPC_LONG "1b,4b\n" \ |
| 167 | PPC_LONG "2b,4b\n" \ | 167 | PPC_LONG "2b,4b\n" \ |
| 168 | ".previous" \ | 168 | ".previous" \ |
| 169 | : "=r" (err) \ | 169 | : "=r" (err) \ |
| 170 | : "r" (x), "b" (addr), "i" (-EFAULT), "0" (err),\ | 170 | : "r" (x), "b" (addr), "i" (-EFAULT), "0" (err)) |
| 171 | "i"(sizeof(unsigned long))) | ||
| 172 | #endif /* __powerpc64__ */ | 171 | #endif /* __powerpc64__ */ |
| 173 | 172 | ||
| 174 | #define __put_user_size(x, ptr, size, retval) \ | 173 | #define __put_user_size(x, ptr, size, retval) \ |
| @@ -226,12 +225,11 @@ extern long __get_user_bad(void); | |||
| 226 | " b 2b\n" \ | 225 | " b 2b\n" \ |
| 227 | ".previous\n" \ | 226 | ".previous\n" \ |
| 228 | ".section __ex_table,\"a\"\n" \ | 227 | ".section __ex_table,\"a\"\n" \ |
| 229 | " .balign %5\n" \ | 228 | PPC_LONG_ALIGN "\n" \ |
| 230 | PPC_LONG "1b,3b\n" \ | 229 | PPC_LONG "1b,3b\n" \ |
| 231 | ".previous" \ | 230 | ".previous" \ |
| 232 | : "=r" (err), "=r" (x) \ | 231 | : "=r" (err), "=r" (x) \ |
| 233 | : "b" (addr), "i" (-EFAULT), "0" (err), \ | 232 | : "b" (addr), "i" (-EFAULT), "0" (err)) |
| 234 | "i"(sizeof(unsigned long))) | ||
| 235 | 233 | ||
| 236 | #ifdef __powerpc64__ | 234 | #ifdef __powerpc64__ |
| 237 | #define __get_user_asm2(x, addr, err) \ | 235 | #define __get_user_asm2(x, addr, err) \ |
| @@ -249,13 +247,12 @@ extern long __get_user_bad(void); | |||
| 249 | " b 3b\n" \ | 247 | " b 3b\n" \ |
| 250 | ".previous\n" \ | 248 | ".previous\n" \ |
| 251 | ".section __ex_table,\"a\"\n" \ | 249 | ".section __ex_table,\"a\"\n" \ |
| 252 | " .balign %5\n" \ | 250 | PPC_LONG_ALIGN "\n" \ |
| 253 | PPC_LONG "1b,4b\n" \ | 251 | PPC_LONG "1b,4b\n" \ |
| 254 | PPC_LONG "2b,4b\n" \ | 252 | PPC_LONG "2b,4b\n" \ |
| 255 | ".previous" \ | 253 | ".previous" \ |
| 256 | : "=r" (err), "=&r" (x) \ | 254 | : "=r" (err), "=&r" (x) \ |
| 257 | : "b" (addr), "i" (-EFAULT), "0" (err), \ | 255 | : "b" (addr), "i" (-EFAULT), "0" (err)) |
| 258 | "i"(sizeof(unsigned long))) | ||
| 259 | #endif /* __powerpc64__ */ | 256 | #endif /* __powerpc64__ */ |
| 260 | 257 | ||
| 261 | #define __get_user_size(x, ptr, size, retval) \ | 258 | #define __get_user_size(x, ptr, size, retval) \ |
