)]}'
{
  "commit": "5a45f0086a2dcf50db7e6a0bf5be933880f85127",
  "tree": "f67d6ddb68c276bcf34077e7442b0ca722144c75",
  "parents": [
    "fc16dcd8c2e1e9bc91ed765957e1f2bbf334253e"
  ],
  "author": {
    "name": "Neal Cardwell",
    "email": "ncardwell@google.com",
    "time": "Wed Jan 18 17:47:59 2012 +0000"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Fri Jan 20 14:17:26 2012 -0500"
  },
  "message": "tcp: fix undo after RTO for CUBIC\n\nThis patch fixes CUBIC so that cwnd reductions made during RTOs can be\nundone (just as they already can be undone when using the default/Reno\nbehavior).\n\nWhen undoing cwnd reductions, BIC-derived congestion control modules\nwere restoring the cwnd from last_max_cwnd. There were two problems\nwith using last_max_cwnd to restore a cwnd during undo:\n\n(a) last_max_cwnd was set to 0 on state transitions into TCP_CA_Loss\n(by calling the module\u0027s reset() functions), so cwnd reductions from\nRTOs could not be undone.\n\n(b) when fast_covergence is enabled (which it is by default)\nlast_max_cwnd does not actually hold the value of snd_cwnd before the\nloss; instead, it holds a scaled-down version of snd_cwnd.\n\nThis patch makes the following changes:\n\n(1) upon undo, revert snd_cwnd to ca-\u003eloss_cwnd, which is already, as\nthe existing comment notes, the \"congestion window at last loss\"\n\n(2) stop forgetting ca-\u003eloss_cwnd on TCP_CA_Loss events\n\n(3) use ca-\u003elast_max_cwnd to check if we\u0027re in slow start\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Sangtae Ha \u003csangtae.ha@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f376b05cca818fd9496fe0cb8540a051e3e7e50a",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_cubic.c",
      "new_id": "a9077f441cb27b693d8ad1d710e4dba67aa93ebb",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_cubic.c"
    }
  ]
}
