1. 15 Aug, 2017 1 commit
    • Lennart Poettering's avatar
      sysdeps: increase listen() backlog of AF_UNIX sockets to SOMAXCONN · a8dc1ebd
      Lennart Poettering authored
      Previously, the listen() backlog was set to an arbitrary 30. This means
      that if dbus-daemon is overloaded only 30 more connections may be queued
      by the kernel, before connect() fails with EAGAIN. (Note that EAGAIN !=
      EINPROGRESS -- the latter is what is returned if a connection is queued
      and being processed for asynchronous sockets; EAGAIN in this case is
      really an error, that cannot be recovered from).
      
      Most software simply sets SOMAXCONN as backlog for AF_UNIX sockets, to
      allow queuing of as many connections as the kernel allows. SOMAXCONN is
      128 on Linux, which is not particularly high, but at least higher than
      30.
      
      This patch changes dbus-daemon to do the same.
      
      I noticed this when flooding dbus-daemon with a lot of connections,
      where it pretty quickly ceased to respond, much earlier than it really
      should.
      
      Note that the backlog has nothing to do with the number of concurrent
      connections allowed, it simply controls how many queued, but not
      accept()ed connections there may be on the listening socket.
      
      (cherry picked from commit 12bd6e89)
      Bug: https://bugs.freedesktop.org/show_bug.cgi?id=95264
      Bug-Debian: https://bugs.debian.org/872144Reviewed-by: Simon McVittie's avatarSimon McVittie <smcv@collabora.com>
      Reviewed-by: Thiago Macieira's avatarThiago Macieira <thiago@kde.org>
      a8dc1ebd
  2. 28 Jul, 2017 2 commits
  3. 27 Jul, 2017 2 commits
  4. 07 Jul, 2017 5 commits
  5. 06 Jul, 2017 2 commits
  6. 05 Jul, 2017 3 commits
  7. 29 Jun, 2017 2 commits
  8. 27 Jun, 2017 4 commits
  9. 19 Apr, 2017 1 commit
  10. 07 Apr, 2017 1 commit
  11. 05 Apr, 2017 3 commits
  12. 22 Mar, 2017 3 commits
  13. 16 Feb, 2017 6 commits
  14. 01 Feb, 2017 1 commit
  15. 29 Nov, 2016 4 commits