)]}'
{
  "log": [
    {
      "commit": "7451c4f0ee53e36fd74168af8df75b28fd04a2aa",
      "tree": "d981de4189c559d8e0a9f291c9919dde396c9a04",
      "parents": [
        "b9d9506d944865876e67281a4e4269d823ce5381"
      ],
      "author": {
        "name": "Carsten Otte",
        "email": "cotte@de.ibm.com",
        "time": "Wed Apr 19 13:06:37 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Apr 19 13:06:37 2006 -0400"
      },
      "message": "NFS: remove needless check in nfs_opendir()\n\nLocal variable res was initialized to 0 - no check needed here.\n\nSigned-off-by: Carsten Otte \u003ccotte@de.ibm.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4b6f5d20b04dcbc3d888555522b90ba6d36c4106",
      "tree": "420f271eaef7d3def7d4433b151c3cb6d7a54770",
      "parents": [
        "99ac48f54a91d02140c497edc31dc57d4bc5c85d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Tue Mar 28 01:56:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:06 2006 -0800"
      },
      "message": "[PATCH] Make most file operations structs in fs/ const\n\nThis is a conversion to make the various file_operations structs in fs/\nconst.  Basically a regexp job, with a few manual fixups\n\nThe goal is both to increase correctness (harder to accidentally write to\nshared datastructures) and reducing the false sharing of cachelines with\nthings that get dirty in .data (while .rodata is nicely read only and thus\ncache clean)\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "03f28e3a2059fc466761d872122f30acb7be61ae",
      "tree": "d478e553b79520c34bb3d06e75b59609de2993f4",
      "parents": [
        "01d0ae8beaee75d954900109619b700fe68707d9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:48 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:48 2006 -0500"
      },
      "message": "NFS: Make nfs_fhget() return appropriate error values\n\nCurrently it returns NULL, which usually gets interpreted as ENOMEM. In\nfact it can mean a host of issues.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1e7cb3dc12dbbac690d78c84f9c7cb11132ed121",
      "tree": "a6bc36250a6fe5a754b464099a50baf98ce36e78",
      "parents": [
        "e95b85ec9d8c8ad4667f746aa4c9d22c281efc44"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@netapp.com",
        "time": "Mon Mar 20 13:44:24 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:24 2006 -0500"
      },
      "message": "NFS: directory trace messages\n\nReuse NFSDBG_DIRCACHE and NFSDBG_LOOKUPCACHE to provide additional\ndiagnostic messages that trace the operation of the NFS client\u0027s\ndirectory behavior.  A few new messages are now generated when NFSDBG_VFS\nis active, as well, to trace normal VFS activity.  This compromise\nprovides better trace debugging for those who use pre-built kernels,\nwithout adding a lot of extra noise to the standard debug settings.\n\nTest-plan:\nEnable NFS trace debugging with flags 1, 2, or 4.  You should be able to\nsee different types of trace messages with each flag setting.\n\nSigned-off-by: Chuck Lever \u003ccel@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "91d5b47023b608227d605d1e916b29dd0215bff7",
      "tree": "31dbb285639ea68db3abc0c4129988f02d50f11a",
      "parents": [
        "d9ef5a8c26aab09762afce43df64736720b4860e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@netapp.com",
        "time": "Mon Mar 20 13:44:14 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:14 2006 -0500"
      },
      "message": "NFS: add I/O performance counters\n\nInvoke the byte and event counter macros where we want to count bytes and\nevents.\n\nClean-up: fix a possible NULL dereference in nfs_lock, and simplify\nnfs_file_open.\n\nTest-plan:\nfsx and iozone on UP and SMP systems, with and without pre-emption.  Watch\nfor memory overwrite bugs, and performance loss (significantly more CPU\nrequired per op).\n\nSigned-off-by: Chuck Lever \u003ccel@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1b1dcc1b57a49136f118a0f16367256ff9994a69",
      "tree": "b0b36d4f41d28c9d6514fb309d33c1a084d6309b",
      "parents": [
        "794ee1baee1c26be40410233e6c20bceb2b03c08"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@hera.kernel.org",
        "time": "Mon Jan 09 15:59:24 2006 -0800"
      },
      "message": "[PATCH] mutex subsystem, semaphore to mutex: VFS, -\u003ei_sem\n\nThis patch converts the inode semaphore to a mutex. I have tested it on\nXFS and compiled as much as one can consider on an ia64. Anyway your\nluck with it might be different.\n\nModified-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n(finished the conversion)\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24174119c73983d5217da8f56a12c79a9b57e056",
      "tree": "38904c36afc94c6833cb9296c705e654ff286e43",
      "parents": [
        "40859d7ee64ed6bfad8a4e93f9bb5c1074afadff"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 03 09:55:33 2006 +0100"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 06 14:58:50 2006 -0500"
      },
      "message": "NFSv4: Ensure that we return the delegation on the target of a rename too.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5ba7cc4801ae0fe74b6e0160f008521ae71d9f5d",
      "tree": "8e7c236d2adeee1c23d99a2e7d20203cdc37a4e6",
      "parents": [
        "bb713d6d38f7be4f4e7d790cddb1b076e7da6699"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 03 15:20:17 2005 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 03 15:20:17 2005 -0500"
      },
      "message": "NFS: Fix post-op attribute revalidation...\n\n  - Missing nfs_mark_for_revalidate in nfs_proc_link()\n  - Missing nfs_mark_for_revalidate in nfs_rename()\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "34ea818846e6cccdd6e05354ab8c8a6d7e34657a",
      "tree": "d00d3d61c03454856c9047afaab3ba60a2e84f32",
      "parents": [
        "2c56617d76fa7b2a709d58abd7ed68889cc88b90"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Nov 04 15:35:02 2005 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Nov 04 15:35:02 2005 -0500"
      },
      "message": "NFSv4: Return any delegations before sillyrenaming the file\n\n I missed this one... Any form of rename will result in a delegation\n recall, so it is more efficient to return the one we hold before\n trying the rename.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cf809556149f076b7a020c10e066b2b96e79b6a1",
      "tree": "714d3e58b4fe5af9b144c735601946949b217820",
      "parents": [
        "516a6af641bb50c608329a5bd751acd0d65cc4ab"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 27 22:12:42 2005 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 27 22:12:42 2005 -0400"
      },
      "message": "NFS: Ensure that nfs_link() instantiates the dentry correctly\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0c70b50150cfb0b43ff500a8a394a52b4d5f1350",
      "tree": "292d31ce5378edb856076d2c610c323b76af0b09",
      "parents": [
        "decf491f3076190262d4c649bed877650623903a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@netapp.com",
        "time": "Tue Oct 25 11:48:36 2005 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 27 22:12:40 2005 -0400"
      },
      "message": "NFS: nfs_lookup doesn\u0027t need to revalidate the parent directory\u0027s inode\n\n nfs_lookup() used to consult a lookup cache before trying an actual wire\n lookup operation.  The lookup cache would be invalid, of course, if the\n parent directory\u0027s mtime had changed, so nfs_lookup performed an inode\n revalidation on the parent.\n\n Since nfs_lookup() doesn\u0027t use a cache anymore, the revalidation is no\n longer necessary.  There are cases where it will generate a lot of\n unnecessary GETATTR traffic.\n\n See http://bugzilla.linux-nfs.org/show_bug.cgi?id\u003d9\n\n Test-plan:\n Use lndir and \"rm -rf\" and watch for excess GETATTR traffic or application\n level errors.\n\n Signed-off-by: Chuck Lever \u003ccel@netapp.com\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0e574af1be5f569a5d7f2800333b0bfb358a5e34",
      "tree": "bb5b62dece21b8906222dfee022020ed6f81e34c",
      "parents": [
        "4c2cb58c552a34744979a99ccf01762d5eb7e288"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 27 22:12:38 2005 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Oct 27 22:12:38 2005 -0400"
      },
      "message": "NFS: Cleanup initialisation of struct nfs_fattr\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6fe43f9e3701f7a9f2be151a5e6cfe94b87e92f9",
      "tree": "edf67143a032c7b7867ee999f1deb01437a6bc99",
      "parents": [
        "4c780a4688b421baa896b59778c05d7e068e479f"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:22 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:22 2005 -0700"
      },
      "message": "NFS: Fix rename of directory onto empty directory\n\n If someone tries to rename a directory onto an empty directory, we\n currently fail and return EBUSY.\n This patch ensures that we try the rename if both source and target\n are directories, and that we fail with a correct error of EISDIR if\n the source is not a directory.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cae7a073a4c5484cc5713eab606bf54b46724ab3",
      "tree": "e5cdcf0376da5b04bca9bbbf8f226abe13f33275",
      "parents": [
        "cdce5d6b94b6182f6d8a5b7b52923933e98cbc92"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:19 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:19 2005 -0700"
      },
      "message": "NFSv4: Return delegation upon rename or removal of file.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6f926b5ba75c568296ec227e7d782db4ddbdca5c",
      "tree": "6c9aad3139ae4e54210ab5ff37446c357c54b521",
      "parents": [
        "02a913a73b52071e93f4b76db3e86138d19efffd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:18 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:18 2005 -0700"
      },
      "message": "[NFS]: Check that the server returns a valid regular file to our OPEN request\n\n Since it appears that some servers don\u0027t...\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "02a913a73b52071e93f4b76db3e86138d19efffd",
      "tree": "1dc1abbd2d8f57a6fd593dd252d6d7ecc7c811c5",
      "parents": [
        "834f2a4a1554dc5b2598038b3fe8703defcbe467"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:17 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 18 14:20:17 2005 -0700"
      },
      "message": "NFSv4: Eliminate nfsv4 open race...\n\n Make NFSv4 return the fully initialized file pointer with the\n stateid that it created in the lookup w/intent.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9aa48b7e270d13c8781414dce081a42cae20a80d",
      "tree": "788749de63303b280155cd84c5a47434f029d6e0",
      "parents": [
        "449231d6ddf50ca46b7fb2f76ecf790135222913"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Aug 25 16:25:35 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 23 12:38:01 2005 -0400"
      },
      "message": "NFS: Don\u0027t expose internal READDIR errors to userspace\n\n Fixes a condition whereby the kernel is returning the non-POSIX error\n EBADCOOKIE to userspace.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "20509f1bc553ed7fafa88fa8d01c6212d1876d9f",
      "tree": "da10ad62009995269dc0733a254a0bc1f6293aa2",
      "parents": [
        "12f44f46bc9c6dc79255e661b085797af395d8da"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Aug 25 16:25:34 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 23 12:37:58 2005 -0400"
      },
      "message": "NFS: Drop inode after rename\n\n When doing a rename on top of an existing file that is not in use,\n the inode of the overwritten file will remain in the icache.\n\n The fix is to decrement i_nlink of the overwritten inode, like we\n do for unlink, rmdir etc already.\n\n Problem diagnosed by Olaf Kirch. This patch is a slight variation\n on his fix.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "01c314a0c0f6367960a7cb1ffb5796560ccaa1c1",
      "tree": "ae3c0190efa548d47e80e7225a8e8da0b2990317",
      "parents": [
        "cd3716ab40c6049479d29a74b29107fd7e0e1153"
      ],
      "author": {
        "name": "Steve Dickson",
        "email": "SteveD@redhat.com",
        "time": "Fri Aug 19 17:57:48 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Aug 19 18:44:56 2005 -0700"
      },
      "message": "[PATCH] NFSv4: unbalanced BKL in nfs_atomic_lookup()\n\nAdded missing unlock_kernel() to NFSv4 atomic lookup.\n\nSigned-off-by: Steve Dickson \u003csteved@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dc59250c6ebed099a9bc0a11298e2281dd896657",
      "tree": "80c294437c0868d90abfa617d873370e6dbe6565",
      "parents": [
        "412d582ec1dd59aab2353f8cb7e74f2c79cd20b9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@citi.umich.edu",
        "time": "Thu Aug 18 11:24:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 18 12:53:57 2005 -0700"
      },
      "message": "[PATCH] NFS: Introduce the use of inode-\u003ei_lock to protect fields in nfsi\n\nDown the road we want to eliminate the use of the global kernel lock entirely\nfrom the NFS client.  To do this, we need to protect the fields in the\nnfs_inode structure adequately.  Start by serializing updates to the\n\"cache_validity\" field.\n\nNote this change addresses an SMP hang found by njw@osdl.org, where processes\ndeadlock because nfs_end_data_update and nfs_revalidate_mapping update the\n\"cache_validity\" field without proper serialization.\n\nTest plan:\n Millions of fsx ops on SMP clients.  Run Nick Wilson\u0027s breaknfs program on\n large SMP clients.\n\nSigned-off-by: Chuck Lever \u003ccel@netapp.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "412d582ec1dd59aab2353f8cb7e74f2c79cd20b9",
      "tree": "9088c5e29cbd4b33e907a7b5f9a950dd0dce36c1",
      "parents": [
        "5529680981807b44abf3be30fb6d612ff04f68ff"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@citi.umich.edu",
        "time": "Thu Aug 18 11:24:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 18 12:53:56 2005 -0700"
      },
      "message": "[PATCH] NFS: use atomic bitops to manipulate flags in nfsi-\u003eflags\n\nIntroduce atomic bitops to manipulate the bits in the nfs_inode structure\u0027s\n\"flags\" field.\n\nUsing bitops means we can use a generic wait_on_bit call instead of an ad hoc\nlocking scheme in fs/nfs/inode.c, so we can remove the \"nfs_i_wait\" field from\nnfs_inode at the same time.\n\nThe other new flags field will continue to use bitmask and logic AND and OR.\nThis permits several flags to be set at the same time efficiently.  The\nfollowing patch adds a spin lock to protect these flags, and this spin lock\nwill later cover other fields in the nfs_inode structure, amortizing the cost\nof using this type of serialization.\n\nTest plan:\n Millions of fsx ops on SMP clients.\n\nSigned-off-by: Chuck Lever \u003ccel@netapp.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5529680981807b44abf3be30fb6d612ff04f68ff",
      "tree": "57da4e9135c0a85c1f8c6bc797250c0209420b51",
      "parents": [
        "3c7bf1eaee1255315fc7c2c4c300295e556ef768"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@citi.umich.edu",
        "time": "Thu Aug 18 11:24:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 18 12:53:56 2005 -0700"
      },
      "message": "[PATCH] NFS: split nfsi-\u003eflags into two fields\n\nCertain bits in nfsi-\u003eflags can be manipulated with atomic bitops, and some\nare better manipulated via logical bitmask operations.\n\nThis patch splits the flags field into two.  The next patch introduces atomic\nbitops for one of the fields.\n\nTest plan:\n Millions of fsx ops on SMP clients.\n\nSigned-off-by: Chuck Lever \u003ccel@netapp.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f0dd2136da6d2070e12bfa6d199b136318e666c7",
      "tree": "a261d4b4d9e29dbce104cf9515a0a209cff387cf",
      "parents": [
        "00a926422765064cb28e218d4837411c88bf6a3e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 17:16:29 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:34 2005 -0400"
      },
      "message": "[PATCH] NFS: Clean up readdir changes.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "00a926422765064cb28e218d4837411c88bf6a3e",
      "tree": "1e9ad635821c7b037014307d1a2657dc56b17acf",
      "parents": [
        "ae3884621bf5b4caff7785b9a417f262202965b2"
      ],
      "author": {
        "name": "Olivier Galibert",
        "email": "galibert@pobox.com",
        "time": "Wed Jun 22 17:16:29 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:33 2005 -0400"
      },
      "message": "[PATCH] NFS: Hide NFS server-generated readdir cookies from userland\n\n NFSv3 currently returns the unsigned 64-bit cookie directly to\n userspace. The following patch causes the kernel to generate\n loff_t offsets for the benefit of userland.\n The current server-generated READDIR cookie is cached in the\n nfs_open_context instead of in filp-\u003ef_pos, so we still end up work\n correctly under directory insertions/deletion.\n\n Signed-off-by: Olivier Galibert \u003cgalibert@pobox.com\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b7fa0554cf1ba6d6895cd0a5b02989a26e0bc704",
      "tree": "83eb405f3ff78c17695999df38c99484e3aee01f",
      "parents": [
        "a257cdd0e2179630d3201c32ba14d7fcb3c3a055"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@suse.de",
        "time": "Wed Jun 22 17:16:27 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:24 2005 -0400"
      },
      "message": "[PATCH] NFS: Add support for NFSv3 ACLs\n\n This adds acl support fo nfs clients via the NFSACL protocol extension, by\n implementing the getxattr, listxattr, setxattr, and removexattr iops for the\n system.posix_acl_access and system.posix_acl_default attributes.  This patch\n implements a dumb version that uses no caching (and thus adds some overhead).\n (Another patch in this patchset adds caching as well.)\n\n Signed-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\n Acked-by: Olaf Kirch \u003cokir@suse.de\u003e\n Signed-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6b3b5496d7b261d6c9202008dc528e52dbd11e57",
      "tree": "bcd625880fc7799ddd85b132e3cdfd501f5a82b9",
      "parents": [
        "ada70d9425bcc5e376fef8591e4e76e204c0834c"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Jun 22 17:16:22 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:10 2005 -0400"
      },
      "message": "[PATCH] NFSv4: Add {get,set,list}xattr methods for nfs4\n\n Add {get,set,list}xattr methods for nfs4.  The new methods are no-ops, to be\n used by subsequent ACL patch.\n\n Signed-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a656db998785324a818005bcf71bae6dcbbb3cf5",
      "tree": "b60f60bda06fed346c9f839ca2bd976db4e819c5",
      "parents": [
        "4ce79717ce32a9f88c1ddce4b9658556cb59d37a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 17:16:21 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:07 2005 -0400"
      },
      "message": "[PATCH] NFS: Remove unused NFS inode field readdir_timestamp.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4ce79717ce32a9f88c1ddce4b9658556cb59d37a",
      "tree": "7f0c5e4bdbc2ee15b8e902b951d1be200b35411f",
      "parents": [
        "9085bbcb76421a90bea28f4d3d03fa9977319c49"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 17:16:21 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:06 2005 -0400"
      },
      "message": "[PATCH] NFS: Header file cleanup...\n\n - Move NFSv4 state definitions into a private header file.\n - Clean up gunk in nfs_fs.h\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1d6757fbff5bc86e94e59ab0d7bdd7e71351d839",
      "tree": "65e75b32e0810961615101cb1f137a060c707c6b",
      "parents": [
        "eba4f669d6ec9be4173bb2619e9b8500b3c36542"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jun 07 18:37:01 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 07 15:53:47 2005 -0700"
      },
      "message": "[PATCH] NFS: Fix lookup intent handling\n\nWe should never apply a lookup intent to anything other than the last\npath component in an open(), create() or access() call.\n\nIntroduce the helper nfs_lookup_check_intent() which always returns\nzero if LOOKUP_CONTINUE or LOOKUP_PARENT are set, and returns the\nintent flags if we\u0027re on the last component of the lookup.\nBy doing so, we fix a bug in open(O_EXCL), where we may end up\noptimizing away a real lookup of the parent directory.\n\nProblem noticed by Linda Dunaphant \u003clinda.dunaphant@ccur.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
