1. 23 8月, 2017 3 次提交
  2. 12 8月, 2017 8 次提交
  3. 09 8月, 2017 1 次提交
  4. 07 8月, 2017 1 次提交
  5. 03 8月, 2017 1 次提交
    • S
      netvsc: transparent VF management · 0c195567
      stephen hemminger 提交于
      This patch implements transparent fail over from synthetic NIC to
      SR-IOV virtual function NIC in Hyper-V environment. It is a better
      alternative to using bonding as is done now. Instead, the receive and
      transmit fail over is done internally inside the driver.
      
      Using bonding driver has lots of issues because it depends on the
      script being run early enough in the boot process and with sufficient
      information to make the association. This patch moves all that
      functionality into the kernel.
      Signed-off-by: NStephen Hemminger <sthemmin@microsoft.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0c195567
  6. 30 7月, 2017 3 次提交
  7. 26 7月, 2017 1 次提交
  8. 25 7月, 2017 6 次提交
  9. 20 7月, 2017 7 次提交
  10. 23 6月, 2017 2 次提交
  11. 16 6月, 2017 1 次提交
    • J
      networking: introduce and use skb_put_data() · 59ae1d12
      Johannes Berg 提交于
      A common pattern with skb_put() is to just want to memcpy()
      some data into the new space, introduce skb_put_data() for
      this.
      
      An spatch similar to the one for skb_put_zero() converts many
      of the places using it:
      
          @@
          identifier p, p2;
          expression len, skb, data;
          type t, t2;
          @@
          (
          -p = skb_put(skb, len);
          +p = skb_put_data(skb, data, len);
          |
          -p = (t)skb_put(skb, len);
          +p = skb_put_data(skb, data, len);
          )
          (
          p2 = (t2)p;
          -memcpy(p2, data, len);
          |
          -memcpy(p, data, len);
          )
      
          @@
          type t, t2;
          identifier p, p2;
          expression skb, data;
          @@
          t *p;
          ...
          (
          -p = skb_put(skb, sizeof(t));
          +p = skb_put_data(skb, data, sizeof(t));
          |
          -p = (t *)skb_put(skb, sizeof(t));
          +p = skb_put_data(skb, data, sizeof(t));
          )
          (
          p2 = (t2)p;
          -memcpy(p2, data, sizeof(*p));
          |
          -memcpy(p, data, sizeof(*p));
          )
      
          @@
          expression skb, len, data;
          @@
          -memcpy(skb_put(skb, len), data, len);
          +skb_put_data(skb, data, len);
      
      (again, manually post-processed to retain some comments)
      Reviewed-by: NStephen Hemminger <stephen@networkplumber.org>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      59ae1d12
  12. 10 6月, 2017 2 次提交
  13. 08 6月, 2017 3 次提交
  14. 01 6月, 2017 1 次提交