uml: simplify SIGSEGV handling
[wrt350n-kernel.git] / arch / um / sys-x86_64 / stub_segv.c
blobced051afc705c47ad29bcbacc78a0443a064267a
1 /*
2 * Copyright (C) 2004 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
3 * Licensed under the GPL
4 */
6 #include <signal.h>
7 #include "as-layout.h"
8 #include "sysdep/stub.h"
9 #include "sysdep/faultinfo.h"
10 #include "sysdep/sigcontext.h"
12 void __attribute__ ((__section__ (".__syscall_stub")))
13 stub_segv_handler(int sig)
15 struct ucontext *uc;
17 __asm__ __volatile__("movq %%rdx, %0" : "=g" (uc) :);
18 GET_FAULTINFO_FROM_SC(*((struct faultinfo *) STUB_DATA),
19 &uc->uc_mcontext);
20 trap_myself();