freebsd-dev/share
Ian Lepore fc09164658 Restore the ability to deregister an eventhandler from within the callback.
When the EVENTHANDLER(9) subsystem was created, it was a documented feature
that an eventhandler callback function could safely deregister itself. In
r200652 that feature was inadvertantly broken by adding drain-wait logic to
eventhandler_deregister(), so that it would be safe to unload a module upon
return from deregistering its event handlers.

There are now 145 callers of EVENTHANDLER_DEREGISTER(), and it's likely many
of them are depending on the drain-wait logic that has been in place for 8
years. So instead of creating a separate eventhandler_drain() and adding it
to some or all of those 145 call sites, this creates a separate
eventhandler_drain_nowait() function for the specific purpose of
deregistering a callback from within the running callback.

Differential Revision:	https://reviews.freebsd.org/D12561
2017-10-08 17:21:16 +00:00
..
colldef Readd Big5: some large databases setup are still requiring it. 2017-04-20 18:21:50 +00:00
ctypedef Readd Big5: some large databases setup are still requiring it. 2017-04-20 18:21:50 +00:00
dict
doc In preparation for the removal of the roff toolchain, disconnect the 2017-05-25 14:54:22 +00:00
dtrace Remove redefinitions of some kernel types from mbuf.d. 2016-09-03 20:43:59 +00:00
examples Add HAS_TESTS to all Makefiles that are currently using the 2017-08-02 08:50:42 +00:00
i18n share: normalize paths using SRCTOP-relative paths or :H when possible 2017-03-04 11:26:40 +00:00
keys
man Restore the ability to deregister an eventhandler from within the callback. 2017-10-08 17:21:16 +00:00
misc o FreeBSD 10.4 happened after 11.1, adjust the branches accordingly. 2017-10-03 14:23:49 +00:00
mk Remove rcmds. 2017-10-06 08:43:14 +00:00
monetdef Readd Big5: some large databases setup are still requiring it. 2017-04-20 18:21:50 +00:00
msgdef Readd Big5: some large databases setup are still requiring it. 2017-04-20 18:21:50 +00:00
numericdef Readd Big5: some large databases setup are still requiring it. 2017-04-20 18:21:50 +00:00
security
sendmail share: normalize paths using SRCTOP-relative paths or :H when possible 2017-03-04 11:26:40 +00:00
skel Cosmetic tweaks to the default shell rc files, mostly comments. 2017-07-05 13:08:07 +00:00
snmp
syscons Remove pc98 support completely. 2017-01-28 02:22:15 +00:00
tabset
termcap Revert r314833 until the problem with INSTALL_RSYMLINKS can be found 2017-03-12 00:37:45 +00:00
tests Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
timedef Canada adheres to ISO 8601, let's make the locale reflecting that fact 2017-03-19 18:21:35 +00:00
vt Adjust path to X11 locale files (/usr/X11 has been changed to /usr/local a 2017-08-01 09:34:15 +00:00
zoneinfo Add HAS_TESTS to all Makefiles that are currently using the 2017-08-02 08:50:42 +00:00
Makefile Convert traditional ${MK_TESTS} conditional idiom for including test 2017-08-02 08:35:51 +00:00
Makefile.inc