The uname command / subprocess spawned by vpnkit is not cleaned up / reaped appropriately. The result is a zombie subprocess which lingers in the process table.
This seems to be due to not calling Unix.close_process_in instead of close_in in src/bin/config/discover.ml
Screenshot of htop

Output of ps -o pid,state,xstat,command -p 72041
PID STAT XSTAT COMMAND
72041 Z 0 (uname)