提交 46d258d1 编写于 作者: M Marc Hartmayer 提交者: John Ferlan

virThreadPool: Prevent switching between zero and non-zero maxWorkers

...since maxWorkers=0 is only intended for virtlockd or virlogd which
must not be multithreaded.
Signed-off-by: NMarc Hartmayer <mhartmay@linux.ibm.com>
Reviewed-by: NBoris Fiuczynski <fiuczy@linux.ibm.com>
Reviewed-by: NBjoern Walk <bwalk@linux.ibm.com>
Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
上级 45e00c7f
......@@ -442,6 +442,14 @@ virThreadPoolSetParameters(virThreadPoolPtr pool,
goto error;
}
if ((maxWorkers == 0 && pool->maxWorkers > 0) ||
(maxWorkers > 0 && pool->maxWorkers == 0)) {
virReportError(VIR_ERR_INVALID_ARG, "%s",
_("maxWorkers must not be switched from zero to non-zero"
" and vice versa"));
goto error;
}
if (minWorkers >= 0) {
if ((size_t) minWorkers > pool->nWorkers &&
virThreadPoolExpand(pool, minWorkers - pool->nWorkers,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册