add asm-generic/extable.h
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 25 Dec 2016 06:22:09 +0000 (01:22 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Tue, 28 Mar 2017 00:27:28 +0000 (20:27 -0400)
... and make the users of generic uaccess.h use that.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/arc/include/asm/Kbuild
arch/arc/include/asm/uaccess.h
arch/c6x/include/asm/Kbuild
arch/h8300/include/asm/Kbuild
arch/hexagon/include/asm/Kbuild
arch/um/include/asm/Kbuild
arch/unicore32/include/asm/Kbuild
arch/unicore32/include/asm/uaccess.h
include/asm-generic/extable.h [new file with mode: 0644]
include/asm-generic/uaccess.h

index 63a04013d05a595ffa5e52d0237690aa85a41bb5..7bee4e4799fdfc81f12ca04b88a2dfffb8272a18 100644 (file)
@@ -6,6 +6,7 @@ generic-y += device.h
 generic-y += div64.h
 generic-y += emergency-restart.h
 generic-y += errno.h
+generic-y += extable.h
 generic-y += fb.h
 generic-y += fcntl.h
 generic-y += ftrace.h
index 0431f5668354515e8534161a64a40885923d3465..d837a53c6e590a53adff809d374725521b87eb8d 100644 (file)
@@ -750,6 +750,4 @@ extern long arc_strnlen_user_noinline(const char __user *src, long n);
 
 #include <asm-generic/uaccess.h>
 
-extern int fixup_exception(struct pt_regs *regs);
-
 #endif
index 82619c32d25bdb2e5cd0867c81ef6aa002594bbe..f0eaf0475e7e3bffd5240c9ea735e23a2251172f 100644 (file)
@@ -12,6 +12,7 @@ generic-y += dma.h
 generic-y += emergency-restart.h
 generic-y += errno.h
 generic-y += exec.h
+generic-y += extable.h
 generic-y += fb.h
 generic-y += fcntl.h
 generic-y += futex.h
index 341740c3581c1e2c0934bd6d70394d5cb44ca75a..f14e4e6ccbde7d85c006e62a7b0cd7bfd451165e 100644 (file)
@@ -13,6 +13,7 @@ generic-y += dma.h
 generic-y += emergency-restart.h
 generic-y += errno.h
 generic-y += exec.h
+generic-y += extable.h
 generic-y += fb.h
 generic-y += fcntl.h
 generic-y += ftrace.h
index 797b64a4b80bac0aa188ccb074de472547f93c47..a2036bfda8aff68d26cabbd5f3c326bec077cf52 100644 (file)
@@ -11,6 +11,7 @@ generic-y += device.h
 generic-y += div64.h
 generic-y += emergency-restart.h
 generic-y += errno.h
+generic-y += extable.h
 generic-y += fb.h
 generic-y += fcntl.h
 generic-y += ftrace.h
index e9d42aab76dcbd1dcc08bcba6965b87705393110..50a32c33d729ba2a570eadaf77cff69925218c42 100644 (file)
@@ -6,6 +6,7 @@ generic-y += delay.h
 generic-y += device.h
 generic-y += emergency-restart.h
 generic-y += exec.h
+generic-y += extable.h
 generic-y += ftrace.h
 generic-y += futex.h
 generic-y += hardirq.h
index 84205fe1cd790805ef0f347591f46fa9990f0a34..e9ad511c1043fee6b3e3ec5af8f025bf2d2802af 100644 (file)
@@ -10,6 +10,7 @@ generic-y += div64.h
 generic-y += emergency-restart.h
 generic-y += errno.h
 generic-y += exec.h
+generic-y += extable.h
 generic-y += fb.h
 generic-y += fcntl.h
 generic-y += ftrace.h
index 1622f37a0514af4fd0e8b50dfa1479c6448170a9..f60fab718b59fe48ae4637852a70ca638a9c340d 100644 (file)
@@ -38,6 +38,4 @@ __strnlen_user(const char __user *s, long n);
 
 #include <asm-generic/uaccess.h>
 
-extern int fixup_exception(struct pt_regs *regs);
-
 #endif /* __UNICORE_UACCESS_H__ */
diff --git a/include/asm-generic/extable.h b/include/asm-generic/extable.h
new file mode 100644 (file)
index 0000000..ca14c66
--- /dev/null
@@ -0,0 +1,26 @@
+#ifndef __ASM_GENERIC_EXTABLE_H
+#define __ASM_GENERIC_EXTABLE_H
+
+/*
+ * The exception table consists of pairs of addresses: the first is the
+ * address of an instruction that is allowed to fault, and the second is
+ * the address at which the program should continue.  No registers are
+ * modified, so it is entirely up to the continuation code to figure out
+ * what to do.
+ *
+ * All the routines below use bits of fixup code that are out of line
+ * with the main instruction path.  This means when everything is well,
+ * we don't even have to jump over them.  Further, they do not intrude
+ * on our cache or tlb entries.
+ */
+
+struct exception_table_entry
+{
+       unsigned long insn, fixup;
+};
+
+
+struct pt_regs;
+extern int fixup_exception(struct pt_regs *regs);
+
+#endif
index d20955e495b388e110ede0f274f542dbb4deb89c..4b4f4a7f22c641739aa53783ecf107ee2f3a29c5 100644 (file)
@@ -47,24 +47,6 @@ static inline int __access_ok(unsigned long addr, unsigned long size)
 }
 #endif
 
-/*
- * The exception table consists of pairs of addresses: the first is the
- * address of an instruction that is allowed to fault, and the second is
- * the address at which the program should continue.  No registers are
- * modified, so it is entirely up to the continuation code to figure out
- * what to do.
- *
- * All the routines below use bits of fixup code that are out of line
- * with the main instruction path.  This means when everything is well,
- * we don't even have to jump over them.  Further, they do not intrude
- * on our cache or tlb entries.
- */
-
-struct exception_table_entry
-{
-       unsigned long insn, fixup;
-};
-
 /*
  * architectures with an MMU should override these two
  */
@@ -344,4 +326,6 @@ clear_user(void __user *to, unsigned long n)
        return __clear_user(to, n);
 }
 
+#include <asm/extable.h>
+
 #endif /* __ASM_GENERIC_UACCESS_H */