)]}'
{
  "commit": "e13d5fef88c40b87c8430f8274c3a9ca32ef90bc",
  "tree": "5abcf8458b8fd80e25cbfa54776550b7d49d3f01",
  "parents": [
    "c8292d1da53fa60c7516ab03a9d83f7ea266d335"
  ],
  "author": {
    "name": "Nicholas Bellinger",
    "email": "nab@linux-iscsi.org",
    "time": "Fri Oct 26 15:35:45 2012 -0700"
  },
  "committer": {
    "name": "Nicholas Bellinger",
    "email": "nab@linux-iscsi.org",
    "time": "Fri Oct 26 16:21:20 2012 -0700"
  },
  "message": "target: Fix double-free of se_cmd in target_complete_tmr_failure\n\nFabric drivers currently expect to internally release se_cmd in the event\nof a TMR failure during target_submit_tmr(), which means the immediate call\nto transport_generic_free_cmd() after TFO-\u003equeue_tm_rsp() from within\ntarget_complete_tmr_failure() workqueue context is wrong.\n\nThis is done as some fabrics expect TMR operations to be acknowledged\nbefore releasing the descriptor, so the assumption that core is releasing\nse_cmd associated TMR memory is incorrect.  This fixes a OOPs where\ntransport_generic_free_cmd() was being called more than once.\n\nThis bug was originally observed with tcm_qla2xxx fabric ports.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Andy Grover \u003cagrover@redhat.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c33baff86aa699deacd04bd873e3c31fa5569cf5",
      "old_mode": 33188,
      "old_path": "drivers/target/target_core_transport.c",
      "new_id": "9097155e9ebe7100c0bc1a4ac13b7c508a84ac8a",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_transport.c"
    }
  ]
}
