)]}'
{
  "commit": "09ee67abe997ee95cd3f6cc552fa9532bc722d83",
  "tree": "389f4726e5b4b3be1e4e4ed201a42ae33e67242d",
  "parents": [
    "2a874182842c6a70f245b7f1ad859f9152517951"
  ],
  "author": {
    "name": "Stefan Richter",
    "email": "stefanr@s5r6.in-berlin.de",
    "time": "Mon Aug 14 18:43:00 2006 +0200"
  },
  "committer": {
    "name": "Stefan Richter",
    "email": "stefanr@s5r6.in-berlin.de",
    "time": "Sun Sep 17 19:34:14 2006 +0200"
  },
  "message": "ieee1394: sbp2: handle \"sbp2util_node_write_no_wait failed\"\n\nFix for http://bugzilla.kernel.org/show_bug.cgi?id\u003d6948\n\nBecause sbp2 writes to the target\u0027s fetch agent\u0027s registers from within\natomic context, it cannot sleep to guaranteedly get a free transaction\nlabel.  This may repeatedly lead to \"sbp2util_node_write_no_wait failed\"\nand consequently to SCSI command abortion after timeout.  A likely cause\nis that many queue_command softirqs may occur before khpsbpkt (the\nieee1394 driver\u0027s thread which cleans up after finished transactions) is\nwoken up to recycle tlabels.\n\nSbp2 now schedules a workqueue job whenever sbp2_link_orb_command fails\nin sbp2util_node_write_no_wait.  The job will reliably get a transaction\nlabel because it can sleep.\n\nWe use the kernel-wide shared workqueue because it is unlikely that the\njob itself actually needs to sleep.  In the improbable case that it has\nto sleep, it doesn\u0027t need to sleep long since the standard transaction\ntimeout is 100ms.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "668b4512deffdd2fa05a63d93be119d6754a3aab",
      "old_mode": 33188,
      "old_path": "drivers/ieee1394/sbp2.c",
      "new_id": "c4d30a7b8b1e4d703e03701d3d7ffd01ba67988b",
      "new_mode": 33188,
      "new_path": "drivers/ieee1394/sbp2.c"
    },
    {
      "type": "modify",
      "old_id": "89098fe565e9b1cfaf6e46e226274c21c43f5f91",
      "old_mode": 33188,
      "old_path": "drivers/ieee1394/sbp2.h",
      "new_id": "1c9fe422cf4c9f9e8fa95417a24b85bbf3059ba9",
      "new_mode": 33188,
      "new_path": "drivers/ieee1394/sbp2.h"
    }
  ]
}
