1. 24 Apr, 2012 3 commits
    • Eric Dumazet's avatar
      tcp: sk_add_backlog() is too agressive for TCP · da882c1f
      Eric Dumazet authored
      While investigating TCP performance problems on 10Gb+ links, we found a
      tcp sender was dropping lot of incoming ACKS because of sk_rcvbuf limit
      in sk_add_backlog(), especially if receiver doesnt use GRO/LRO and sends
      one ACK every two MSS segments.
      
      A sender usually tweaks sk_sndbuf, but sk_rcvbuf stays at its default
      value (87380), allowing a too small backlog.
      
      A TCP ACK, even being small, can consume nearly same truesize space than
      outgoing packets. Using sk_rcvbuf + sk_sndbuf as a limit makes sense and
      is fast to compute.
      
      Performance results on netperf, single flow, receiver with disabled
      GRO/LRO : 7500 Mbits instead of 6050 Mbits, no more TCPBacklogDrop
      increments at sender.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Neal Cardwell <ncardwell@google.com>
      Cc: Tom Herbert <therbert@google.com>
      Cc: Maciej Żenczykowski <maze@google.com>
      Cc: Yuchung Cheng <ycheng@google.com>
      Cc: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
      Cc: Rick Jones <rick.jones2@hp.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      da882c1f
    • Eric Dumazet's avatar
      net: add a limit parameter to sk_add_backlog() · f545a38f
      Eric Dumazet authored
      sk_add_backlog() & sk_rcvqueues_full() hard coded sk_rcvbuf as the
      memory limit. We need to make this limit a parameter for TCP use.
      
      No functional change expected in this patch, all callers still using the
      old sk_rcvbuf limit.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Neal Cardwell <ncardwell@google.com>
      Cc: Tom Herbert <therbert@google.com>
      Cc: Maciej Żenczykowski <maze@google.com>
      Cc: Yuchung Cheng <ycheng@google.com>
      Cc: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
      Cc: Rick Jones <rick.jones2@hp.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f545a38f
    • Eric W. Biederman's avatar
      net ax25: Fix the build when sysctl support is disabled. · b9898507
      Eric W. Biederman authored
      Randy Dunlap <rdunlap@xenotime.net> reported:
      
      > On 04/23/2012 12:07 AM, Stephen Rothwell wrote:
      >
      >> Hi all,
      >>
      >> Changes since 20120420:
      >
      >
      > include/net/ax25.h:447:75: error: expected ';' before '}' token
      >
      > static inline int ax25_register_dev_sysctl(ax25_dev *ax25_dev) { return 0 };
      > static inline void ax25_unregister_dev_sysctl(ax25_dev *ax25_dev) {};
      >
      > First function:  move ';' inside braces.
      > Second function:  drop the ';'.
      
      Put the semicolons where it makes sense.
      Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
      Acked-by: default avatarRandy Dunlap <rdunlap@xenotime.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b9898507
  2. 23 Apr, 2012 3 commits
  3. 21 Apr, 2012 34 commits