)]}'
{
  "log": [
    {
      "commit": "0110ee152b69f8cbde19d8bc1dd59e197e419d76",
      "tree": "f7a70abaaa97f03e358b2fb07103f5af4e98d5a5",
      "parents": [
        "9dfdf404c99347e2e224e25f8626e7b6399a05cd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Dec 07 09:00:24 2009 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Dec 07 09:00:24 2009 -0500"
      },
      "message": "NFS: Fix up the declaration of nfs4_restart_rpc when NFSv4 not configured\n\nAlso rename it: it is used in generic code, and so should not have a \u0027nfs4\u0027\nprefix.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d61e612a728fb9bf848c4383f8f6645e822d5b57",
      "tree": "b4024efc797fa3b992b042f484574c1d43893a61",
      "parents": [
        "f26468fb9384e73fb357d2e84d3e9c88c7d1129d"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 05 19:32:19 2009 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 05 19:32:19 2009 -0500"
      },
      "message": "NFSv41: Clean up slot table management\n\nWe no longer need to maintain a distinction between nfs41_sequence_done and\nnfs41_sequence_free_slot.\n\nThis fixes a number of slot table leakages in the NFSv4.1 code.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e608e79f1bf4b967afcf57777e63b5f0939b00e8",
      "tree": "d649b5714435b7d2d4edd5779fa22122d61ee0c5",
      "parents": [
        "1d9ddde94aed01c4618cf6f70883cc511c3b2b62"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Fri Dec 04 15:55:29 2009 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Dec 04 15:55:29 2009 -0500"
      },
      "message": "nfs41: call free slot from nfs4_restart_rpc\n\nnfs41_sequence_free_slot can be called multiple times on SEQUENCE operation\nerrors.\nNo reason to inline nfs4_restart_rpc\n\nReported-by: Trond Myklebust \u003ctrond.myklebust@netapp.com\u003e\n\nnfs_writeback_done and nfs_readpage_retry call nfs4_restart_rpc outside the\nerror handler, and the slot is not freed prior to restarting in the rpc_prepare\nstate during session reset.\n\nFix this by moving the call to nfs41_sequence_free_slot from the error\npath of nfs41_sequence_done into nfs4_restart_rpc, and by removing the test\nfor NFS4CLNT_SESSION_SETUP.\nAlways free slot and goto the rpc prepare state on async errors.\n\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "eedc020e718b8ce45381383ec66030f09eb02a1e",
      "tree": "f29fe9309b67be4d5387c2ced72c063fb4df53c0",
      "parents": [
        "aae2006e9b0c294114915c13022fa348e1a88023"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Wed Apr 01 09:22:41 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 12:25:07 2009 -0700"
      },
      "message": "nfs41: use rpc prepare call state for session reset\n\n[nfs41: change nfs4_restart_rpc argument]\n[nfs41: check for session not minorversion]\n[nfs41: trigger the state manager for session reset]\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[always define nfs4_restart_rpc]\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "472cfbd9b97be210a9b61ac1c6a774cd456ea9d2",
      "tree": "0bb59e6f5823087ad0152f3d363ada72a528f930",
      "parents": [
        "a893693c151433a1375060ecb13419080426bc08"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Wed Apr 01 09:22:24 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 10:46:47 2009 -0700"
      },
      "message": "nfs41: unlink sequence setup/done support\n\nImplement the rpc_call_prepare methods for\nasynchronuos nfs rpcs, call nfs41_setup_sequence from\nrespective rpc_call_validate_args methods.\n\nCall nfs4_sequence_done from respective rpc_call_done methods.\n\nNote that we need to pass a pointer to the nfs_server in calls data\nfor passing on to nfs4_sequence_done.\n\nSigned-off-by: Andy Adamson\u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[pnfs: client data server write validate and release]\nSigned-off-by: Andy Adamson\u003candros@umich.edu\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\n[nfs41: separate free slot from sequence done]\n[nfs41: sequence res use slotid]\n[nfs41: remove SEQ4_STATUS_USE_TK_STATUS]\n[nfs41: nfs4_sequence_free_slot use nfs_client for data server]\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5f7dbd5c752d88310d8fe1feedefd5c6496eff48",
      "tree": "870e270d87cf112494500b655f08980539ffa291",
      "parents": [
        "f3752975caa716709c5ea0b0820b86111d921df4"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@netapp.com",
        "time": "Wed Apr 01 09:22:05 2009 -0400"
      },
      "committer": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Wed Jun 17 10:46:30 2009 -0700"
      },
      "message": "nfs41: set up seq_res.sr_slotid\n\nInitialize nfs4_sequence_res sr_slotid to NFS4_MAX_SLOT_TABLE.\n\n[was nfs41: sequence res use slotid]\nSigned-off-by: Andy Adamson \u003candros@netapp.com\u003e\n[pulled definition of struct nfs4_sequence_res.sr_slotid to here]\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1daef0a868370c5a96d031b9202e3354bea060e6",
      "tree": "a072a8486c67f3d26b576e5bace8aa45def2d328",
      "parents": [
        "d5e66348bbe39dc78509e7561f7252aa443df8c0"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 27 18:19:01 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Oct 06 20:08:26 2008 -0400"
      },
      "message": "NFS: Clean up nfs_sb_active/nfs_sb_deactive\n\nInstead of causing umount requests to block on server-\u003eactive_wq while the\nasynchronous sillyrename deletes are executing, we can use the sb-\u003es_active\ncounter to obtain a reference to the super_block, and then release that\nreference in nfs_async_unlink_release().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "744d18dbfae07482ea461701b0aaec3a75ec9224",
      "tree": "53246e5fd448ebf21d8ce9c9fa973995166d985e",
      "parents": [
        "31c9446993f412ecb7875e30bba4bc7f216ae016"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 27 18:03:19 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 27 18:20:51 2008 -0400"
      },
      "message": "NFS: Ensure we call nfs_sb_deactive() after releasing the directory inode\n\nIn order to avoid the \"Busy inodes after unmount\" error message, we need to\nensure that nfs_async_unlink_release() releases the super block after the\ncall to nfs_free_unlinkdata().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "98a8e3239427051f5d44f2025b398bdcc3918f37",
      "tree": "aa3e6ba69dbf8575c2c6e10c013aa23d7d638af0",
      "parents": [
        "5c691044ecbca04dd558fca4c754121689fe1b34"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 12 12:25:28 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 14 13:42:49 2008 -0400"
      },
      "message": "SUNRPC: Add a helper rpcauth_lookup_generic_cred()\n\nThe NFSv4 protocol allows clients to negotiate security protocols on the\nfly in the case where an administrator on the server changes the export\nsettings and/or in the case where we may have a filesystem migration event.\n\nInstead of having the NFS client code cache credentials that are tied to a\nparticular AUTH method it is therefore preferable to have a generic credential\nthat can be converted into whatever AUTH is in use by the RPC client when\nthe read/write/sillyrename/... is put on the wire.\n\nWe do this by means of the new \"generic\" credential, which basically just\ncaches the minimal information that is needed to look up an RPCSEC_GSS,\nAUTH_SYS, or AUTH_NULL credential.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5138fde01161cd7976fdc51f6a17da73adaa6baf",
      "tree": "57dea902155fc4c31667ffbc412782edf2593b01",
      "parents": [
        "bdc7f021f3a1fade77adf3c2d7f65690566fddfe"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:40:01 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:32 2008 -0500"
      },
      "message": "NFS/SUNRPC: Convert all users of rpc_call_setup()\n\nReplace use of rpc_call_setup() with rpc_init_task(), and in cases where we\nneed to initialise task-\u003etk_action, with rpc_call_start().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c970aa85e71bd581726c42df843f6f129db275ac",
      "tree": "e7fc90ee4064196d357045fd173764e0b8fc8ca8",
      "parents": [
        "84115e1cd4a3614c4e566d4cce31381dce3dbef9"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:59 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:30 2008 -0500"
      },
      "message": "SUNRPC: Clean up rpc_run_task\n\nMake it use the new task initialiser structure instead of acting as a\nwrapper.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ef818a28fac9bd214e676986d8301db0582b92a9",
      "tree": "b1825d1ecdfa6b35951a61f6bc54363236c12cd0",
      "parents": [
        "2f74c0a05612b9c2014b5b67833dba9b9f523948"
      ],
      "author": {
        "name": "Steve Dickson",
        "email": "SteveD@redhat.com",
        "time": "Thu Nov 08 04:05:04 2007 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:24 2008 -0500"
      },
      "message": "NFS: Stop sillyname renames and unmounts from racing\n\nAdded an active/deactive mechanism to the nfs_server structure\nallowing async operations to hold off umount until the\noperations are done.\n\nSigned-off-by: Steve Dickson \u003csteved@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "609005c319bc6062b95ed82e132884ed7e22cdb9",
      "tree": "ed798efb3dde26d9072fb44af743db638f76157e",
      "parents": [
        "fccca7fc6aab4e6b519e2d606ef34632e4f50e33"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jan 28 19:42:59 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:22 2008 -0500"
      },
      "message": "NFS: Sillyrename: in the case of a race, check aliases are really positive\n\nIn nfs_do_call_unlink() we check that we haven\u0027t raced, and that lookup()\nhasn\u0027t created an aliased dentry to our sillydeleted dentry. If somebody\nhas deleted the file on the server and the lookup() resulted in a negative\ndentry, then ignore...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fccca7fc6aab4e6b519e2d606ef34632e4f50e33",
      "tree": "4d12d88039d229263a610647df6c751585f714dc",
      "parents": [
        "5b10ca19ea4859d3884d10a3eb8495de92089792"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jan 26 17:37:47 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jan 30 02:05:21 2008 -0500"
      },
      "message": "NFS: Fix a sillyrename race...\n\nEnsure that readdir revalidates its data cache after blocking on\nsillyrename.\n\nAlso fix a typo in nfs_do_call_unlink(): swap the ^\u003d for an |\u003d. The result\nis the same, since we\u0027ve already checked that the flag is unset, but it\nmakes the code more readable.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "55b70a0300b873c0ec7ea6e33752af56f41250ce",
      "tree": "0329a0fbb4bfd0aac97310eeab9be8394b4b8ab0",
      "parents": [
        "bad2a524113075d1e0665f1e111283ab25135ade"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Oct 21 12:02:22 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Oct 21 13:37:07 2007 -0400"
      },
      "message": "NFS: Fix a typo in nfs_call_unlink()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b35e7041186a9ace341665d404274d58a32b6e2c",
      "tree": "68e56db6292bc0853252305345e845620860d995",
      "parents": [
        "5f737085beea3a5c5b6f44a16e6d3e2fd03095e0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 19:59:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 19:59:18 2007 -0700"
      },
      "message": "Avoid compile error in fs/nfs/unlink.c\n\nErez Zadok reports that certain configurations fail to build due to\nschedule() TASK_[UN]INTERRUPTIBLE not being declared.  Add proper\ninclude files to fix.\n\nCc: Erez Zadok \u003cezk@cs.sunysb.edu\u003e\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "565277f63c616e11c37309a1e98c052d18ebbb55",
      "tree": "60fdddc5a1c97df696392e47ead71d33d39e487f",
      "parents": [
        "61e930a904966cc37e0a3404276f0b73037e57ca"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Oct 15 18:17:53 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 19 17:19:16 2007 -0400"
      },
      "message": "NFS: Fix a race in sillyrename\n\nlookup() and sillyrename() can race one another because the sillyrename()\ncompletion cannot take the parent directory\u0027s inode-\u003ei_mutex since the\nlatter may be held by whoever is calling dput().\n\nWe therefore have little option but to add extra locking to ensure that\nnfs_lookup() and nfs_atomic_open() do not race with the sillyrename\ncompletion.\nIf somebody has looked up the sillyrenamed file in the meantime, we just\ntransfer the sillydelete information to the new dentry.\n\nPlease refer to the bug-report at\n\thttp://bugzilla.linux-nfs.org/show_bug.cgi?id\u003d150\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "60ccd4ec4170c9487e3792322626acd160197bce",
      "tree": "b35353518bd7945a40e39edfa543ce80aaa3f8b4",
      "parents": [
        "80eb209def76d375677840800eb838abce1e6639"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Sep 29 17:48:19 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Oct 09 17:19:53 2007 -0400"
      },
      "message": "NFS: Remove nfs_begin_data_update/nfs_end_data_update\n\nThe lower level routines in fs/nfs/proc.c, fs/nfs/nfs3proc.c and\nfs/nfs/nfs4proc.c should already be dealing with the revalidation issues.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "e4eff1a622edd6ab7b73acd5d8763aa2fa3fee49",
      "tree": "257d6675733d4af122a77054281e1d7d5062d904",
      "parents": [
        "4fdc17b2a7f4d9db5b08e0f963d0027f714e4104"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Jul 14 15:39:58 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jul 19 15:21:39 2007 -0400"
      },
      "message": "SUNRPC: Clean up the sillyrename code\n\nFix a couple of bugs:\n - Don\u0027t rely on the parent dentry still being valid when the call completes.\n   Fixes a race with shrink_dcache_for_umount_subtree()\n\n - Don\u0027t remove the file if the filehandle has been labelled as stale.\n\nFix a couple of inefficiencies\n - Remove the global list of sillyrenamed files. Instead we can cache the\n   sillyrename information in the dentry-\u003ed_fsdata\n - Move common code from unlink_setup/unlink_done into fs/nfs/unlink.c\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bd6475454c774bd9dbe6078d94bbf72b1d3b65f4",
      "tree": "641c38589e2aa02a22db229be7d77c9c342a81cb",
      "parents": [
        "a162a6b804b48c605d1fd35e1861a5d32d00ad3f"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Mon Mar 20 13:44:10 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:10 2006 -0500"
      },
      "message": "NFS: kzalloc conversion in fs/nfs\n\nthis converts fs/nfs to kzalloc() usage.\ncompile tested with make allyesconfig\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4ce70ada1ff1d0b80916ec9ec5764ce44a50a54f",
      "tree": "9bc9ffc691679a4423a6b8724a27607c9ad7ea2c",
      "parents": [
        "963d8fe53339128ee46a7701f2e36305f0ccff8c"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 03 09:55:05 2006 +0100"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 06 14:58:40 2006 -0500"
      },
      "message": "SUNRPC: Further cleanups\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "963d8fe53339128ee46a7701f2e36305f0ccff8c",
      "tree": "426736c70a8e05cb1d945d5c7f44ea6475edd113",
      "parents": [
        "abbcf28f23d53e8ec56a91f3528743913fa2694a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jan 03 09:55:04 2006 +0100"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 06 14:58:39 2006 -0500"
      },
      "message": "RPC: Clean up RPC task structure\n\n Shrink the RPC task structure. Instead of storing separate pointers\n for task-\u003etk_exit and task-\u003etk_release, put them in a structure.\n\n Also pass the user data pointer as a parameter instead of passing it via\n task-\u003etk_calldata. This enables us to nest callbacks.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f99d49adf527fa6f7a9c42257fa76bca6b8df1e3",
      "tree": "41dddbc336016f9dc9557cdb15300de5e599dac1",
      "parents": [
        "6044ec8882c726e325017bd948aa0cd94ad33abc"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Mon Nov 07 01:01:34 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 07:54:06 2005 -0800"
      },
      "message": "[PATCH] kfree cleanup: fs\n\nThis is the fs/ part of the big kfree cleanup patch.\n\nRemove pointless checks for NULL prior to calling kfree() in fs/.\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\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"
    }
  ]
}
