Index: kern_timeout.c =================================================================== RCS file: /home/ncvs/src/sys/kern/kern_timeout.c,v retrieving revision 1.117 diff -u -r1.117 kern_timeout.c --- kern_timeout.c 13 Jan 2009 15:56:53 -0000 1.117 +++ kern_timeout.c 23 Jan 2009 14:54:51 -0000 @@ -37,6 +37,8 @@ #include __FBSDID("$FreeBSD: src/sys/kern/kern_timeout.c,v 1.117 2009/01/13 15:56:53 jhb Exp $"); +#include "opt_kdtrace.h" + #include #include #include @@ -49,10 +51,19 @@ #include #include #include +#include #include #include #include +SDT_PROVIDER_DEFINE(callout_execute); +SDT_PROBE_DEFINE(callout_execute, kernel, , callout_start); +SDT_PROBE_ARGTYPE(callout_execute, kernel, , callout_start, 0, + "struct callout *"); +SDT_PROBE_DEFINE(callout_execute, kernel, , callout_end); +SDT_PROBE_ARGTYPE(callout_execute, kernel, , callout_end, 0, + "struct callout *"); + static int avg_depth; SYSCTL_INT(_debug, OID_AUTO, to_avg_depth, CTLFLAG_RD, &avg_depth, 0, "Average number of items examined per softclock call. Units = 1/1000"); @@ -395,7 +406,11 @@ binuptime(&bt1); #endif THREAD_NO_SLEEPING(); + SDT_PROBE(callout_execute, kernel, , + callout_start, c, 0, 0, 0, 0); c_func(c_arg); + SDT_PROBE(callout_execute, kernel, , + callout_end, c, 0, 0, 0, 0); THREAD_SLEEPING_OK(); #ifdef DIAGNOSTIC binuptime(&bt2);