> The write_file() thread is queuing up a lot of async IO that is then flushed by chronyc's do_exit -> put_files_struct -> filp_close, which will be a synchronous wait for all that IO. > > If that's not what you want I think you'll want to figure out how to drop CLONE_FILES from std::thread's clone(2) syscall. Thanks for the input. In reality the thread that writes to the NFS doesn't write that much data but enough data to interfere with chronyc tracking. I can see in wireshark that it takes over 100ms to send all data and by a coincident the writing happens at the same time as chronyc tracking. There are also several other threads in this application that we fear might be influenced as well. I am a bit surprised that exiting of a thread will flush the NFS writes for another thread. Will have to use sshfs instead for now.