diff options
author | Jeff Dike <jdike@addtoit.com> | 2008-02-05 01:30:46 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-05 12:44:26 -0500 |
commit | edea138584d7586a3b93b6d5ab5ec021d18e11e9 (patch) | |
tree | 0c5a5dd14256d675c8c64c8abdda86053f72abc8 /arch/um/kernel/trap.c | |
parent | 0ba7fe03b638a084a4e15e21d2e585ba321ad9c8 (diff) |
uml: tidy kern_util.h
Tidy kern_util.h. It turns out that most of the function declarations
aren't used, so they can go away. os.h no longer includes
kern_util.h, so files which got it through os.h now need to include it
directly. A number of other files never needed it, so these includes
are deleted.
The structure which was used to pass signal handlers from the kernel
side to the userspace side is gone. Instead, the handlers are
declared here, and used directly from libc code. This allows
arch/um/os-Linux/trap.c to be deleted, with its remnants being moved
to arch/um/os-Linux/skas/trap.c.
arch/um/os-Linux/tty.c had its inclusions changed, and it needed some
style attention, so it got tidied.
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/um/kernel/trap.c')
-rw-r--r-- | arch/um/kernel/trap.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/arch/um/kernel/trap.c b/arch/um/kernel/trap.c index e3a3ab8f8635..ff405a446d15 100644 --- a/arch/um/kernel/trap.c +++ b/arch/um/kernel/trap.c | |||
@@ -128,7 +128,7 @@ static void bad_segv(struct faultinfo fi, unsigned long ip) | |||
128 | force_sig_info(SIGSEGV, &si, current); | 128 | force_sig_info(SIGSEGV, &si, current); |
129 | } | 129 | } |
130 | 130 | ||
131 | static void segv_handler(int sig, struct uml_pt_regs *regs) | 131 | void segv_handler(int sig, struct uml_pt_regs *regs) |
132 | { | 132 | { |
133 | struct faultinfo * fi = UPT_FAULTINFO(regs); | 133 | struct faultinfo * fi = UPT_FAULTINFO(regs); |
134 | 134 | ||
@@ -229,27 +229,18 @@ void relay_signal(int sig, struct uml_pt_regs *regs) | |||
229 | force_sig(sig, current); | 229 | force_sig(sig, current); |
230 | } | 230 | } |
231 | 231 | ||
232 | static void bus_handler(int sig, struct uml_pt_regs *regs) | 232 | void bus_handler(int sig, struct uml_pt_regs *regs) |
233 | { | 233 | { |
234 | if (current->thread.fault_catcher != NULL) | 234 | if (current->thread.fault_catcher != NULL) |
235 | UML_LONGJMP(current->thread.fault_catcher, 1); | 235 | UML_LONGJMP(current->thread.fault_catcher, 1); |
236 | else relay_signal(sig, regs); | 236 | else relay_signal(sig, regs); |
237 | } | 237 | } |
238 | 238 | ||
239 | static void winch(int sig, struct uml_pt_regs *regs) | 239 | void winch(int sig, struct uml_pt_regs *regs) |
240 | { | 240 | { |
241 | do_IRQ(WINCH_IRQ, regs); | 241 | do_IRQ(WINCH_IRQ, regs); |
242 | } | 242 | } |
243 | 243 | ||
244 | const struct kern_handlers handlinfo_kern = { | ||
245 | .relay_signal = relay_signal, | ||
246 | .winch = winch, | ||
247 | .bus_handler = bus_handler, | ||
248 | .page_fault = segv_handler, | ||
249 | .sigio_handler = sigio_handler, | ||
250 | .timer_handler = timer_handler | ||
251 | }; | ||
252 | |||
253 | void trap_init(void) | 244 | void trap_init(void) |
254 | { | 245 | { |
255 | } | 246 | } |