I think I understand the waste of sockets. If bad codes open a socket for reading or writing without close, here leave some useless socket fd here. But in your case, I want to understand what the kind of bad codes is. I restart swift-init, but find something seems clean. I restart swif with swift-init main start -n. With a pstree here, (worker is default 1): ─tmux(55319)─┬─bash(55411)───keystone-all(64641) │ └─bash(62276)───swift-init(47727)─┬─swift-proxy-ser(47728)───swift-proxy-ser(47800) │ ├─swift-container(47729)───swift-container(47798) │ ├─swift-container(47730)───swift-container(47797) │ ├─swift-container(47731)───swift-container(47799) │ ├─swift-container(47732)───swift-container(47790) │ ├─swift-account-s(47733)───swift-account-s(47782) │ ├─swift-account-s(47734)───swift-account-s(47768) │ ├─swift-account-s(47735)───swift-account-s(47805) │ ├─swift-account-s(47736)───swift-account-s(47793) │ ├─swift-object-se(47737)───swift-object-se(47788) │ ├─swift-object-se(47738)───swift-object-se(47770) │ ├─swift-object-se(47739)───swift-object-se(47796) │ └─swift-object-se(47740)───swift-object-se(47787) Use process of proxy-server as example: swift-init's fd: lrwx------ 1 swift swift 64 Mar 15 13:35 0 -> /dev/pts/5 lrwx------ 1 swift swift 64 Mar 15 13:35 1 -> /dev/pts/5 lrwx------ 1 swift swift 64 Mar 15 13:35 2 -> /dev/pts/5 proxy-server's fd: lrwx------ 1 swift swift 64 Mar 15 13:37 0 -> /dev/null lrwx------ 1 swift swift 64 Mar 15 13:37 1 -> /dev/null lrwx------ 1 swift swift 64 Mar 15 13:37 2 -> /dev/pts/5 lrwx------ 1 swift swift 64 Mar 15 13:37 3 -> socket:[456183] lrwx------ 1 swift swift 64 Mar 15 13:37 4 -> socket:[456199] lrwx------ 1 swift swift 64 Mar 15 13:37 5 -> socket:[456290] lrwx------ 1 swift swift 64 Mar 15 13:37 6 -> socket:[456291] lrwx------ 1 swift swift 64 Mar 15 13:37 7 -> socket:[456292] fd of proxy's worker; lrwx------ 1 swift swift 64 Mar 15 13:37 0 -> /dev/null lrwx------ 1 swift swift 64 Mar 15 13:37 1 -> /dev/null lrwx------ 1 swift swift 64 Mar 15 13:37 2 -> /dev/pts/5 lrwx------ 1 swift swift 64 Mar 15 13:37 3 -> socket:[456183] lrwx------ 1 swift swift 64 Mar 15 13:37 4 -> socket:[456303] lrwx------ 1 swift swift 64 Mar 15 13:37 5 -> socket:[456304] lrwx------ 1 swift swift 64 Mar 15 13:37 7 -> socket:[456292] lrwx------ 1 swift swift 64 Mar 15 13:37 8 -> socket:[456295] only 456292 is avail, which binds (0.0.0.0:8080, 0.0.0.0:0) now, is any fd wasted? Besides unavailable socket.