)]}'
{
  "commit": "63583cca745f440167bf27877182dc13e19d4bcf",
  "tree": "c1eb3ec5d35cd71c6373e82992710c91f2cb8bdd",
  "parents": [
    "7a1e9d829f8bd821466c5ea834ad6f378740d2be"
  ],
  "author": {
    "name": "Hannes Reinecke",
    "email": "hare@suse.de",
    "time": "Tue Jan 18 10:13:11 2011 +0100"
  },
  "committer": {
    "name": "James Bottomley",
    "email": "James.Bottomley@suse.de",
    "time": "Sat Feb 12 10:33:08 2011 -0600"
  },
  "message": "[SCSI] Add detailed SCSI I/O errors\n\nInstead of just passing \u0027EIO\u0027 for any I/O error we should be\nnotifying the upper layers with more details about the cause\nof this error.\n\nUpdate the possible I/O errors to:\n\n- ENOLINK: Link failure between host and target\n- EIO: Retryable I/O error\n- EREMOTEIO: Non-retryable I/O error\n- EBADE: I/O error restricted to the I_T_L nexus\n\n\u0027Retryable\u0027 in this context means that an I/O error _might_ be\nrestricted to the I_T_L nexus (vulgo: path), so retrying on another\nnexus / path might succeed.\n\n\u0027Non-retryable\u0027 in general refers to a target failure, so this\nerror will always be generated regardless of the I_T_L nexus\nit was send on.\n\nI/O errors restricted to the I_T_L nexus might be retried\non another nexus / path, but they should _not_ be queued\nif no paths are available.\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "45c75649b9e083e489e1a935a2617a8d0461749f",
      "old_mode": 33188,
      "old_path": "drivers/scsi/scsi_error.c",
      "new_id": "991de3c15cfcbc4bcc61096272e747f40e30448c",
      "new_mode": 33188,
      "new_path": "drivers/scsi/scsi_error.c"
    },
    {
      "type": "modify",
      "old_id": "9045c52abd25798994caf0e63f7fb4c8700446a8",
      "old_mode": 33188,
      "old_path": "drivers/scsi/scsi_lib.c",
      "new_id": "8d4ef8efa3cd841a5e212140ecdebdeab9802259",
      "new_mode": 33188,
      "new_path": "drivers/scsi/scsi_lib.c"
    },
    {
      "type": "modify",
      "old_id": "648d233580387bb57b584508c748eccee8da9f21",
      "old_mode": 33188,
      "old_path": "include/scsi/scsi.h",
      "new_id": "ead8dd054480e6b0fea8b2ae64833e968707a386",
      "new_mode": 33188,
      "new_path": "include/scsi/scsi.h"
    }
  ]
}
