Hey guys,
I think completely hitless reload is what the end goal should be. Config changes are not the only benefit, hitless binary upgrade would be terrific as well :) This should already work on the BSDs, only in Linux we have that race condition before close() and we may be able to mimic BSD behavior with new kernel features like reuseport groups [1] and setsockopt SO_ATTACH_REUSEPORT_[CE]BPF [2] (basically attaching a BPF filter to the socket denying everything, waiting for the race to clear and only then close()ing the socket). That is, unless I missunderstood those 2 features, which are btw in linux 4.5. cheers, lukas [1] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=ef456144da8ef507c8cf504284b6042e9201a05c [2] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=538950a1b7527a0a52ccd9337e3fcd304f027f13