)]}'
{
  "commit": "a1f805e5e73a8fe166b71c6592d3837df0cd5e2e",
  "tree": "f8bc4a2d8d0bcaf4a1b7d4c547d7a2525459f852",
  "parents": [
    "85f7ffd5d2b320f73912b15fe8cef34bae297daf"
  ],
  "author": {
    "name": "Clemens Ladisch",
    "email": "clemens@ladisch.de",
    "time": "Mon Oct 25 11:42:20 2010 +0200"
  },
  "committer": {
    "name": "Stefan Richter",
    "email": "stefanr@s5r6.in-berlin.de",
    "time": "Sat Oct 30 23:37:19 2010 +0200"
  },
  "message": "firewire: ohci: fix race in AR split packet handling\n\nWhen handling an AR buffer that has been completely filled, we assumed\nthat its descriptor will not be read by the controller and can be\noverwritten.  However, when the last received packet happens to end at\nthe end of the buffer, the controller might not yet have moved on to the\nnext buffer and might read the branch address later.  If we overwrite\nand free the page before that, the DMA context will either go dead\nbecause of an invalid Z value, or go off into some random memory.\n\nTo fix this, ensure that the descriptor does not get overwritten by\nusing only the actual buffer instead of the entire page for reassembling\nthe split packet.  Furthermore, to avoid freeing the page too early,\nmove on to the next buffer only when some data in it guarantees that the\ncontroller has moved on.\n\nThis should eliminate the remaining firewire-net problems.\n\nSigned-off-by: Clemens Ladisch \u003cclemens@ladisch.de\u003e\nCc: 2.6.22-2.6.36 \u003cstable@kernel.org\u003e\nTested-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5826ae333b19ed7e3a58a0c12c18ce92315e19fd",
      "old_mode": 33188,
      "old_path": "drivers/firewire/ohci.c",
      "new_id": "7570b71a245386b683f52947ab6dde2778c121bb",
      "new_mode": 33188,
      "new_path": "drivers/firewire/ohci.c"
    }
  ]
}
