diff options
author | Mark Johnston <markj@FreeBSD.org> | 2013-08-13 03:07:49 +0000 |
---|---|---|
committer | Mark Johnston <markj@FreeBSD.org> | 2013-08-13 03:07:49 +0000 |
commit | c9b645b50be5adebc3bd7927726af474caea6098 (patch) | |
tree | dcad89fb8dcad3f906701c32834969307169d079 /sys/sys | |
parent | c77936e7e54dba25809a0cbed7e13559f6101bef (diff) | |
download | src-c9b645b50be5adebc3bd7927726af474caea6098.tar.gz src-c9b645b50be5adebc3bd7927726af474caea6098.zip |
Add event handlers for module load and unload events. The load handlers are
called after the module has been loaded, and the unload handlers are called
before the module is unloaded. Moreover, the module unload handlers may
return an error to prevent the unload from proceeding.
Reviewed by: avg
MFC after: 2 weeks
Notes
Notes:
svn path=/head/; revision=254266
Diffstat (limited to 'sys/sys')
-rw-r--r-- | sys/sys/eventhandler.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/sys/eventhandler.h b/sys/sys/eventhandler.h index 02fbeaa816d1..7e1eee2ecd00 100644 --- a/sys/sys/eventhandler.h +++ b/sys/sys/eventhandler.h @@ -266,4 +266,11 @@ EVENTHANDLER_DECLARE(nmbclusters_change, uma_zone_chfn); EVENTHANDLER_DECLARE(nmbufs_change, uma_zone_chfn); EVENTHANDLER_DECLARE(maxsockets_change, uma_zone_chfn); +/* Module load and unload events */ +struct linker_file; +typedef void (*mod_load_fn)(void *, struct linker_file *); +typedef void (*mod_unload_fn)(void *, struct linker_file *, int *); +EVENTHANDLER_DECLARE(mod_load, mod_load_fn); +EVENTHANDLER_DECLARE(mod_unload, mod_unload_fn); + #endif /* SYS_EVENTHANDLER_H */ |