From 43e566937ebc500a6f16705b18a4e7b792ca9307 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Witold=20Kr=C4=99cicki?= Date: Wed, 24 Oct 2018 10:52:37 +0000 Subject: [PATCH] Windows fixes --- lib/isc/win32/socket.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/isc/win32/socket.c b/lib/isc/win32/socket.c index b61f2d7b19a..b94c0d5e20c 100644 --- a/lib/isc/win32/socket.c +++ b/lib/isc/win32/socket.c @@ -518,8 +518,6 @@ iocompletionport_init(isc_socketmgr_t *manager) { strbuf); } - manager->maxIOCPThreads = min(isc_os_ncpus() + 1, MAX_IOCPTHREADS); - /* Now Create the Completion Port */ manager->hIoCompletionPort = CreateIoCompletionPort( INVALID_HANDLE_VALUE, NULL, @@ -2641,7 +2639,7 @@ isc_socketmgr_create(isc_mem_t *mctx, isc_socketmgr_t **managerp) { isc_result_t isc_socketmgr_create2(isc_mem_t *mctx, isc_socketmgr_t **managerp, - unsigned int maxsocks) + unsigned int maxsocks, int nthreads) { isc_socketmgr_t *manager; isc_result_t result; @@ -2677,6 +2675,10 @@ isc_socketmgr_create2(isc_mem_t *mctx, isc_socketmgr_t **managerp, } isc_mem_attach(mctx, &manager->mctx); + if (nthreads == 0) { + nthreads = isc_os_ncpus() + 1; + } + manager->maxIOCPThreads = min(nthreads, MAX_IOCPTHREADS); iocompletionport_init(manager); /* Create the Completion Ports */ -- 2.47.3