)]}'
{
  "commit": "65e4308d2500e7daf60c3dccc202c61ffb066c63",
  "tree": "76a2e00004f645d09b2e59b485fb2aea0af45234",
  "parents": [
    "367ae3cd74bdc2ad32d71293427fec570b14ddcd"
  ],
  "author": {
    "name": "Trond Myklebust",
    "email": "Trond.Myklebust@netapp.com",
    "time": "Tue Aug 16 11:49:44 2005 -0400"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Tue Aug 16 09:30:58 2005 -0700"
  },
  "message": "[PATCH] NFS: Ensure we always update inode-\u003ei_mode when doing O_EXCL creates\n\nWhen the client performs an exclusive create and opens the file for writing,\na Netapp filer will first create the file using the mode 01777. It does this\nsince an NFSv3/v4 exclusive create cannot immediately set the mode bits.\nThe 01777 mode then gets put into the inode-\u003ei_mode. After the file creation\nis successful, we then do a setattr to change the mode to the correct value\n(as per the NFS spec).\n\nThe problem is that nfs_refresh_inode() no longer updates inode-\u003ei_mode, so\nthe latter retains the 01777 mode. A bit later, the VFS notices this, and calls\nremove_suid(). This of course now resets the file mode to inode-\u003ei_mode \u0026 0777.\nHey presto, the file mode on the server is now magically changed to 0777. Duh...\n\nFixes http://bugzilla.linux-nfs.org/show_bug.cgi?id\u003d32\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4845911f1c63f3e3436e5591be1b8c08b006a181",
      "old_mode": 33188,
      "old_path": "fs/nfs/inode.c",
      "new_id": "bb7ca022bcb2b62df3a19fa44a167ff411899a0b",
      "new_mode": 33188,
      "new_path": "fs/nfs/inode.c"
    },
    {
      "type": "modify",
      "old_id": "7851569b31c63f03a5095f503d0b1b18183273d4",
      "old_mode": 33188,
      "old_path": "fs/nfs/nfs3proc.c",
      "new_id": "2681485cf2d00f9f9fdd647a8bf1cd9861299104",
      "new_mode": 33188,
      "new_path": "fs/nfs/nfs3proc.c"
    },
    {
      "type": "modify",
      "old_id": "1b76f80aedb921c737586fbca6ceeac3f0f522f2",
      "old_mode": 33188,
      "old_path": "fs/nfs/nfs4proc.c",
      "new_id": "0c5a308e49638171291d22aa3630fc431ac74528",
      "new_mode": 33188,
      "new_path": "fs/nfs/nfs4proc.c"
    },
    {
      "type": "modify",
      "old_id": "cedf636bcf3c9f68b53b6c979d2116f5f4a4511d",
      "old_mode": 33188,
      "old_path": "fs/nfs/proc.c",
      "new_id": "be23c3fb9260051b8069ad4afbf2257bed1ca502",
      "new_mode": 33188,
      "new_path": "fs/nfs/proc.c"
    },
    {
      "type": "modify",
      "old_id": "8ea249110fb0b5029c88b35717f2ce3e5387f507",
      "old_mode": 33188,
      "old_path": "include/linux/nfs_fs.h",
      "new_id": "7d78a783c64a1bfbfb6aa60281ee651d2be53462",
      "new_mode": 33188,
      "new_path": "include/linux/nfs_fs.h"
    }
  ]
}
