aboutsummaryrefslogtreecommitdiffstats
path: root/autogen.sh
diff options
context:
space:
mode:
authortuxoko <[email protected]>2015-11-06 15:00:55 -0800
committerBrian Behlendorf <[email protected]>2015-11-13 15:02:55 -0800
commitf5f2b87df0362242b13b8183a2a8d88be63b0e73 (patch)
tree4618a8a290f8961fe6998845fd10d0a63dc4efc0 /autogen.sh
parent3e7e6f34d0b39b210de68fd69a0c08c6d21227a5 (diff)
Fix taskq dynamic spawning
Currently taskq_dispatch() will spawn new task with a condition that the caller is also a member of the taskq. However, under this condition, it will still cause deadlock where a task on tq1 is waiting another thread, who is trying to dispatch a task on tq1. So this patch removes the check. For example when you do: zfs send pp/fs0@001 | zfs recv pp/fs0_copy This will easily deadlock before this patch. Also, move the seq_task check from taskq_thread_spawn() to taskq_thread() because it's not used by the caller from taskq_dispatch(). Signed-off-by: Chunwei Chen <[email protected]> Signed-off-by: Tim Chase <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #496
Diffstat (limited to 'autogen.sh')
0 files changed, 0 insertions, 0 deletions