)]}'
{
  "commit": "f83ef8c0b58dac17211a4c0b6df0e2b1bd6637b1",
  "tree": "61661a587df97cb2a9f73b5d0d1cf30f09644051",
  "parents": [
    "bcd76111178ebccedd46a9b3eaff65c78e5a70af"
  ],
  "author": {
    "name": "Herbert Xu",
    "email": "herbert@gondor.apana.org.au",
    "time": "Fri Jun 30 13:37:03 2006 -0700"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@sunset.davemloft.net",
    "time": "Fri Jun 30 14:12:10 2006 -0700"
  },
  "message": "[IPV6]: Added GSO support for TCPv6\n\nThis patch adds GSO support for IPv6 and TCPv6.  This is based on a patch\nby Ananda Raju \u003cAnanda.Raju@neterion.com\u003e.  His original description is:\n\n\tThis patch enables TSO over IPv6. Currently Linux network stacks\n\trestricts TSO over IPv6 by clearing of the NETIF_F_TSO bit from\n\t\"dev-\u003efeatures\". This patch will remove this restriction.\n\n\tThis patch will introduce a new flag NETIF_F_TSO6 which will be used\n\tto check whether device supports TSO over IPv6. If device support TSO\n\tover IPv6 then we don\u0027t clear of NETIF_F_TSO and which will make the\n\tTCP layer to create TSO packets. Any device supporting TSO over IPv6\n\twill set NETIF_F_TSO6 flag in \"dev-\u003efeatures\" along with NETIF_F_TSO.\n\n\tIn case when user disables TSO using ethtool, NETIF_F_TSO will get\n\tcleared from \"dev-\u003efeatures\". So even if we have NETIF_F_TSO6 we don\u0027t\n\tget TSO packets created by TCP layer.\n\n\tSKB_GSO_TCPV4 renamed to SKB_GSO_TCP to make it generic GSO packet.\n\tSKB_GSO_UDPV4 renamed to SKB_GSO_UDP as UFO is not a IPv4 feature.\n\tUFO is supported over IPv6 also\n\n\tThe following table shows there is significant improvement in\n\tthroughput with normal frames and CPU usage for both normal and jumbo.\n\n\t--------------------------------------------------\n\t|          |     1500        |      9600         |\n\t|          ------------------|-------------------|\n\t|          | thru     CPU    |  thru     CPU     |\n\t--------------------------------------------------\n\t| TSO OFF  | 2.00   5.5% id  |  5.66   20.0% id  |\n\t--------------------------------------------------\n\t| TSO ON   | 2.63   78.0 id  |  5.67   39.0% id  |\n\t--------------------------------------------------\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3defe5d4f7d3ea19004b21d39081e2a9c0b10572",
      "old_mode": 33188,
      "old_path": "drivers/net/s2io.c",
      "new_id": "74764694c64f7f6f164d534c6205bf9b7946537e",
      "new_mode": 33188,
      "new_path": "drivers/net/s2io.c"
    },
    {
      "type": "modify",
      "old_id": "6db03ab7cec85bdef4836fa0999b3c4a50b73402",
      "old_mode": 33188,
      "old_path": "include/linux/netdevice.h",
      "new_id": "85f99f60deea46c3f5af0f24f9c3a806b51dfd7c",
      "new_mode": 33188,
      "new_path": "include/linux/netdevice.h"
    },
    {
      "type": "modify",
      "old_id": "59918be91d0a95c203e43356ae95371861e97132",
      "old_mode": 33188,
      "old_path": "include/linux/skbuff.h",
      "new_id": "57d7d4965f9aa0fc13a1cd10c06501d90c67e844",
      "new_mode": 33188,
      "new_path": "include/linux/skbuff.h"
    },
    {
      "type": "modify",
      "old_id": "a398ae5e30f991c427638af44216de453492474f",
      "old_mode": 33188,
      "old_path": "include/net/ip6_route.h",
      "new_id": "ab29dafb1a6af2711557a202e70127e882e3b18c",
      "new_mode": 33188,
      "new_path": "include/net/ip6_route.h"
    },
    {
      "type": "modify",
      "old_id": "7bb366f70934787e19b7dfa2f0ddd05895cd12a0",
      "old_mode": 33188,
      "old_path": "include/net/tcp_ecn.h",
      "new_id": "4629d77173f23e9954cdf6106d581de1b668c559",
      "new_mode": 33188,
      "new_path": "include/net/tcp_ecn.h"
    },
    {
      "type": "modify",
      "old_id": "7624fd1d8f9fe8860479db3d3e9d530a7cd69cda",
      "old_mode": 33188,
      "old_path": "net/ipv4/ip_output.c",
      "new_id": "243d2a763363017c633b443aa432a601476a542e",
      "new_mode": 33188,
      "new_path": "net/ipv4/ip_output.c"
    },
    {
      "type": "modify",
      "old_id": "e19457fe4f6edb79ef059dbf88f93ed1836bc8d9",
      "old_mode": 33188,
      "old_path": "net/ipv6/af_inet6.c",
      "new_id": "0f26073117a3eb52e0ede9288c0d58e062a4a994",
      "new_mode": 33188,
      "new_path": "net/ipv6/af_inet6.c"
    },
    {
      "type": "modify",
      "old_id": "eb2865d5ae286cdfffa2c098aa881c7c752b526e",
      "old_mode": 33188,
      "old_path": "net/ipv6/inet6_connection_sock.c",
      "new_id": "5624f373164dd22fd64340a1bbdf6bfa83d6700f",
      "new_mode": 33188,
      "new_path": "net/ipv6/inet6_connection_sock.c"
    },
    {
      "type": "modify",
      "old_id": "abb94de3376876a02eb1adcb5081ed021a93a67d",
      "old_mode": 33188,
      "old_path": "net/ipv6/ip6_output.c",
      "new_id": "11007c75ae026d7a5c9bb1b0c071dff33eb3d00b",
      "new_mode": 33188,
      "new_path": "net/ipv6/ip6_output.c"
    },
    {
      "type": "modify",
      "old_id": "bf7f8c26c48844d6fae0b0d5884966db8f1b70d3",
      "old_mode": 33188,
      "old_path": "net/ipv6/tcp_ipv6.c",
      "new_id": "7ea5bea49aa947f98f9b4bf295fb870754e7a845",
      "new_mode": 33188,
      "new_path": "net/ipv6/tcp_ipv6.c"
    }
  ]
}
