opnsense-src/share
Justin T. Gibbs 5b326a32ce Prevent live-lock and access of destroyed data in taskqueue_drain_all().
Phabric:	https://reviews.freebsd.org/D1247
Reviewed by:	jhb, avg
Sponsored by:	Spectra Logic Corporation

sys/kern_subr_taskqueue.c:
	Modify taskqueue_drain_all() processing to use a temporary
	"barrier task", rather than rely on a user task that may
	be destroyed during taskqueue_drain_all()'s execution.  The
	barrier task is queued behind all previously queued tasks
	and then has its priority elevated so that future tasks
	cannot pass it in the queue.

	Use a similar barrier scheme to drain threads processing
	current tasks.  This requires taskqueue_run_locked() to
	insert and remove the taskqueue_busy object for the running
	thread for every task processed.

share/man/man9/taskqueue.9:
	Remove warning about live-lock issues with taskqueue_drain_all()
	and indicate that it does not wait for tasks queued after
	it begins processing.
2015-01-04 19:55:44 +00:00
..
colldef Add lv_LV, move lt_LT to common part 2009-09-03 16:53:11 +00:00
dict Remove ia64. 2014-07-07 00:27:09 +00:00
doc Integrate pjdfstest test suite execution into kyua 2014-11-03 07:18:42 +00:00
dtrace add my scripts to measure io latency per disk... 2014-08-09 20:40:03 +00:00
examples Honor MK_NETGRAPH for netgraph components 2014-11-27 00:10:16 +00:00
i18n Revert r258254: Alias WCHAR_T to UCS-4-INTERNAL. 2014-01-03 23:35:01 +00:00
info Install the template info directory with mode 644 instead of 444 to 2013-01-21 22:54:43 +00:00
keys Remove scary comment about this being a test key. 2014-01-13 20:55:15 +00:00
man Prevent live-lock and access of destroyed data in taskqueue_drain_all(). 2015-01-04 19:55:44 +00:00
me multiple: Remove 3rd clause from BSD license where approved by the 2014-03-14 03:07:51 +00:00
misc Fix missing \n in committers-ports.dot while adding myself 2014-12-24 13:25:22 +00:00
mk Remove MK_INFO guards in bsd.info.mk per r276556 2015-01-02 22:55:30 +00:00
mklocale Add lv_LV, move lt_LT to common part 2009-09-03 17:12:45 +00:00
monetdef Do not overwrite the new UTF-8 files with the old ISO one 2013-07-17 14:00:51 +00:00
msgdef Don't link two different things to the same paths. As tiebreaker I've 2013-01-24 17:00:11 +00:00
numericdef Don't link two different things to the same paths. As tiebreaker I've 2013-01-24 17:00:11 +00:00
security Remove stale references to utmp(5) and its corresponding filenames. 2010-01-21 17:25:12 +00:00
sendmail Dont install .svn metadata with the sendmail install. 2008-05-31 19:15:15 +00:00
skel Install skeleton files based on the values of MK_MAIL and MK_TCSH 2014-11-28 22:07:16 +00:00
snmp Define a base OID for the FreeBSD version as returned in sysObjectID 2006-10-31 10:09:10 +00:00
syscons Fix minor problems found while converting to NEWCONS format. 2014-08-18 20:58:17 +00:00
tabset
termcap Fix building termcap.db when make obj is run beforehand from a clean tree by 2014-12-10 23:18:11 +00:00
tests Add some sample test programs. 2013-11-18 12:57:46 +00:00
timedef Partial fix for PR 91106. Correct the short weekday names. Done according to this poll https://bugzilla.redhat.com/show_bug.cgi?id=242296. This will not close the bug fully yet, as the month names are still not correctly in Genitive. More research on this topic will be done, as I'm suspecting a bug in the libc locale functions picking the month name from the wrong group. 2011-02-27 21:32:25 +00:00
vt Add forgotten keymap files fr.kbd and fr.acc.kbd to the FILES list. 2014-09-12 06:23:57 +00:00
zoneinfo Avoid ./ in zoneinfo entries in METALOG 2014-09-03 18:51:33 +00:00
Makefile Add WITHOUT_AUTOFS and WITHOUT_BSDCONFIG 2014-11-27 09:42:40 +00:00
Makefile.inc