)]}'
{
  "commit": "b9ce204f0a265f819d10c943a607746abb62f245",
  "tree": "45078d076bcd952d8820c590653939b312d06ac2",
  "parents": [
    "22b1a9203ea634ac0ee5240e021613da3328275f"
  ],
  "author": {
    "name": "Ilpo Järvinen",
    "email": "ilpo.jarvinen@helsinki.fi",
    "time": "Fri Jun 15 15:08:43 2007 -0700"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Fri Jun 15 15:08:43 2007 -0700"
  },
  "message": "[TCP]: Congestion control API RTT sampling fix\n\nCommit 164891aadf1721fca4dce473bb0e0998181537c6 broke RTT\nsampling of congestion control modules. Inaccurate timestamps\ncould be fed to them without providing any way for them to\nidentify such cases. Previously RTT sampler was called only if\nFLAG_RETRANS_DATA_ACKED was not set filtering inaccurate\ntimestamps nicely. In addition, the new behavior could give an\ninvalid timestamp (zero) to RTT sampler if only skbs with\nTCPCB_RETRANS were ACKed. This solves both problems.\n\nSigned-off-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": "c762954bda148fa18ab13f6d1f71aab26d2e3441",
      "old_mode": 33188,
      "old_path": "include/linux/ktime.h",
      "new_id": "2b139f66027f3de7ae5f1a60df00ddf39c8cb147",
      "new_mode": 33188,
      "new_path": "include/linux/ktime.h"
    },
    {
      "type": "modify",
      "old_id": "e7367c74e1bbedbca7c81ad69215d0e751deb9bb",
      "old_mode": 33188,
      "old_path": "include/linux/skbuff.h",
      "new_id": "6f0b2f7d00108835253403dc5f74039b49e3d002",
      "new_mode": 33188,
      "new_path": "include/linux/skbuff.h"
    },
    {
      "type": "modify",
      "old_id": "4adc47c55351a49d09d172b1cb5a3baa194207bc",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_illinois.c",
      "new_id": "b2b2256d3b8450c944bc8d3a8869a76aaf2ceb69",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_illinois.c"
    },
    {
      "type": "modify",
      "old_id": "d6d0f9b6cdc6f3eda97ea76b6c69610fba902b6a",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_input.c",
      "new_id": "aaf6f66677f992fc09dcf19f135eb483252efcf3",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_input.c"
    },
    {
      "type": "modify",
      "old_id": "43294ad9f63ef839cd26f693ccf1a4eb8b4173ee",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_lp.c",
      "new_id": "e49836ce012e768a4586432f7b62be9a0b6e5140",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_lp.c"
    },
    {
      "type": "modify",
      "old_id": "73e19cf7df2176e6189c45569939bf42e51f0363",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_vegas.c",
      "new_id": "e218a51ceced186b9c37acab906009dfbfe94233",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_vegas.c"
    },
    {
      "type": "modify",
      "old_id": "9edb340f2f95c6e003f5ff09f135425423881134",
      "old_mode": 33188,
      "old_path": "net/ipv4/tcp_veno.c",
      "new_id": "ec854cc5fad50fd90899818086310cd51b61cbdc",
      "new_mode": 33188,
      "new_path": "net/ipv4/tcp_veno.c"
    }
  ]
}
