)]}'
{
  "commit": "53c165e0a6c8a4ff7df316557528fa7a52d20711",
  "tree": "354c599a07c45c71da2b848a90bbe4a98c42d333",
  "parents": [
    "51490c89f95b8581782e9baa855da166441852be"
  ],
  "author": {
    "name": "James Bottomley",
    "email": "James.Bottomley@steeleye.com",
    "time": "Mon Aug 22 10:06:19 2005 -0500"
  },
  "committer": {
    "name": "James Bottomley",
    "email": "jejb@mulgrave.(none)",
    "time": "Tue Aug 30 22:44:20 2005 -0500"
  },
  "message": "[SCSI] correct attribute_container list usage\n\nOne of the changes in the attribute_container code in the scsi-misc tree\nwas to add a lock to protect the list of devices per container.  This,\nunfortunately, leads to potential scheduling while atomic problems if\nthere\u0027s a sleep in the function called by a trigger.\n\nThe correct solution is to use the kernel klist infrastructure instead\nwhich allows lockless traversal of a list.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ebcae5c34133d42796b01aab26f130bd53557472",
      "old_mode": 33188,
      "old_path": "drivers/base/attribute_container.c",
      "new_id": "6c0f49340eb2a98cf7a015f390833aede2615cb9",
      "new_mode": 33188,
      "new_path": "drivers/base/attribute_container.c"
    },
    {
      "type": "modify",
      "old_id": "ee83fe64a1025512aa1ad2553502bc19e618e544",
      "old_mode": 33188,
      "old_path": "include/linux/attribute_container.h",
      "new_id": "93bfb0beb62a9f1903d37e266fcb22b8284cf5ec",
      "new_mode": 33188,
      "new_path": "include/linux/attribute_container.h"
    }
  ]
}
