aboutsummaryrefslogtreecommitdiff
path: root/sys/sys/eventhandler.h
diff options
context:
space:
mode:
authorRandall Stewart <rrs@FreeBSD.org>2007-11-15 14:20:07 +0000
committerRandall Stewart <rrs@FreeBSD.org>2007-11-15 14:20:07 +0000
commitb209f889862156073584bfc1ced3742c1781ab43 (patch)
treea920c0926a5911cb9628c3ec82413a126b00a127 /sys/sys/eventhandler.h
parentd8410b8edf84ebb8bbf94c0f8566ca9dc0cbbe31 (diff)
downloadsrc-b209f889862156073584bfc1ced3742c1781ab43.tar.gz
src-b209f889862156073584bfc1ced3742c1781ab43.zip
- Adds event handlers for process_ctor,process_dtor, process_init,
process_fini, thread_ctor, thread_dtor, thread_init, thread_fini. This will allow us to extend dynamically areas in proc/thread for dtrace ;-) Reviewed by: rwatson
Notes
Notes: svn path=/head/; revision=173631
Diffstat (limited to 'sys/sys/eventhandler.h')
-rw-r--r--sys/sys/eventhandler.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/sys/sys/eventhandler.h b/sys/sys/eventhandler.h
index 5c7f1d63dde5..00d124d91e0f 100644
--- a/sys/sys/eventhandler.h
+++ b/sys/sys/eventhandler.h
@@ -182,11 +182,28 @@ struct image_params;
typedef void (*exitlist_fn)(void *, struct proc *);
typedef void (*forklist_fn)(void *, struct proc *, struct proc *, int);
typedef void (*execlist_fn)(void *, struct proc *, struct image_params *);
-
+typedef void (*proc_ctor_fn)(void *, struct proc *);
+typedef void (*proc_dtor_fn)(void *, struct proc *);
+typedef void (*proc_init_fn)(void *, struct proc *);
+typedef void (*proc_fini_fn)(void *, struct proc *);
+EVENTHANDLER_DECLARE(process_ctor, proc_ctor_fn);
+EVENTHANDLER_DECLARE(process_dtor, proc_dtor_fn);
+EVENTHANDLER_DECLARE(process_init, proc_init_fn);
+EVENTHANDLER_DECLARE(process_fini, proc_fini_fn);
EVENTHANDLER_DECLARE(process_exit, exitlist_fn);
EVENTHANDLER_DECLARE(process_fork, forklist_fn);
EVENTHANDLER_DECLARE(process_exec, execlist_fn);
+struct thread;
+typedef void (*thread_ctor_fn)(void *, struct thread *);
+typedef void (*thread_dtor_fn)(void *, struct thread *);
+typedef void (*thread_fini_fn)(void *, struct thread *);
+typedef void (*thread_init_fn)(void *, struct thread *);
+EVENTHANDLER_DECLARE(thread_ctor, thread_ctor_fn);
+EVENTHANDLER_DECLARE(thread_dtor, thread_dtor_fn);
+EVENTHANDLER_DECLARE(thread_init, thread_init_fn);
+EVENTHANDLER_DECLARE(thread_fini, thread_fini_fn);
+
typedef void (*uma_zone_chfn)(void *);
EVENTHANDLER_DECLARE(nmbclusters_change, uma_zone_chfn);
EVENTHANDLER_DECLARE(maxsockets_change, uma_zone_chfn);