diff options
Diffstat (limited to 'sys/linux-x86/signal.c')
-rw-r--r-- | sys/linux-x86/signal.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sys/linux-x86/signal.c b/sys/linux-x86/signal.c index 8fdf2d53..0adee008 100644 --- a/sys/linux-x86/signal.c +++ b/sys/linux-x86/signal.c @@ -32,6 +32,9 @@ #include "arch/stack-frame.h" #include "vm/signal.h" +#include "vm/trace.h" + +#include <string.h> extern void signal_bh_trampoline(void *bh); @@ -81,3 +84,11 @@ int install_signal_bh(void *ctx, signal_bh_fn bh) return 0; } + +void trace_signal(int sig, siginfo_t *si, void *ctx) +{ + ucontext_t *uc = ctx; + + trace_printf("signal %2d: ip=0x%016x: %s\n", sig, (unsigned long) uc->uc_mcontext.gregs[REG_IP], strsignal(sig)); + trace_flush(); +} |