)]}'
{
  "commit": "f1ecd5d9e7366609d640ff4040304ea197fbc618",
  "tree": "ef4901d52ad0d2555094998f02d08788e197c20a",
  "parents": [
    "4d1a2d9ec1c17df077ed09a0d135bccf5637a3b7"
  ],
  "author": {
    "name": "Damian Lukowski",
    "email": "damian@tvk.rwth-aachen.de",
    "time": "Wed Aug 26 00:16:31 2009 +0000"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Tue Sep 01 02:45:42 2009 -0700"
  },
  "message": "Revert Backoff [v3]: Revert RTO on ICMP destination unreachable\n\nHere, an ICMP host/network unreachable message, whose payload fits to\nTCP\u0027s SND.UNA, is taken as an indication that the RTO retransmission has\nnot been lost due to congestion, but because of a route failure\nsomewhere along the path.\nWith true congestion, a router won\u0027t trigger such a message and the\npatched TCP will operate as standard TCP.\n\nThis patch reverts one RTO backoff, if an ICMP host/network unreachable\nmessage, whose payload fits to TCP\u0027s SND.UNA, arrives.\nBased on the new RTO, the retransmission timer is reset to reflect the\nremaining time, or - if the revert clocked out the timer - a retransmission\nis sent out immediately.\nBackoffs are only reverted, if TCP is in RTO loss recovery, i.e. if\nthere have been retransmissions and reversible backoffs, already.\n\nChanges from v2:\n1) Renaming of skb in tcp_v4_err() moved to another patch.\n2) Reintroduced tcp_bound_rto() and __tcp_set_rto().\n3) Fixed code comments.\n\nSigned-off-by: Damian Lukowski \u003cdamian@tvk.rwth-aachen.de\u003e\nAcked-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cbb2a4889fc95b572737f79c819007a3cb32ae68",
      "old_mode": 33188,
      "old_path": "include/net/tcp.h",
      "new_id": "54f212ce8aafda36ea14d8cfd973fb4bd3bffcbe",
      "new_mode": 33188,
      "new_path": "include/net/tcp.h"
    },
    {
      "type": "modify",
      "old_id": "2bdb0da237e69f52f411dd8bcd87219a9b1c14e9",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_input.c",
      "new_id": "af6d6fa00db124f091df1559a31c0bb95d07b8ac",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_input.c"
    },
    {
      "type": "modify",
      "old_id": "6ca1bc8c3025fc652e425cb82bcab49baae05618",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_ipv4.c",
      "new_id": "6755e29a6dd3d7c072050b0951d84ba6d5824643",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_ipv4.c"
    },
    {
      "type": "modify",
      "old_id": "c520fb6e06d9eeb8e8cc4b127fca19d91276577e",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_timer.c",
      "new_id": "408fa4b7b9ba19d4dba2a65033a1047dd4f1debe",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_timer.c"
    }
  ]
}
