1. 27 Aug, 2011 10 commits
  2. 26 Aug, 2011 26 commits
  3. 25 Aug, 2011 4 commits
    • Francois Romieu's avatar
      cd296780
    • Francois Romieu's avatar
      78f6a6bd
    • Tim Chen's avatar
      Scm: Remove unnecessary pid & credential references in Unix socket's send and receive path · 0856a304
      Tim Chen authored
      Patch series 109f6e39..7361c36c back in 2.6.36 added functionality to
      allow credentials to work across pid namespaces for packets sent via
      UNIX sockets.  However, the atomic reference counts on pid and
      credentials caused plenty of cache bouncing when there are numerous
      threads of the same pid sharing a UNIX socket.  This patch mitigates the
      problem by eliminating extraneous reference counts on pid and
      credentials on both send and receive path of UNIX sockets. I found a 2x
      improvement in hackbench's threaded case.
      
      On the receive path in unix_dgram_recvmsg, currently there is an
      increment of reference count on pid and credentials in scm_set_cred.
      Then there are two decrement of the reference counts.  Once in scm_recv
      and once when skb_free_datagram call skb->destructor function
      unix_destruct_scm.  One pair of increment and decrement of ref count on
      pid and credentials can be eliminated from the receive path.  Until we
      destroy the skb, we already set a reference when we created the skb on
      the send side.
      
      On the send path, there are two increments of ref count on pid and
      credentials, once in scm_send and once in unix_scm_to_skb.  Then there
      is a decrement of the reference counts in scm_destroy's call to
      scm_destroy_cred at the end of unix_dgram_sendmsg functions.   One pair
      of increment and decrement of the reference counts can be removed so we
      only need to increment the ref counts once.
      
      By incorporating these changes, for hackbench running on a 4 socket
      NHM-EX machine with 40 cores, the execution of hackbench on
      50 groups of 20 threads sped up by factor of 2.
      
      Hackbench command used for testing:
      ./hackbench 50 thread 2000
      Signed-off-by: default avatarTim Chen <tim.c.chen@linux.intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0856a304
    • Michio Honda's avatar
      sctp: Bundle HEAERTBEAT into ASCONF_ACK · 6af29ccc
      Michio Honda authored
      With this patch a HEARTBEAT chunk is bundled into the ASCONF-ACK
      for ADD IP ADDRESS, confirming the new destination as quickly as
      possible.
      Signed-off-by: default avatarMichio Honda <micchie@sfc.wide.ad.jp>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6af29ccc