mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-10-25 17:35:00 +03:00
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> |
||
|---|---|---|
| .. | ||
| Makefile.in | ||
| spl-atomic.c | ||
| spl-condvar.c | ||
| spl-cred.c | ||
| spl-debug.c | ||
| spl-err.c | ||
| spl-generic.c | ||
| spl-kmem.c | ||
| spl-kobj.c | ||
| spl-kstat.c | ||
| spl-mutex.c | ||
| spl-proc.c | ||
| spl-rwlock.c | ||
| spl-taskq.c | ||
| spl-thread.c | ||
| spl-time.c | ||
| spl-tsd.c | ||
| spl-vnode.c | ||
| spl-xdr.c | ||
| spl-zlib.c | ||