dnstap module spawns a thread
That's not consistent with kresd architecture, though I can't think of a particular reason why it might cause a problem. Note that this thread will get spawned for each kresd process, so it might be a bit wasteful.
We might prefer to rewrite the module by utilizing the shared libuv loop (to know when socket is ready to receive more data), but maybe the fstrm tools don't provide good support for that. If we drop the thread, this library might not be worth depending on anymore (as the framing is trivial).