]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * Copyright (C) 2002 - 2004 Jeff Dike (jdike@addtoit.com) | |
3 | * Licensed under the GPL | |
4 | */ | |
5 | ||
1da177e4 | 6 | #include "sysdep/ptrace.h" |
1da177e4 LT |
7 | |
8 | /* These two are from asm-um/uaccess.h and linux/module.h, check them. */ | |
9 | struct exception_table_entry | |
10 | { | |
11 | unsigned long insn; | |
12 | unsigned long fixup; | |
13 | }; | |
14 | ||
15 | const struct exception_table_entry *search_exception_tables(unsigned long add); | |
16 | ||
17 | /* Compare this to arch/i386/mm/extable.c:fixup_exception() */ | |
5d86456d | 18 | int arch_fixup(unsigned long address, union uml_pt_regs *regs) |
1da177e4 | 19 | { |
1da177e4 LT |
20 | const struct exception_table_entry *fixup; |
21 | ||
22 | fixup = search_exception_tables(address); | |
23 | if(fixup != 0){ | |
5d86456d | 24 | UPT_IP(regs) = fixup->fixup; |
1da177e4 LT |
25 | return(1); |
26 | } | |
27 | return(0); | |
28 | } |