1. 05 May, 2014 22 commits
  2. 04 May, 2014 5 commits
  3. 03 May, 2014 1 commit
  4. 02 May, 2014 9 commits
  5. 30 Apr, 2014 3 commits
    • KY Srinivasan's avatar
      hyperv: Enable sendbuf mechanism on the send path · c25aaf81
      KY Srinivasan authored
      We send packets using a copy-free mechanism (this is the Guest to Host transport
      via VMBUS). While this is obviously optimal for large packets,
      it may not be optimal for small packets. Hyper-V host supports
      a second mechanism for sending packets that is "copy based". We implement that
      mechanism in this patch.
      
      In this version of the patch I have addressed a comment from David Miller.
      
      With this patch (and all of the other offload and VRSS patches), we are now able
      to almost saturate a 10G interface between Linux VMs on Hyper-V
      on different hosts - close to  9 Gbps as measured via iperf.
      Signed-off-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
      Reviewed-by: default avatarHaiyang Zhang <haiyangz@microsoft.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c25aaf81
    • Dinh Nguyen's avatar
      net: stmmac: set phy to use polling by default · cc80ee13
      Dinh Nguyen authored
      mii_irq[] array is never initialized anywhere in the driver, thus mii_irq[]
      will always equate to zero. So, for the case where the PHY does not have an
      irq, we should use PHY_POLL for that situation.
      Signed-off-by: default avatarDinh Nguyen <dinguyen@altera.com>
      Tested-by: default avatarVince Bridgers <vbridger@altera.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cc80ee13
    • Zhangjie \(HZ\)'s avatar
      virtio-net: Set needed_headroom for virtio-net when VIRTIO_F_ANY_LAYOUT is true · 6ebbc1a6
      Zhangjie \(HZ\) authored
      This is a small supplement for commit e7428e95
      ("virtio-net: put virtio-net header inline with data"). TCP packages have
      enough room to put virtio-net header in, but UDP packages do not. By
      setting dev->needed_headroom for virtio-net device, UDP packages could have
      enough room.
      
      For UDP packages, sk_buff is alloced in fun __ip_append_data. The size is
      "alloclen + hh_len + 15", and "hh_len = LL_RESERVED_SPACE(rt-dst.dev);".
      The Macro is defined as follows:
      #define LL_RESERVED_SPACE(dev) \
           ((((dev)->hard_header_len+(dev)->needed_headroom)\
           &~(HH_DATA_MOD - 1)) + HH_DATA_MOD)
      By default, for UDP packages, after skb is allocated, only 16 bytes
      reserved. And 2 bytes remained after mac header is set. That is not enough
      to put virtio-net header in. If we set dev->needed_headroom to 12 or 10
      (according to mergeable_rx_bufs is on or off ), more room can be reserved.
      Then there is enough room for UDP packages to put the header in.
      
      test result list as below:
      guest and host: suse11sp3, netperf, intel 2.4GHz
      +-------+---------+---------+---------+---------+
      |       |   old             |   new             |
      +-------+---------+---------+---------+---------+
      | UDP   |  Gbit/s | pps     |  Gbit/s | pps     |
      | 64    |  0.57   | 692232  |  0.61   | 742420  |
      | 256   |  1.60   | 686860  |  1.71   | 733331  |
      | 512   |  2.92   | 674576  |  3.07   | 710446  |
      | 1024  |  4.99   | 598977  |  5.17   | 620821  |
      | 1460  |  5.68   | 483757  |  7.16   | 610519  |
      | 4096  |  6.98   | 637468  |  7.21   | 658471  |
      +-------+---------+---------+---------+---------+
      Signed-off-by: default avatarZhang Jie <zhangjie14@huawei.com>
      Acked-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Acked-by: default avatarJason Wang <jasowang@redhat.com>
      Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6ebbc1a6