summaryrefslogtreecommitdiffstats
path: root/module/spl
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2009-02-02 08:53:53 -0800
committerBrian Behlendorf <[email protected]>2009-02-02 08:53:53 -0800
commitf220894e1fc86cbfaf073dc4cca519887c41e78e (patch)
tree3445b3f78de88e1748b087329306dab00169d510 /module/spl
parent10a4be0f0369b80c44e013513acf7ad36f64cfaa (diff)
Make the number of system taskq threads based on the node of cores in the node, as is done for most linux system tasks
Diffstat (limited to 'module/spl')
-rw-r--r--module/spl/spl-taskq.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/module/spl/spl-taskq.c b/module/spl/spl-taskq.c
index 799b54839..e77ef669f 100644
--- a/module/spl/spl-taskq.c
+++ b/module/spl/spl-taskq.c
@@ -474,8 +474,10 @@ spl_taskq_init(void)
{
ENTRY;
- system_taskq = taskq_create("system_taskq", 64, minclsyspri, 4, 512,
- TASKQ_PREPOPULATE);
+ /* Solaris creates a dynamic taskq of up to 64 threads, however in
+ * a Linux environment 1 thread per-core is usually about right */
+ system_taskq = taskq_create("spl_system_taskq", num_online_cpus(),
+ minclsyspri, 4, 512, TASKQ_PREPOPULATE);
if (system_taskq == NULL)
RETURN(1);