aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/kernel/trap_kern.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/um/kernel/trap_kern.c')
-rw-r--r--arch/um/kernel/trap_kern.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/um/kernel/trap_kern.c b/arch/um/kernel/trap_kern.c
index 0d4c10a73607..b79f805bdc00 100644
--- a/arch/um/kernel/trap_kern.c
+++ b/arch/um/kernel/trap_kern.c
@@ -1,4 +1,4 @@
1/* 1/*
2 * Copyright (C) 2000, 2001 Jeff Dike (jdike@karaya.com) 2 * Copyright (C) 2000, 2001 Jeff Dike (jdike@karaya.com)
3 * Licensed under the GPL 3 * Licensed under the GPL
4 */ 4 */
@@ -29,6 +29,7 @@
29#ifdef CONFIG_MODE_SKAS 29#ifdef CONFIG_MODE_SKAS
30#include "skas.h" 30#include "skas.h"
31#endif 31#endif
32#include "os.h"
32 33
33/* Note this is constrained to return 0, -EFAULT, -EACCESS, -ENOMEM by segv(). */ 34/* Note this is constrained to return 0, -EFAULT, -EACCESS, -ENOMEM by segv(). */
34int handle_page_fault(unsigned long address, unsigned long ip, 35int handle_page_fault(unsigned long address, unsigned long ip,
@@ -125,6 +126,14 @@ out_of_memory:
125 goto out; 126 goto out;
126} 127}
127 128
129struct kern_handlers handlinfo_kern = {
130 .relay_signal = relay_signal,
131 .winch = winch,
132 .bus_handler = relay_signal,
133 .page_fault = segv_handler,
134 .sigio_handler = sigio_handler,
135 .timer_handler = timer_handler
136};
128/* 137/*
129 * We give a *copy* of the faultinfo in the regs to segv. 138 * We give a *copy* of the faultinfo in the regs to segv.
130 * This must be done, since nesting SEGVs could overwrite 139 * This must be done, since nesting SEGVs could overwrite