)]}'
{
  "commit": "c72e05756b900b3be24cd73a16de52bab80984c0",
  "tree": "4fc35ad9efc1a6a9ca14baa3612e551fb4da793e",
  "parents": [
    "2ac626955ed62ee8596f00581f959cc86e6198d1"
  ],
  "author": {
    "name": "Frederic Weisbecker",
    "email": "fweisbec@gmail.com",
    "time": "Sat May 16 18:12:08 2009 +0200"
  },
  "committer": {
    "name": "Frederic Weisbecker",
    "email": "fweisbec@gmail.com",
    "time": "Mon Sep 14 07:18:24 2009 +0200"
  },
  "message": "kill-the-bkl/reiserfs: acquire the inode mutex safely\n\nWhile searching a pathname, an inode mutex can be acquired\nin do_lookup() which calls reiserfs_lookup() which in turn\nacquires the write lock.\n\nOn the other side reiserfs_fill_super() can acquire the write_lock\nand then call reiserfs_lookup_privroot() which can acquire an\ninode mutex (the root of the mount point).\n\nSo we theoretically risk an AB - BA lock inversion that could lead\nto a deadlock.\n\nAs for other lock dependencies found since the bkl to mutex\nconversion, the fix is to use reiserfs_mutex_lock_safe() which\ndrops the lock dependency to the write lock.\n\n[ Impact: fix a possible deadlock with reiserfs ]\n\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e9a972bd0323fa99359f6da317d186ba66051cfc",
      "old_mode": 33188,
      "old_path": "fs/reiserfs/journal.c",
      "new_id": "d23d6d7a45a64da7c853c3415154463a43dee778",
      "new_mode": 33188,
      "new_path": "fs/reiserfs/journal.c"
    },
    {
      "type": "modify",
      "old_id": "6925b835a43b6f2f94e8a4217180b2e8d1735ab7",
      "old_mode": 33188,
      "old_path": "fs/reiserfs/xattr.c",
      "new_id": "59870a4751cc6c4cf6c24fe2ca1225821acd5f4f",
      "new_mode": 33188,
      "new_path": "fs/reiserfs/xattr.c"
    },
    {
      "type": "modify",
      "old_id": "508fb523863e06a643cca2123ecd823b149d9aab",
      "old_mode": 33188,
      "old_path": "include/linux/reiserfs_fs.h",
      "new_id": "a498d9266d8cb1677cc72d1941a3ca8a61bae7c4",
      "new_mode": 33188,
      "new_path": "include/linux/reiserfs_fs.h"
    }
  ]
}
