diff options
Diffstat (limited to 'arch/sh/mm/fault-nommu.c')
-rw-r--r-- | arch/sh/mm/fault-nommu.c | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/arch/sh/mm/fault-nommu.c b/arch/sh/mm/fault-nommu.c deleted file mode 100644 index c6f5b51ec2c7..000000000000 --- a/arch/sh/mm/fault-nommu.c +++ /dev/null | |||
@@ -1,64 +0,0 @@ | |||
1 | /* | ||
2 | * arch/sh/mm/fault-nommu.c | ||
3 | * | ||
4 | * Copyright (C) 2002 - 2007 Paul Mundt | ||
5 | * | ||
6 | * Based on linux/arch/sh/mm/fault.c: | ||
7 | * Copyright (C) 1999 Niibe Yutaka | ||
8 | * | ||
9 | * Released under the terms of the GNU GPL v2.0. | ||
10 | */ | ||
11 | #include <linux/kernel.h> | ||
12 | #include <linux/mm.h> | ||
13 | #include <linux/hardirq.h> | ||
14 | #include <linux/kprobes.h> | ||
15 | #include <asm/system.h> | ||
16 | #include <asm/ptrace.h> | ||
17 | #include <asm/kgdb.h> | ||
18 | |||
19 | /* | ||
20 | * This routine handles page faults. It determines the address, | ||
21 | * and the problem, and then passes it off to one of the appropriate | ||
22 | * routines. | ||
23 | */ | ||
24 | asmlinkage void __kprobes do_page_fault(struct pt_regs *regs, | ||
25 | unsigned long writeaccess, | ||
26 | unsigned long address) | ||
27 | { | ||
28 | trace_hardirqs_on(); | ||
29 | local_irq_enable(); | ||
30 | |||
31 | #if defined(CONFIG_SH_KGDB) | ||
32 | if (kgdb_nofault && kgdb_bus_err_hook) | ||
33 | kgdb_bus_err_hook(); | ||
34 | #endif | ||
35 | |||
36 | /* | ||
37 | * Oops. The kernel tried to access some bad page. We'll have to | ||
38 | * terminate things with extreme prejudice. | ||
39 | * | ||
40 | */ | ||
41 | if (address < PAGE_SIZE) { | ||
42 | printk(KERN_ALERT "Unable to handle kernel NULL pointer dereference"); | ||
43 | } else { | ||
44 | printk(KERN_ALERT "Unable to handle kernel paging request"); | ||
45 | } | ||
46 | |||
47 | printk(" at virtual address %08lx\n", address); | ||
48 | printk(KERN_ALERT "pc = %08lx\n", regs->pc); | ||
49 | |||
50 | die("Oops", regs, writeaccess); | ||
51 | do_exit(SIGKILL); | ||
52 | } | ||
53 | |||
54 | asmlinkage int __kprobes __do_page_fault(struct pt_regs *regs, | ||
55 | unsigned long writeaccess, | ||
56 | unsigned long address) | ||
57 | { | ||
58 | #if defined(CONFIG_SH_KGDB) | ||
59 | if (kgdb_nofault && kgdb_bus_err_hook) | ||
60 | kgdb_bus_err_hook(); | ||
61 | #endif | ||
62 | |||
63 | return (address >= TASK_SIZE); | ||
64 | } | ||