1. 19 1月, 2018 1 次提交
  2. 17 1月, 2018 14 次提交
  3. 16 1月, 2018 11 次提交
  4. 11 1月, 2018 13 次提交
  5. 09 1月, 2018 1 次提交
    • Z
      IB/rxe: remove unnecessary skb_clone in xmit · 5793b465
      Zhu Yanjun 提交于
      In xmit, there is a skb_clone. This function copies the struct sk_buff.
      And some parameters are changed to the new skb. Then the new skb is sent
      while the old skb is freed.
      
      While the function skb_clone is removed, the parameter changes are made on
      the old skb, then the old skb is sent. It can also work well.
      
      The following tests are made.
      
       server                       client
      ---------                    ---------
      |1.1.1.1|<----rxe-channel--->|1.1.1.2|
      ---------                    ---------
      
      On server: rping -s -a 1.1.1.1 -v -C 1000 -S 512
      On client: rping -c -a 1.1.1.1 -v -C 1000 -S 512
      
      The kernel config CONFIG_DEBUG_KMEMLEAK is enabled on both server
      and client.
      
      This test runs for several hours. There is no memory leak and the whole
      system can work well.
      
      As the above network, the following tests are made.
      
      Server: ibv_rc_pingpong -d rxe0 -g 1
      Client: ibv_rc_pingpong -d rxe0 -g 1 1.1.1.1
      
      The result on Server.
      Before:
      8192000 bytes in 0.88 seconds = 74.36 Mbit/sec
      1000 iters in 0.88 seconds = 881.30 usec/iter
      
      After:
      8192000 bytes in 0.81 seconds = 81.15 Mbit/sec
      1000 iters in 0.81 seconds = 807.62 usec/iter
      
      The throughput is enhanced and the latency is reduced.
      
      CC: Srinivas Eeda <srinivas.eeda@oracle.com>
      CC: Joe Jin <joe.jin@oracle.com>
      CC: Junxiao Bi <junxiao.bi@oracle.com>
      Signed-off-by: NZhu Yanjun <yanjun.zhu@oracle.com>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      5793b465