This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] add function for signal.force_segv


Hi, all
   Kernel function force_sigsegv_info also forces SIGSEGV sent to
a process. So I think it is better if signal.force_segv includes
this function.

diff -Nur /usr/share/systemtap/tapset/signal.stp tapset/signal.stp
--- /usr/share/systemtap/tapset/signal.stp	2007-09-10 09:18:19.000000000 +0900
+++ tapset/signal.stp	2007-09-14 11:30:03.000000000 +0900
@@ -254,15 +254,28 @@
 *  Forces SIGSEGV when there are some issues while handling signals for the process.
 *
 */
-probe signal.force_segv = kernel.function("force_sigsegv")
+probe signal.force_segv = _signal.force_segv.*
+{
+}
+
+probe _signal.force_segv.part1 = kernel.function("force_sigsegv")
{
    sig_pid = $p->pid
    pid_name = kernel_string($p->comm)
    sig = $sig
    sig_name = _signal_name($sig)
}
+probe _signal.force_segv.part2 = kernel.function("force_sigsegv_info") ?
+{
+	sig_pid = pid()
+	pid_name = execname()
+	sig = $sig
+	sig_name = _signal_name($sig)
+}

-probe signal.force_segv.return = kernel.function("force_sigsegv").return
+probe signal.force_segv.return =
+	kernel.function("force_sigsegv").return,
+	kernel.function("force_sigsegv_info").return ?
{
    name = "force_sigsegv"
    retstr = returnstr(1)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]