Skip to content

Draft: Add trampoline around iocompletionport_createthreads()

On Windows, the iocompletionport_createthreads() doesn't use isc_thread_create() to create new threads for processing IO, but just a simple CreateThread() function that completely circumvent the isc_trampoline mechanism to initialize global isc_tid_v. This leads to segmentation fault in isc_hp API because '-1' isn't valid index to the hazard pointer array.

This commit adds the isc__trampoline_run() to the CreateThread() invocation which will properly initialize all threads on Windows.

Merge request reports