diff options
author | Chunwei Chen <[email protected]> | 2016-01-27 16:55:14 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2016-02-05 14:08:31 -0800 |
commit | 8f3b403a73fa9b1db06050edf737e1f051b05070 (patch) | |
tree | 4209d27ba6a092bccc3df727d31fcf34b6238e50 /include | |
parent | d112232f5ec4b25e8446f9a2430d1a63908e6e5a (diff) |
Allow kicking a taskq to spawn more threads
This patch add a module parameter spl_taskq_kick. When writing non-zero value
to it, it will scan all the taskq, if a taskq contains a task pending for more
than 5 seconds, it will be forced to spawn a new thread. This is use as an
emergency recovery from deadlock, not a general solution.
Signed-off-by: Chunwei Chen <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #529
Diffstat (limited to 'include')
-rw-r--r-- | include/sys/taskq.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/sys/taskq.h b/include/sys/taskq.h index e7661f7ce..19bc6c1dd 100644 --- a/include/sys/taskq.h +++ b/include/sys/taskq.h @@ -105,6 +105,7 @@ typedef struct taskq_ent { void *tqent_arg; taskq_t *tqent_taskq; uintptr_t tqent_flags; + unsigned long tqent_birth; } taskq_ent_t; #define TQENT_FLAG_PREALLOC 0x1 |