Date: Tue, 20 Sep 2011 12:36:53 +0400 From: Sergey Kandaurov <pluknet@gmail.com> To: Anton Yuzhaninov <citrin@citrin.ru> Cc: freebsd-current@freebsd.org Subject: Re: Dtrace: type mismatch in sys/kern/kern_sig.c Message-ID: <CAE-mSOJq5OZ13xQFhfOuGkrdRefepO7dU6Hg7wNXH21OEbTZNg@mail.gmail.com> In-Reply-To: <j57mrg$nfn$1@dough.gmane.org> References: <j57mrg$nfn$1@dough.gmane.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 19 September 2011 19:24, Anton Yuzhaninov <citrin@citrin.ru> wrote: > In the file sys/kern/kern_sig.c defined DTrace probe proc:::signal-discard > > SDT_PROBE_DEFINE(proc, kernel, , signal_discard, signal-discard); > SDT_PROBE_ARGTYPE(proc, kernel, , signal_discard, 0, "struct thread *"); > SDT_PROBE_ARGTYPE(proc, kernel, , signal_discard, 1, "struct proc *"); > SDT_PROBE_ARGTYPE(proc, kernel, , signal_discard, 2, "int"); > > Then latter this proble called as: > > SDT_PROBE(proc, kernel, , signal_discard, ps, td, sig, 0, 0 ); > > type for var ps is struct sigacts* =! struct thread * (bug?) > type for var td is struct thread * =! struct proc * (bug?) > type for var sig is int == int (ok) > > To match solaris DTrace probe shuild called as: > > SDT_PROBE(proc, kernel, , signal_discard, td, p, sig, 0, 0 ); > Yes, seems a typo there. Also conforms to the Solaris Dynamic Tracing Guide: http://download.oracle.com/docs/cd/E19082-01/819-3620/gelse/index.html (Also, td and p are somewhat different wrt. psinfo_t and lwpsinfo_t in Solaris). -- wbr, pluknet
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAE-mSOJq5OZ13xQFhfOuGkrdRefepO7dU6Hg7wNXH21OEbTZNg>