Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

s390: switch to extable.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Al Viro e70f1d59 d597580d

+29 -25
+28
arch/s390/include/asm/extable.h
··· 1 + #ifndef __S390_EXTABLE_H 2 + #define __S390_EXTABLE_H 3 + /* 4 + * The exception table consists of pairs of addresses: the first is the 5 + * address of an instruction that is allowed to fault, and the second is 6 + * the address at which the program should continue. No registers are 7 + * modified, so it is entirely up to the continuation code to figure out 8 + * what to do. 9 + * 10 + * All the routines below use bits of fixup code that are out of line 11 + * with the main instruction path. This means when everything is well, 12 + * we don't even have to jump over them. Further, they do not intrude 13 + * on our cache or tlb entries. 14 + */ 15 + 16 + struct exception_table_entry 17 + { 18 + int insn, fixup; 19 + }; 20 + 21 + static inline unsigned long extable_fixup(const struct exception_table_entry *x) 22 + { 23 + return (unsigned long)&x->fixup + x->fixup; 24 + } 25 + 26 + #define ARCH_HAS_RELATIVE_EXTABLE 27 + 28 + #endif
+1 -25
arch/s390/include/asm/uaccess.h
··· 14 14 */ 15 15 #include <asm/processor.h> 16 16 #include <asm/ctl_reg.h> 17 + #include <asm/extable.h> 17 18 18 19 19 20 /* ··· 59 58 }) 60 59 61 60 #define access_ok(type, addr, size) __access_ok(addr, size) 62 - 63 - /* 64 - * The exception table consists of pairs of addresses: the first is the 65 - * address of an instruction that is allowed to fault, and the second is 66 - * the address at which the program should continue. No registers are 67 - * modified, so it is entirely up to the continuation code to figure out 68 - * what to do. 69 - * 70 - * All the routines below use bits of fixup code that are out of line 71 - * with the main instruction path. This means when everything is well, 72 - * we don't even have to jump over them. Further, they do not intrude 73 - * on our cache or tlb entries. 74 - */ 75 - 76 - struct exception_table_entry 77 - { 78 - int insn, fixup; 79 - }; 80 - 81 - static inline unsigned long extable_fixup(const struct exception_table_entry *x) 82 - { 83 - return (unsigned long)&x->fixup + x->fixup; 84 - } 85 - 86 - #define ARCH_HAS_RELATIVE_EXTABLE 87 61 88 62 /** 89 63 * __copy_from_user: - Copy a block of data from user space, with less checking.