hselasky 1a99c0928d Implement callout_drain_async(), inspired by the projects/hps_head
branch.

This function is used to drain a callout via a callback instead of
blocking the caller until the drain is complete. Refer to the
callout_drain_async() manual page for a detailed description.

Limitation: If a lock is used with the callout, the callout can only
be drained asynchronously one time unless the callout_init_mtx()
function is called again. This limitation is not present in
projects/hps_head and will require more invasive changes to the
timeout code, which was not in the scope of this patch.

Differential Revision:	https://reviews.freebsd.org/D3521
Reviewed by:		wblock
MFC after:		1 month
2015-09-14 10:52:26 +00:00
..
2015-08-12 11:56:19 +00:00
2012-05-20 16:43:47 +00:00
2013-03-04 19:10:39 +00:00
2015-01-07 16:15:00 +00:00
2013-04-20 12:36:53 +00:00
2014-11-23 21:00:00 +00:00
2012-05-20 16:43:47 +00:00
2015-08-12 11:56:19 +00:00
2015-06-13 19:20:56 +00:00
2014-11-23 21:00:00 +00:00
2015-03-12 01:05:54 +00:00
2014-12-26 01:48:44 +00:00
2015-08-28 00:12:59 +00:00
2014-07-23 18:54:18 +00:00
2015-08-12 11:56:19 +00:00
2015-08-12 11:56:19 +00:00
2013-08-25 06:58:51 +00:00
2014-05-04 12:32:37 +00:00
2012-01-19 09:51:07 +00:00
2015-01-27 09:48:02 +00:00
2014-07-18 06:56:24 +00:00
2015-05-19 15:43:20 +00:00
2015-07-16 15:43:55 +00:00
2012-07-04 07:42:12 +00:00
2015-06-18 16:29:11 +00:00
2014-11-23 21:00:00 +00:00
2014-07-17 23:23:01 +00:00
2015-06-18 16:29:11 +00:00
2012-01-19 09:51:07 +00:00
2012-01-19 09:51:07 +00:00
2013-10-07 20:29:31 +00:00
2012-05-20 16:43:47 +00:00
2012-05-20 16:43:47 +00:00