Brian Behlendorf d2733258d0 Condition variable reference counts
Reference count every entry and exit from the condition variable
functions: cv_wait(), cv_wait_timeout(), cv_signal(), cv_broadcast().

This allows us to safely block in cv_destroy() until all consumers
have been scheduled and are no longer accessing the condition
variable memory.

In addition poison the magic value at the start of cv_destroy() to
ensure there are never any new callers after cv_destroy() is called.
The consumer is responsible for ensuring this never occurs.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2012-11-06 14:48:55 -08:00
..
2012-07-26 15:14:02 -07:00
2012-09-07 14:27:03 -07:00
2011-01-12 11:38:05 -08:00
2012-11-02 15:17:40 -07:00
2012-08-27 12:00:42 -07:00
2012-09-12 12:27:09 -07:00
2012-10-11 16:22:29 -07:00
2010-07-20 13:30:40 -07:00