)]}'
{
  "commit": "7c7dce9209161eb260cdf9e9172f72c3a02379e6",
  "tree": "81135190b6aadfc9126dcbff63710cd97fe5b6a1",
  "parents": [
    "12dbf3fc4d06d2c0c4c44dc0612df04248b3cfd3"
  ],
  "author": {
    "name": "Alexander Viro",
    "email": "aviro@redhat.com",
    "time": "Sat Jan 14 15:29:55 2006 -0500"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Sat Jan 14 12:38:17 2006 -0800"
  },
  "message": "[PATCH] Fix double decrement of mqueue_mnt-\u003emnt_count in sys_mq_open\n\nFixed the refcounting on failure exits in sys_mq_open() and\ncleaned the logics up.  Rules are actually pretty simple - dentry_open()\nexpects vfsmount and dentry to be pinned down and it either transfers\nthem into created struct file or drops them.  Old code had been very\nconfused in that area - if dentry_open() had failed either in do_open()\nor do_create(), we ended up dentry and mqueue_mnt dropped twice, once\nby dentry_open() cleanup and then by sys_mq_open().\n\nFix consists of making the rules for do_create() and do_open()\nsame as for dentry_open() and updating the sys_mq_open() accordingly;\nthat actually leads to more straightforward code and less work on\nnormal path.\n\nSigned-off-by: Al Viro \u003caviro@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4e776f9c80e7c1fbe0da01a1dcdc9f63c04ebd89",
      "old_mode": 33188,
      "old_path": "ipc/mqueue.c",
      "new_id": "59302fc3643b9243889946661249ab31d5f66d6f",
      "new_mode": 33188,
      "new_path": "ipc/mqueue.c"
    }
  ]
}
