title: TCP backlog exhaustion causes incoming connections not to be signaled
body: <p>I am doing following:</p>
  
  <ol>
  <li>Open a listening TCP socket.</li>
  <li>Set BACKLOG to 10</li>
  <li>Open 50 connecting sockets (non-blocking connect is used)</li>
  <li>poll on the listening socket and accept the connections</li>
  <li>Connections that are able to transfer any data are closed</li>
  </ol>
  
  <p>What I see is that all 50 connects succeed, however, POLLIN on the listening socket is signaled only ~30 times. Which means only 30 connections are accepted.</p>
  
  <p>When I run netstat is such condition I see no hanging ESTABLISHED connections. There are couple of connections hanging in TIME_WAIT state, but that doesn't seem relevant.</p>
  
  <p>The above was observed on Linux, however, similar behaviour seems to happen on FreeBSD and NetBSD as well.</p>
  
  <p>Anyone any experience with this kind of thing?</p>