)]}'
{
  "log": [
    {
      "commit": "e6765b83977f07983c7a10e6bbb19d6c7bbfc3a4",
      "tree": "87ea535ec91aaa56263ffbb5a34c8e9541e77136",
      "parents": [
        "94da7663db26530a8377f7219f8be8bd4d4822c2"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 11 17:56:14 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:55 2009 -0500"
      },
      "message": "NSM: Remove include/linux/lockd/sm_inter.h\n\nClean up: The include/linux/lockd/sm_inter.h header is nearly empty\nnow.  Remove it.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "92fd91b998a5216a6d6606704e71d541a180216c",
      "tree": "e3c181450d40e3d448a48c560aac858ea0e7aee5",
      "parents": [
        "8c7378fd2a5f22016542931b887a2ae98d146eaf"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Dec 05 19:04:01 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:54 2009 -0500"
      },
      "message": "NLM: Remove \"create\" argument from nsm_find()\n\nClean up: nsm_find() now has only one caller, and that caller\nunconditionally sets the @create argument. Thus the @create\nargument is no longer needed.\n\nSince nsm_find() now has a more specific purpose, pick a more\nappropriate name for it.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "8c7378fd2a5f22016542931b887a2ae98d146eaf",
      "tree": "e274fe98455ee385b8ba88917e7465c9332b8184",
      "parents": [
        "3420a8c4359a189f7d854ed7075d151257415447"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Dec 05 19:03:54 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:54 2009 -0500"
      },
      "message": "NLM: Call nsm_reboot_lookup() instead of nsm_find()\n\nInvoke the newly introduced nsm_reboot_lookup() function in\nnlm_host_rebooted() instead of nsm_find().\n\nThis introduces just one behavioral change: debugging messages\nproduced during reboot notification will now appear when the\nNLMDBG_MONITOR flag is set, but not when the NLMDBG_HOSTCACHE flag\nis set.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "576df4634e37e46b441fefb91915184edb13bb94",
      "tree": "85dc6dc6dcf7eec104b7c78885a9e38123bb220f",
      "parents": [
        "7fefc9cb9d5f129c238d93166f705c96ca2e7e51"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Dec 05 19:03:39 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:54 2009 -0500"
      },
      "message": "NLM: Decode \"priv\" argument of NLMPROC_SM_NOTIFY as an opaque\n\nThe NLM XDR decoders for the NLMPROC_SM_NOTIFY procedure should treat\ntheir \"priv\" argument truly as an opaque, as defined by the protocol,\nand let the upper layers figure out what is in it.\n\nThis will make it easier to modify the contents and interpretation of\nthe \"priv\" argument, and keep knowledge about what\u0027s in \"priv\" local\nto fs/lockd/mon.c.\n\nFor now, the NLM and NSM implementations should behave exactly as they\ndid before.\n\nThe formation of the address of the rebooted host in\nnlm_host_rebooted() may look a little strange, but it is the inverse\nof how nsm_init_private() forms the private cookie.  Plus, it\u0027s\ngoing away soon anyway.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "7fefc9cb9d5f129c238d93166f705c96ca2e7e51",
      "tree": "3309560f4539ea8af3943524475cd9405f3c9c49",
      "parents": [
        "cab2d3c99165abbba2943f1b269003b17fd3b1cb"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Dec 05 19:03:31 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:54 2009 -0500"
      },
      "message": "NLM: Change nlm_host_rebooted() to take a single nlm_reboot argument\n\nPass the nlm_reboot data structure directly from the NLMPROC_SM_NOTIFY\nXDR decoders to nlm_host_rebooted().  This eliminates some packing and\nunpacking of the NLMPROC_SM_NOTIFY results, and prepares for passing\nthese results, including the \"priv\" cookie, directly to a lookup\nroutine in fs/lockd/mon.c.\n\nThis patch changes code organization but should not cause any\nbehavioral change.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "67c6d107a689243979a2b5f15244b5261634a924",
      "tree": "36e2093df96a449c284640c9cc329fc251e98bd0",
      "parents": [
        "03eb1dcbb799304b58730f4dba65812f49fb305e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Dec 05 19:02:45 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:53 2009 -0500"
      },
      "message": "NSM: Move nsm_find() to fs/lockd/mon.c\n\nThe nsm_find() function sets up fresh nsm_handle entries.  This is\nwhere we will store the \"priv\" cookie used to lookup nsm_handles during\nreboot recovery.  The cookie will be constructed when nsm_find()\ncreates a new nsm_handle.\n\nAs much as possible, I would like to keep everything that handles a\n\"priv\" cookie in fs/lockd/mon.c so that all the smarts are in one\nsource file.  That organization should make it pretty simple to see how\nall this works.\n\nTo me, it makes more sense than the current arrangement to keep\nnsm_find() with nsm_monitor() and nsm_unmonitor().\n\nSo, start reorganizing by moving nsm_find() into fs/lockd/mon.c.  The\nnsm_release() function comes along too, since it shares the nsm_lock\nglobal variable.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c8c23c423dec49cb439697d3dc714e1500ff1610",
      "tree": "161035f51e31cce6d9f8dc104bad62a329496a77",
      "parents": [
        "1e49323c4ab044d05bbc68cf13cadcbd4372468c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:31 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:52 2009 -0500"
      },
      "message": "NSM: Release nsmhandle in nlm_destroy_host\n\nThe nsm_handle\u0027s reference count is bumped in nlm_lookup_host().  It\nshould be decremented in nlm_destroy_host() to make it easier to see\nthe balance of these two operations.\n\nMove the nsm_release() call to fs/lockd/host.c.\n\nThe h_nsmhandle pointer is set in nlm_lookup_host(), and never cleared.\nThe nlm_destroy_host() function is never called for the same nlm_host\ntwice, so h_nsmhandle won\u0027t ever be NULL when nsm_unmonitor() is\ncalled.\n\nAll references to the nlm_host are gone before it is freed.  We can\nskip making h_nsmhandle NULL just before the nlm_host is deallocated.\n\nIt\u0027s also likely we can remove the h_nsmhandle NULL check in\nnlmsvc_is_client() as well, but we can do that later when rearchitect-\ning the nlm_host cache.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "afb03699dc0a920aed3322ad0e6895533941fb1e",
      "tree": "8be804b0e4985a5dba70fccc94ce0939292d3f8d",
      "parents": [
        "bc995801a09d1fead0bec1356bfd836911c8eed7"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:16 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Add helper to handle IPv4 addresses\n\nClean up: introduce a helper function to generate IPv4 addresses using\nthe same style as the IPv6 helper function we just added.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "bc995801a09d1fead0bec1356bfd836911c8eed7",
      "tree": "b7a2faad59bfa92db4057c23fcf7d31b70d20611",
      "parents": [
        "6999fb4016b2604c2f8a65586bba4a62a4b24ce7"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:08 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Support IPv6 scope IDs in nlm_display_address()\n\nScope ID support is needed since the kernel\u0027s NSM implementation is\nabout to use these displayed addresses as a mon_name in some cases.\n\nWhen nsm_use_hostnames is zero, without scope ID support NSM will fail\nto handle peers that contact us via a link-local address.  Link-local\naddresses do not work without an interface ID, which is stored in the\nsockaddr\u0027s sin6_scope_id field.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "6999fb4016b2604c2f8a65586bba4a62a4b24ce7",
      "tree": "14639d66b17613d364898c4b59b01903f7db1bb6",
      "parents": [
        "1df40b609ad5a622904eb652109c287fe9c93ec5"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:01 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Remove AF_UNSPEC arm in nlm_display_address()\n\nAF_UNSPEC support is no longer needed in nlm_display_address() now\nthat a presentation address is no longer generated for the h_srcaddr\nfield.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1df40b609ad5a622904eb652109c287fe9c93ec5",
      "tree": "53c2ea9b443d7a94c564116c4af706500dbbf889",
      "parents": [
        "7538ce1eb656a1477bedd5b1c202226e7abf5e7b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:19:53 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Remove address eye-catcher buffers from nlm_host\n\nThe h_name field in struct nlm_host is a just copy of\nh_nsmhandle-\u003esm_name.  Likewise, the contents of the h_addrbuf field\nshould be identical to the sm_addrbuf field.\n\nThe h_srcaddrbuf field is used only in one place for debugging.  We can\nlive without this until we get %pI formatting for printk().\n\nCurrently these buffers are 48 bytes, but we need to support scope IDs\nin IPv6 presentation addresses, which means making the buffers even\nlarger.  Instead, let\u0027s find ways to eliminate them to save space.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "08cc36cbd1ee7d86422713bb21551eed1326b894",
      "tree": "52cc683387f903b34a7f6f798dcdbae385b58db8",
      "parents": [
        "3c92ec8ae91ecf59d88c798301833d7cf83f2179",
        "46f72f57d279688c4524df78edb5738db730eeef"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 30 16:51:43 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 30 16:51:43 2008 -0500"
      },
      "message": "Merge branch \u0027devel\u0027 into next\n"
    },
    {
      "commit": "0cb2659b818eca99235e17c04291cfa9985c14f7",
      "tree": "48fc176e1e1e8a6f771e664799c26df1d72e9f69",
      "parents": [
        "50a737f86dbf99daf3a8dcbdf778a3be36bb2a39"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Dec 23 15:21:38 2008 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Dec 23 15:21:38 2008 -0500"
      },
      "message": "NLM: allow lockd requests from an unprivileged port\n\nIf the admin has specified the \"noresvport\" option for an NFS mount\npoint, the kernel\u0027s NFS client uses an unprivileged source port for\nthe main NFS transport.  The kernel\u0027s lockd client should use an\nunprivileged port in this case as well.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "eb14f019597cd86c21a6c601d7e900f40030c2e7",
      "tree": "36fb2f36a1747f98988f87215db1eef3a71d45eb",
      "parents": [
        "9a4a84294b0d60b8c287131478f743ba2bc68949",
        "a3dd15444baa9c7522c8457ab564c41219dfb44c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 20:03:50 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 15 20:03:50 2008 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/e1000e/ich8lan.c\n"
    },
    {
      "commit": "a8d82d9b950213b66b22c9e7c63a058841de2394",
      "tree": "58334c88a7a32c88648d84a0858a0ed08ba28ab5",
      "parents": [
        "e4625eb826de4f6774ee602c442ba23b686bdcc7"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Nov 24 12:51:55 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Nov 24 13:29:07 2008 -0600"
      },
      "message": "NLM: client-side nlm_lookup_host() should avoid matching on srcaddr\n\nSince commit c98451bd, the loop in nlm_lookup_host() unconditionally\ncompares the host\u0027s h_srcaddr field to the incoming source address.\nFor client-side nlm_host entries, both are always AF_UNSPEC, so this\ncheck is unnecessary.\n\nSince commit 781b61a6, which added support for AF_INET6 addresses to\nnlm_cmp_addr(), nlm_cmp_addr() now returns FALSE for AF_UNSPEC\naddresses, which causes nlm_lookup_host() to create a fresh nlm_host\nentry every time it is called on the client.\n\nThese extra entries will eventually expire once the server is\nunmounted, so the impact of this regression, introduced with lockd\nIPv6 support in 2.6.28, should be minor.\n\nWe could fix this by adding an arm in nlm_cmp_addr() for AF_UNSPEC\naddresses, but really, nlm_lookup_host() shouldn\u0027t be matching on the\nsrcaddr field for client-side nlm_host lookups.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "be859405487324ed548f1ba11dc949b8230ab991",
      "tree": "3893ac2ce3b212b100d9e1e1e3e2fc1fa0c3f47f",
      "parents": [
        "63779436ab4ad0867bcea53bf853b0004d7b895d"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Oct 31 00:56:28 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 31 00:56:28 2008 -0700"
      },
      "message": "fs: replace NIPQUAD()\n\nUsing NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u\ncan be replaced with %pI4\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b095d98928fdb9e3b75be20a54b7a6cbf6ca9ad",
      "tree": "b6caa0cdbaac016447a790881ad4a6c5dfce6900",
      "parents": [
        "4b7a4274ca63dadd9c4f17fc953f3a5d19855c4c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Oct 29 12:52:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 29 12:52:50 2008 -0700"
      },
      "message": "net: replace %p6 with %pI6\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1afa67f5e70b4733d5b237df61e6d639af6283bb",
      "tree": "34912ebf8e13c40e00bc5ab13c365a5556d684ca",
      "parents": [
        "b071195deba14b37ce896c26f20349b46e5f9fd2"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Tue Oct 28 16:06:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 28 16:06:44 2008 -0700"
      },
      "message": "misc: replace NIP6_FMT with %p6 format specifier\n\nThe iscsi_ibft.c changes are almost certainly a bugfix as the\npointer \u0027ip\u0027 is a u8 *, so they never print the last 8 bytes\nof the IPv6 address, and the eight bytes they do print have\na zero byte with them in each 16-bit word.\n\nOther than that, this should cause no difference in functionality.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6bfbe8af4674458e6d88aef8f0136bd1b8855b11",
      "tree": "b8305ece04cebae733d619a77c3ff8fdee55e4a2",
      "parents": [
        "d7d204403b31beb83b1aefef7bd76f5209369555"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 03 12:50:29 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Oct 03 17:02:35 2008 -0400"
      },
      "message": "lockd: Adjust nlmsvc_lookup_host() to accomodate AF_INET6 addresses\n\nFix up nlmsvc_lookup_host() to pass AF_INET6 source addresses to\nnlm_lookup_host().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "d7d204403b31beb83b1aefef7bd76f5209369555",
      "tree": "70d63b581d4987fb12cc455f741bf21a55a7a8c3",
      "parents": [
        "88541c848746442ddff45dea05ddea6b734d88b5"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 03 12:50:21 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Oct 03 17:02:34 2008 -0400"
      },
      "message": "lockd: Adjust nlmclnt_lookup_host() signature to accomodate non-AF_INET\n\nPass a struct sockaddr * and a length to nlmclnt_lookup_host() to\naccomodate non-AF_INET family addresses.\n\nAs a side benefit, eliminate the hostname_len argument, as the hostname\nis always NUL-terminated.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "88541c848746442ddff45dea05ddea6b734d88b5",
      "tree": "dc95e178de34df8cc2b3e65e9850993c3625c3f1",
      "parents": [
        "7f1ed18bd3aa1e8008cf5cc768a141787633da18"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 03 12:50:14 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Oct 03 17:01:57 2008 -0400"
      },
      "message": "lockd: Support non-AF_INET addresses in nlm_lookup_host()\n\nUse struct sockaddr * and length in nlm_lookup_host_info to all callers\nto pass in either AF_INET or AF_INET6 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "7f1ed18bd3aa1e8008cf5cc768a141787633da18",
      "tree": "955cad7fdd4741a82a31d3f1b4d26dd343eaf68b",
      "parents": [
        "d22b1cff099737f74f3ac5950094508b4cddec1e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Oct 03 12:50:07 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Oct 03 16:58:23 2008 -0400"
      },
      "message": "NLM: Convert nlm_lookup_host() to use a single argument\n\nThe nlm_lookup_host() function already has a large number of arguments,\nand I\u0027m about to add a few more.  As a clean up, convert the function\nto use a single data structure argument.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "e018040a824ab48211a1fcb86acebc9fc84759b0",
      "tree": "301728fcbd39cfe532b435eadb410ce048a21a3b",
      "parents": [
        "bc48e4d6371137b1b06e985ea76c1254e9c06e83"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:36:23 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "lockd: Update nsm_find() to support non-AF_INET addresses\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "bc48e4d6371137b1b06e985ea76c1254e9c06e83",
      "tree": "29cfa2b2116206f472b562839f98c9d202c50d72",
      "parents": [
        "ede2fea099cf1dabe41e5b9563558bc7aee82248"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:36:16 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "lockd: Combine __nsm_find() and nsm_find().\n\nClean up: Having two separate functions doesn\u0027t add clarity, so\neliminate one of them.  Use contemporary kernel coding conventions\nwhere appropriate.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "ede2fea099cf1dabe41e5b9563558bc7aee82248",
      "tree": "b007bc10b257a0615323c8dbc446aa3b9f0f1d67",
      "parents": [
        "781b61a6f4ff94cb8c14cf598b547f5d5c490969"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:36:08 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "lockd: Support AF_INET6 when hashing addresses in nlm_lookup_host\n\nAdopt an approach similar to the RPC server\u0027s auth cache (from Aurelien\nCharbon and Brian Haley).\n\nNote nlm_lookup_host()\u0027s existing IP address hash function has the same\nissue with correctness on little-endian systems as the original IPv4 auth\ncache hash function, so I\u0027ve also updated it with a hash function similar\nto the new auth cache hash function.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "781b61a6f4ff94cb8c14cf598b547f5d5c490969",
      "tree": "166288be121563b77c3672b311bbbe2541de3bd3",
      "parents": [
        "7e9d7746bfd40121438b155023793796499497d8"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:36:01 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "lockd: Teach nlm_cmp_addr() to support AF_INET6 addresses\n\nUpdate the nlm_cmp_addr() helper to support AF_INET6 as well as AF_INET\naddresses.  New version takes two \"struct sockaddr *\" arguments instead of\n\"struct sockaddr_in *\" arguments.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "7e9d7746bfd40121438b155023793796499497d8",
      "tree": "1b2ba4e1a32d22485bcec946ef4fb6f758067a3a",
      "parents": [
        "90151e6e4d00a3150d03d52170c246734b274622"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:35:54 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "NSM: Use sockaddr_storage for sm_addr field\n\nTo store larger addresses in the nsm_handle structure, make sm_addr a\nsockaddr_storage.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "90151e6e4d00a3150d03d52170c246734b274622",
      "tree": "bb0c7b1ab2b08ca86e87a30e0da0779a14a9b94d",
      "parents": [
        "b4ed58fd34d4def88bda59f9cc566ec9fca6a096"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:35:46 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "lockd: Use sockaddr_storage for h_saddr field\n\nTo store larger addresses in the nlm_host structure, make h_saddr a\nsockaddr_storage.  And let\u0027s call it something more self-explanatory:\n\"saddr\" could easily be mistaken for \"server address\".\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "b4ed58fd34d4def88bda59f9cc566ec9fca6a096",
      "tree": "ce377f9ec8773a26e4a967e7d73d42e99d39b0ea",
      "parents": [
        "5344b12d4f97d4a9a62d806425977a6ff64b6baf"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Sep 03 14:35:39 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:39 2008 -0400"
      },
      "message": "lockd: Use sockaddr_storage + length for h_addr field\n\nTo store larger addresses in the nlm_host structure, make h_addr a\nsockaddr_storage, and add an address length field.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "396cb3d003c2ce72b50c8c06fddfbb7516f30eb1",
      "tree": "c23d66bde884c07eb45234d2ed76681914be3584",
      "parents": [
        "2860a0227b700feb8d6e5c4f07a62a1b40d96022"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Aug 27 16:57:38 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:38 2008 -0400"
      },
      "message": "lockd: Add address family-agnostic helper for zeroing the port number\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2860a0227b700feb8d6e5c4f07a62a1b40d96022",
      "tree": "a0a83210999107a33f5b55ac211299a2f3e034f9",
      "parents": [
        "1b333c54a15a746ff6b04a684b0845a66daacef2"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Aug 27 16:57:31 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:38 2008 -0400"
      },
      "message": "lockd: Specify address family for source address\n\nMake sure an address family is specified for source addresses passed to\nnlm_lookup_host().  nlm_lookup_host() will need this when it becomes\ncapable of dealing with AF_INET6 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1b333c54a15a746ff6b04a684b0845a66daacef2",
      "tree": "d0a09595e34db6b176fbe5f59b60f0c45ee7cd85",
      "parents": [
        "c2526f42711d93f3455f92a82b5e586880fc44be"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Aug 27 16:57:23 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:38 2008 -0400"
      },
      "message": "lockd: address-family independent printable addresses\n\nKnowing which source address is used for communicating with remote NLM\nservices can be helpful for debugging configuration problems on hosts\nwith multiple addresses.\n\nKeep the dprintk debugging here, but adapt it so it displays AF_INET6\naddresses properly.  There are also a couple of dprintk clean-ups as\nwell.\n\nAt some point we will aggregate the helpers that display presentation\nformat addresses into a single set of shared helpers.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c2526f42711d93f3455f92a82b5e586880fc44be",
      "tree": "32d1bf8986f9da5d838dfbf5d54793b68ecb2217",
      "parents": [
        "a26cfad6e0a308a2c68df1f1ef50aabd48b17e6d"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Wed Aug 27 16:57:15 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Sep 29 18:13:38 2008 -0400"
      },
      "message": "NLM: Clean up before introducing new debugging messages\n\nWe\u0027re about to introduce some extra debugging messages in nlm_lookup_host().\nBring the coding style up to date first so we can cleanly introduce the new\ndebugging messages.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "563307b2fa15d687abc54bd980b9847ebf0e3231",
      "tree": "7f16be30217a2e66360ede97aa27d07a4ebd7e55",
      "parents": [
        "10c993a6b5418cb1026775765ba4c70ffb70853d",
        "233607dbbc823caf685e778cabc49fb7f679900b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 24 11:46:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 24 11:46:16 2008 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/projects/trondmy/nfs-2.6\n\n* git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (80 commits)\n  SUNRPC: Invalidate the RPCSEC_GSS session if the server dropped the request\n  make nfs_automount_list static\n  NFS: remove duplicate flags assignment from nfs_validate_mount_data\n  NFS - fix potential NULL pointer dereference v2\n  SUNRPC: Don\u0027t change the RPCSEC_GSS context on a credential that is in use\n  SUNRPC: Fix a race in gss_refresh_upcall()\n  SUNRPC: Don\u0027t disconnect more than once if retransmitting NFSv4 requests\n  SUNRPC: Remove the unused export of xprt_force_disconnect\n  SUNRPC: remove XS_SENDMSG_RETRY\n  SUNRPC: Protect creds against early garbage collection\n  NFSv4: Attempt to use machine credentials in SETCLIENTID calls\n  NFSv4: Reintroduce machine creds\n  NFSv4: Don\u0027t use cred-\u003ecr_ops-\u003ecr_name in nfs4_proc_setclientid()\n  nfs: fix printout of multiword bitfields\n  nfs: return negative error value from nfs{,4}_stat_to_errno\n  NLM/lockd: Ensure client locking calls use correct credentials\n  NFS: Remove the buggy lock-if-signalled case from do_setlk()\n  NLM/lockd: Fix a race when cancelling a blocking lock\n  NLM/lockd: Ensure that nlmclnt_cancel() returns results of the CANCEL call\n  NLM: Remove the signal masking in nlmclnt_proc/nlmclnt_cancel\n  ...\n"
    },
    {
      "commit": "d8421202121ce74daf4625ca9d1d825bbd7ce66a",
      "tree": "0465a155e03b97660d2f887e702b8f2917889c75",
      "parents": [
        "a95e56e72c196970a8067cd515c658d064813170"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Feb 20 15:40:15 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Apr 23 16:13:39 2008 -0400"
      },
      "message": "lockd: convert nsm_mutex to a spinlock\n\nThere\u0027s no reason for a mutex here, except to allow an allocation under\nthe lock, which we can avoid with the usual trick of preallocating\nmemory for the new object and freeing it if it turns out to be\nunnecessary.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "a95e56e72c196970a8067cd515c658d064813170",
      "tree": "e785c49b5cc7fe877ff5bf78193d11b1cb482540",
      "parents": [
        "164f98adbbd50c67177b096a59f55c1a56a45c82"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Feb 20 15:27:31 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Apr 23 16:13:39 2008 -0400"
      },
      "message": "lockd: clean up __nsm_find()\n\nUse list_for_each_entry().  Also, in keeping with kernel style, make the\nnormal case (kzalloc succeeds) unindented and handle the abnormal case\nwith a goto.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "164f98adbbd50c67177b096a59f55c1a56a45c82",
      "tree": "baa47455b18219eca8ff4a54a84954170597fa06",
      "parents": [
        "dd35210e1e2cb46d6dba5c97f1bc3784c4f97998"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Feb 20 14:02:47 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Apr 23 16:13:39 2008 -0400"
      },
      "message": "lockd: fix race in nlm_release()\n\nThe sm_count is decremented to zero but left on the nsm_handles list.\nSo in the space between decrementing sm_count and acquiring nsm_mutex,\nit is possible for another task to find this nsm_handle, increment the\nuse count and then enter nsm_release itself.\n\nThus there\u0027s nothing to prevent the nsm being freed before we acquire\nnsm_mutex here.\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1447d25eb3a7bbe5bf5e4e7489f09be13e1ec73a",
      "tree": "1961687ba998d7f8d6bad9efda19d3eb7f45d1d6",
      "parents": [
        "3dc5063786b273f1aee545844f6bd4e9651ebffe"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Feb 08 13:03:37 2008 +1100"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Apr 23 16:13:35 2008 -0400"
      },
      "message": "knfsd: Remove NLM_HOST_MAX and associated logic.\n\nLockd caches information about hosts that have recently held locks to\nexpedite the taking of further locks.\n\nIt periodically discards this information for hosts that have not been\nused for a few minutes.\n\nlockd currently has a value NLM_HOST_MAX, and changes the \u0027garbage\ncollection\u0027 behaviour when the number of hosts exceeds this threshold.\n\nHowever its behaviour is strange, and likely not what was intended.\nWhen the number of hosts exceeds the max, it scans *less* often (every\n2 minutes vs every minute) and allows unused host information to\nremain around longer (5 minutes instead of 2).\n\nHaving this limit is of dubious value anyway, and we have not\nsuffered from the code not getting the limit right, so remove the\nlimit altogether.  We go with the larger values (discard 5 minute old\nhosts every 2 minutes) as they are probably safer.\n\nMaybe the periodic garbage collection should be replace to with\n\u0027shrinker\u0027 handler so we just respond to memory pressure....\n\nAcked-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "eb18860e1385bfc7f08fcb7ba362e4a5156c8324",
      "tree": "c8dff7c59d8b2d356eda454aa57c6f0e278cad6b",
      "parents": [
        "90d5b18061656993410dfd57ddb88aa5a3f34563"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Fri Mar 14 14:18:37 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 19 18:00:47 2008 -0400"
      },
      "message": "NLM: NLM protocol version numbers are u32\n\nClean up: RPC protocol version numbers are u32.  Make sure we use an\nappropriate type for NLM version numbers when calling nlm_lookup_host().\n\nEliminates a harmless mixed sign comparison in nlm_host_lookup().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "90bd17c87821fe0e055e0f9a7446c2875f31eb4c",
      "tree": "21524f248ed516570dcc1a0f6a66a74e3a275e95",
      "parents": [
        "031fd3aa20fcf6d1862ea7814ee8b2caf36c0d78"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 06 11:34:11 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun Feb 10 18:09:36 2008 -0500"
      },
      "message": "NLM: have server-side RPC clients default to soft RPC tasks\n\nNow that it no longer does an RPC ping, lockd always ends up queueing\nan RPC task for the GRANT_MSG callback. But, it also requeues the block\nfor later attempts. Since these are hard RPC tasks, if the client we\u0027re\ncalling back goes unresponsive the GRANT_MSG callbacks can stack up in\nthe RPC queue.\n\nFix this by making server-side RPC clients default to soft RPC tasks.\nlockd requeues the block anyway, so this should be OK.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "031fd3aa20fcf6d1862ea7814ee8b2caf36c0d78",
      "tree": "b60252860730b3f9b4578db1dc891497e0a00722",
      "parents": [
        "551e4fb2465b87de9d4aa1669b27d624435443bb"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Feb 06 11:34:10 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun Feb 10 18:09:36 2008 -0500"
      },
      "message": "NLM: set RPC_CLNT_CREATE_NOPING for NLM RPC clients\n\nIt\u0027s currently possible for an unresponsive NLM client to completely\nlock up a server\u0027s lockd. The scenario is something like this:\n\n1) client1 (or a process on the server) takes a lock on a file\n2) client2 tries to take a blocking lock on the same file and\n   awaits the callback\n3) client2 goes unresponsive (plug pulled, network partition, etc)\n4) client1 releases the lock\n\n...at that point the server\u0027s lockd will try to queue up a GRANT_MSG\ncallback for client2, but first it requeues the block with a timeout of\n30s. nlm_async_call will attempt to bind the RPC client to client2 and\nwill call rpc_ping. rpc_ping entails a sync RPC call and if client2 is\nunresponsive it will take around 60s for that to time out. Once it times\nout, it\u0027s already time to retry the block and the whole process repeats.\n\nOnce in this situation, nlmsvc_retry_blocked will never return until\nthe host starts responding again. lockd won\u0027t service new calls.\n\nFix this by skipping the RPC ping on NLM RPC clients. This makes\nnlm_async_call return quickly when called.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "d801b861681116ea23a7fb87a70bf463d29c8b9c",
      "tree": "dcc35c5c93461c452942fe5954badd034d8a2939",
      "parents": [
        "0113ab34644649aceaac37ef4b7e5c7d5c183be3"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Tue Jan 29 10:30:55 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 01 16:42:15 2008 -0500"
      },
      "message": "NLM: tear down RPC clients in nlm_shutdown_hosts\n\nIt\u0027s possible for a RPC to outlive the lockd daemon that created it, so\nwe need to make sure that all RPC\u0027s are killed when lockd is coming\ndown. When nlm_shutdown_hosts is called, kill off all RPC tasks\nassociated with the host. Since we need to wait until they have all gone\naway, we might as well just shut down the RPC client altogether.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "48df020aa17ac95a012ff765b0086ede5996b320",
      "tree": "52aa9d1ff1e320ead499bddfe98cb05b06df1311",
      "parents": [
        "e5cff482c78a35b9f149a06aa777a1bd693864fb"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Nov 01 16:56:53 2007 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Feb 01 16:42:02 2008 -0500"
      },
      "message": "NLM: Fix sign of length of NLM variable length strings\n\nAccording to The Open Group\u0027s NLM specification, NLM callers are variable\nlength strings.  XDR variable length strings use an unsigned 32 bit length.\nAnd internally, negative string lengths are not meaningful for the Linux\nNLM implementation.\n\nClean up: Make nlm_lock.len and nlm_reboot.len unsigned integers.  This\nmakes the sign of NLM string lengths consistent with the sign of xdr_netobj\nlengths.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nAcked-By: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c98451bdb2f3e6d6cc1e03adad641e9497512b49",
      "tree": "e5e2aa60dd308fc5fa2b641d84798e6b93376949",
      "parents": [
        "d3bc9a1deb8964d774af8535814cb91bf8f6def0"
      ],
      "author": {
        "name": "Frank van Maarseveen",
        "email": "frankvm@frankvm.com",
        "time": "Mon Jul 09 22:25:29 2007 +0200"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:49 2007 -0400"
      },
      "message": "NLM: fix source address of callback to client\n\nUse the destination address of the original NLM request as the\nsource address in callbacks to the client.\n\nSigned-off-by: Frank van Maarseveen \u003cfrankvm@frankvm.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "34f52e3591f241b825353ba27def956d8487c400",
      "tree": "9f7f0cd52f206095217bd2469e31c2531cbae0a4",
      "parents": [
        "c44fe705530ff9ea5e563bf9b65bdd29defe682b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Jun 14 16:40:31 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Jul 10 23:40:28 2007 -0400"
      },
      "message": "SUNRPC: Convert rpc_clnt-\u003ecl_users to a kref\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "21051ba6259c519e20a7d575ddceb16e84ad2a5d",
      "tree": "78dcaf02ffe66efce5e0ab230e446be435da0d21",
      "parents": [
        "faa8b6c3c2e1454175609167a25ae525d075f045"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon May 14 16:50:44 2007 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon May 14 19:33:44 2007 -0400"
      },
      "message": "NLM: Fix locking client timeouts...\n\nnlmsvc_timeout is already in units of HZ...\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27459f0940e16c68e080f5fc7e85aa9eb3f74528",
      "tree": "f13cd1f2005dda2b6115e2afbc49e1271b0d374b",
      "parents": [
        "2442222283918c2d1c20ae651d95fe168757938b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Mon Feb 12 00:53:34 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:36 2007 -0800"
      },
      "message": "[PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses\n\nExpand the rq_addr field to allow it to contain larger addresses.\n\nSpecifically, we replace a \u0027sockaddr_in\u0027 with a \u0027sockaddr_storage\u0027, then\neverywhere the \u0027sockaddr_in\u0027 was referenced, we use instead an accessor\nfunction (svc_addr_in) which safely casts the _storage to _in.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nCc: Aurelien Charbon \u003caurelien.charbon@ext.bull.net\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c585646dd1d98caf0a5f2e85c794c1441df6fac1",
      "tree": "244fe4b88eeaeccc449d1c936a9e0a4be27b6e0d",
      "parents": [
        "7ddae86095794cce4364740edd8463c77654a265"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Dec 06 20:38:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:40 2006 -0800"
      },
      "message": "[PATCH] fs/lockd/host.c: make 2 functions static\n\nMake the following needlessly global functions static:\n\n - nlm_lookup_host()\n - nsm_find()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6b54dae2b0defb30babb0fe87b13463b9f4b2907",
      "tree": "0a9e2d34f4fb089287b6d5b92cb438b30dd66293",
      "parents": [
        "b66285cee3f9abad26cca6c9b848e1ad6b792d94"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Oct 04 02:16:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:20 2006 -0700"
      },
      "message": "[PATCH] knfsd: lockd: fix refount on nsm\n\nIf nlm_lookup_host finds what it is looking for it exits with an extra\nreference on the matching \u0027nsm\u0027 structure.\n\nSo don\u0027t actually count the reference until we are (fairly) sure it is going\nto be used.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "89e63ef609fb0064a47281e31e38010159c32d57",
      "tree": "fcc1953b65d29caabbb4caf25498f4f160797a70",
      "parents": [
        "bc5fea4299b8bda5f73c6f79dc35d388caf8bced"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Wed Oct 04 02:16:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:19 2006 -0700"
      },
      "message": "[PATCH] Convert lockd to use the newer mutex instead of the older semaphore\n\nBoth the (recently introduces) nsm_sema and the older f_sema are converted\nover.\n\nCc: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "abd1f50094cad9dff6d68ada98b495549f52fc30",
      "tree": "dd738067aa90af1cb4613a7c711ee426ff5f8ae9",
      "parents": [
        "350fce8dbf43f7d441b77366851c9ce3cd28d6dc"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:16:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: lockd: optionally use hostnames for identifying peers\n\nThis patch adds the nsm_use_hostnames sysctl and module param.  If set, lockd\nwill use the client\u0027s name (as given in the NLM arguments) to find the NSM\nhandle.  This makes recovery work when the NFS peer is multi-homed, and the\nreboot notification arrives from a different IP than the original lock calls.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "350fce8dbf43f7d441b77366851c9ce3cd28d6dc",
      "tree": "a47f7e875bb9c06b93df30b84de9ca97d66740b2",
      "parents": [
        "c53c1bb94f30cecee79ca0a8e9977640338283be"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Oct 04 02:16:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: simplify nlmsvc_invalidate_all\n\nAs a result of previous patches, the loop in nlmsvc_invalidate_all just sets\nh_expires for all client/hosts to 0 (though does it in a very complicated\nway).\n\nThis was possibly meant to trigger early garbage collection but half the time\n\u00270\u0027 is in the future and so it infact delays garbage collection.\n\nPre-aging the \u0027hosts\u0027 is not really needed at this point anyway so we throw\nout the loop and nlm_find_client which is no longer needed.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c53c1bb94f30cecee79ca0a8e9977640338283be",
      "tree": "88235a72747c8b151be619f3c1a95f9ae1a1dbc0",
      "parents": [
        "f2af793db02d2c2f677bdb5bf8e0efdcbf9c0256"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:16:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: lockd: Add nlm_destroy_host\n\nThis patch moves the host destruction code out of nlm_host_gc into a function\nof its own.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0cea32761a2f954c6d42ca79d7d1e6b9663b1e4a",
      "tree": "4e98cf7e8e4c353e9cfc58a71a16d34c521a46a3",
      "parents": [
        "9502c52259f7038b6c1e31532e22884716a56b1a"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: lockd: make the hash chains use a hlist_node\n\nGet rid of the home-grown singly linked lists for the nlm_host hash table.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5c8dd29ca7fc7483690cef4306549742d534f2a2",
      "tree": "edf51e354535448ea6b57a59358d9f28c556684c",
      "parents": [
        "f0737a39a64a9df32bb045c54e1cdf6cecdcbdd7"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:17 2006 -0700"
      },
      "message": "[PATCH] knfsd: lockd: Make nlm_host_rebooted use the nsm_handle\n\nThis patch makes the SM_NOTIFY handling understand and use the nsm_handle.\n\nTo make it a bit clear what is happening:\n\n    nlmclent_prepare_reclaim and nlmclnt_finish_reclaim\n    get open-coded into \u0027reclaimer\u0027\n\nThe result is tidied up.\n\nThen some of that functionality is moved out into nlm_host_rebooted (which\ncalls nlmclnt_recovery which starts a thread which runs reclaimer).\n\nAlso host_rebooted now finds an nsm_handle rather than a host, then then\niterates over all hosts and deals with each host that shares that nsm_handle.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f0737a39a64a9df32bb045c54e1cdf6cecdcbdd7",
      "tree": "a43dd888bd2af9511ef5a0c3aeb1f4cb50ca44a2",
      "parents": [
        "8dead0dbd478f35fd943f3719591e5af1ac0950d"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:16 2006 -0700"
      },
      "message": "[PATCH] knfsd: misc minor fixes, indentation changes\n\ncleans up some code in lockd/host.c, fixes an error printk and makes it a\nfatal BUG if nlmsvc_free_host_resources fails.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8dead0dbd478f35fd943f3719591e5af1ac0950d",
      "tree": "05ad7dd248263cbeecc4f3d0b4cbb3ec06c65626",
      "parents": [
        "db4e4c9a9e741ee812e1febf5e386d6a24218a71"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:16 2006 -0700"
      },
      "message": "[PATCH] knfsd: lockd: introduce nsm_handle\n\nThis patch introduces the nsm_handle, which is shared by all nlm_host objects\nreferring to the same client.\n\nWith this patch applied, all nlm_hosts from the same address will share the\nsame nsm_handle.  A future patch will add sharing by name.\n\nNote: this patch changes h_name so that it is no longer guaranteed to be an IP\naddress of the host.  When the host represents an NFS server, h_name will be\nthe name passed in the mount call.  When the host represents a client, h_name\nwill be the name presented in the lock request received from the client.  A\nh_name is only used for printing informational messages, this change should\nnot be significant.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "db4e4c9a9e741ee812e1febf5e386d6a24218a71",
      "tree": "92e59fba30edbf5e10908eb2952928a5e2a29adf",
      "parents": [
        "cf712c24d72341effcfd28330b83b49f77cb627b"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:16 2006 -0700"
      },
      "message": "[PATCH] knfsd: when looking up a lockd host, pass hostname \u0026 length\n\nThis patch adds the peer\u0027s hostname (and name length) to all calls to\nnlm*_lookup_host functions.  A subsequent patch will make use of these (is\nrequested by a sysctl).\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cf712c24d72341effcfd28330b83b49f77cb627b",
      "tree": "88fcb932f3c85d83601e45473bee2c99a22ba9c2",
      "parents": [
        "977faf392fc898407554bbe7338d57b29e3660cf"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:16 2006 -0700"
      },
      "message": "[PATCH] knfsd: consolidate common code for statd-\u003elockd notification\n\nCommon code from nlm4svc_proc_sm_notify and nlmsvc_proc_sm_notify is moved\ninto a new nlm_host_rebooted.\n\nThis is in preparation of a patch that will change the reboot notification\nhandling entirely.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "977faf392fc898407554bbe7338d57b29e3660cf",
      "tree": "9bd611c100e3e2d1aa336010124cda0155183bb8",
      "parents": [
        "7b2b1fee30df7e2165525cd03f7d1d01a3a56794"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Oct 04 02:15:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:16 2006 -0700"
      },
      "message": "[PATCH] knfsd: hide use of lockd\u0027s h_monitored flag\n\nThis patch moves all checks of the h_monitored flag into the\nnsm_monitor/unmonitor functions.  A subsequent patch will replace the\nmechanism by which we mark a host as being monitored.\n\nThere is still one occurence of h_monitored outside of mon.c and that is in\nclntlock.c where we respond to a reboot.  The subsequent patch will modify\nthis too.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8314dc60ccba7e41f425048c4160dc7f63377d5",
      "tree": "4e361a6e93dc7f64da0244e5a0dfef1fface0ddb",
      "parents": [
        "32c2d2bc4bed61323f14f2a7d69ccbd567253d8a"
      ],
      "author": {
        "name": "Panagiotis Issaris",
        "email": "takis@issaris.org",
        "time": "Wed Sep 27 01:49:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:10 2006 -0700"
      },
      "message": "[PATCH] fs: Conversions from kmalloc+memset to k(z|c)alloc\n\nConversions from kmalloc+memset to kzalloc.\n\nSigned-off-by: Panagiotis Issaris \u003ctakis@issaris.org\u003e\nJffs2-bit-acked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e1ec78928b4d5a31b7a847e65c6009f4229f7c0f",
      "tree": "cf4a8b521551b3e398801fc3618b586e19f94f1e",
      "parents": [
        "c2866763b4029411d166040306691773c12d4caf"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:20 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:50 2006 -0400"
      },
      "message": "LOCKD: Convert to use new rpc_create() API\n\nReplace xprt_create_proto/rpc_create_client with new rpc_create()\ninterface in the Network Lock Manager.\n\nNote that the semantics of NLM transports is now \"hard\" instead of \"soft\"\nto provide a better guarantee that lock requests will get to the server.\n\nTest plan:\nRepeated runs of Connectathon locking suite.  Check network trace to ensure\nNLM requests are working correctly.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6ca948238724c945bd353f51d54ae7d285f3889f",
      "tree": "222aa223d93a4ffc7e662e1d80bb3b5d28b5f1a2",
      "parents": [
        "c4efcb1d3e0bc76aeb9ca6301d19a5079893c6c9"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Tue Aug 22 20:06:19 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:49 2006 -0400"
      },
      "message": "SUNRPC: Clean-up after previous patches.\n\nRemove some unused macros related to accessing an RPC peer address\n\nTest plan:\nCompile kernel with CONFIG_NFS option enabled.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "28df955a2ad484d602314b30183ea8496a9aa34a",
      "tree": "c62632b2a0a49df114283f10764244c1b1b5f506",
      "parents": [
        "5046791417dcac1ba126b77b8062af15a2f0b8e1"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:40:27 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:40:27 2006 -0400"
      },
      "message": "NLM: Fix reclaim races\n\nCurrently it is possible for a task to remove its locks at the same time as\nthe NLM recovery thread is trying to recover them. This quickly leads to an\nOops.\nProtect the locks using an rw semaphore while they are being recovered.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5046791417dcac1ba126b77b8062af15a2f0b8e1",
      "tree": "a59f8eecd3e089046859cd4489c550df7b6b1ead",
      "parents": [
        "3134cbec5e172c3a86e2c3ef4af34b6cfd380bfa"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:40:24 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jun 09 09:40:24 2006 -0400"
      },
      "message": "NLM: sem to mutex conversion\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "353ab6e97b8f209dbecc9f650f1f84e3da2a7bb1",
      "tree": "bffabd9a5a493ffd2b41dd825e71e848ca6ba6d7",
      "parents": [
        "e655a250d5fc12b6dfe0d436180ba4a3bfffdc9f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 26 01:37:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:55 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: fs/\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Eric Van Hensbergen \u003cericvh@ericvh.myip.org\u003e\nCc: Robert Love \u003crml@tech9.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c060b531006e0711db32a132d6ac7661594b280",
      "tree": "899f281dfec3da7e29ede2e76019b3861116714f",
      "parents": [
        "26bcbf965f857c710adafd16cf424f043006b5dd"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:41 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:41 2006 -0500"
      },
      "message": "lockd: Fix Oopses due to list manipulation errors.\n\nThe patch \"stop abusing file_lock_list introduces a couple of bugs since\nthe locks may be copied and need to be removed from the lists when they are\ndestroyed.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "26bcbf965f857c710adafd16cf424f043006b5dd",
      "tree": "fa3c1e4ba07ab3d1e4e61b27c7579c57fd2d5c65",
      "parents": [
        "04266473ecf5cdca242201d9f1ed890afe070fb6"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Mar 20 13:44:40 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:40 2006 -0500"
      },
      "message": "lockd: stop abusing file_lock_list\n\nCurrently lockd directly access the file_lock_list from fs/locks.c.\nIt does so to mark locks granted or reclaimable.  This is very\nsuboptimal, because a) lockd needs to poke into locks.c internals, and\nb) it needs to iterate over all locks in the system for marking locks\ngranted or reclaimable.\n\nThis patch adds lists for granted and reclaimable locks to the nlm_host\nstructure instead, and adds locks to those.\n\nnlmclnt_lock:\n\tnow adds the lock to h_granted instead of setting the\n\tNFS_LCK_GRANTED, still O(1)\n\nnlmclnt_mark_reclaim:\n\tgoes away completely, replaced by a list_splice_init.\n\tComplexity reduced from O(locks in the system) to O(1)\n\nreclaimer:\n\titerates over h_reclaim now, complexity reduced from\n\tO(locks in the system) to O(locks per nlm_host)\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "04266473ecf5cdca242201d9f1ed890afe070fb6",
      "tree": "c5c13c61db25a999cda87e5c6b4aacba12b44049",
      "parents": [
        "686517f1ad1630c11964d668b556aab79b8c942e"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:40 2006 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Mar 20 13:44:40 2006 -0500"
      },
      "message": "lockd: Make lockd use rpc_new_client() instead of rpc_create_client\n\nWhen doing NLM_GRANTED requests, lockd may end up blocking if we use\nrpc_create_client() due to the synchronous call to rpc_ping(). Instead, use\nrpc_new_client().\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "35f5a422ce1af836007f811b613c440d0e348e06",
      "tree": "25aac5cccce27a6ed5ebb4e161f813af2adbaf56",
      "parents": [
        "02107148349f31eee7c0fb06fd7a880df73dbd20"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@netapp.com",
        "time": "Tue Jan 03 09:55:50 2006 +0100"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Jan 06 14:58:56 2006 -0500"
      },
      "message": "SUNRPC: new interface to force an RPC rebind\n\n We\u0027d like to hide fields in rpc_xprt and rpc_clnt from upper layer protocols.\n Start by creating an API to force RPC rebind, replacing logic that simply\n sets cl_port to zero.\n\n Test-plan:\n Destructive testing (unplugging the network temporarily).  Connectathon\n with UDP and TCP.  NFSv2/3 and NFSv4 mounting should be carefully checked.\n Probably need to rig a server where certain services aren\u0027t running, or\n that returns an error for some typical operation.\n\n Signed-off-by: Chuck Lever \u003ccel@netapp.com\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ed63c003701a314c4893c11eceb9d68f8f46c662",
      "tree": "c0567884d9cce53960061fece0ae9c2eabd0af77",
      "parents": [
        "a58dd398f5db4f73d5c581069fd70a4304cc4f0a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@netapp.com",
        "time": "Thu Aug 25 16:25:53 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 23 12:38:47 2005 -0400"
      },
      "message": "[PATCH] RPC: remove xprt-\u003enocong\n\n Get rid of the \"xprt-\u003enocong\" variable.\n\n Test-plan:\n Use WAN simulation to cause sporadic bursty packet loss with UDP mounts.\n Look for significant regression in performance or client stability.\n\n Signed-off-by: Chuck Lever \u003ccel@netapp.com\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "43118c29dea2b23798bd42a147015cceee7fa885",
      "tree": "4951a6777a3dc167d46c1373c02d21912b250e96",
      "parents": [
        "808012fbb23a52ec59352445d2076d175ad4ab26"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "cel@netapp.com",
        "time": "Thu Aug 25 16:25:49 2005 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 23 12:38:35 2005 -0400"
      },
      "message": "[PATCH] RPC: get rid of xprt-\u003estream\n\n Now we can fix up the last few places that use the \"xprt-\u003estream\"\n variable, and get rid of it from the rpc_xprt structure.\n\n Test-plan:\n Destructive testing (unplugging the network temporarily).  Connectathon\n with UDP and TCP.\n\n Signed-off-by: Chuck Lever \u003ccel@netapp.com\u003e\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5ee0ed7d3ab620a764740fb018f469d45f561931",
      "tree": "9b6a938fe521815afd3cfb42e2023b443bb05d28",
      "parents": [
        "5b616f5d596c0b056129f8aeafbc08409b3cd050"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 17:16:20 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:04 2005 -0400"
      },
      "message": "[PATCH] RPC: Make rpc_create_client() probe server for RPC program+version support\n\n Ensure that we don\u0027t create an RPC client without checking that the server\n does indeed support the RPC program + version that we are trying to set up.\n\n This enables us to immediately return an error to \"mount\" if it turns out\n that the server is only supporting NFSv2, when we requested NFSv3 or NFSv4.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5b616f5d596c0b056129f8aeafbc08409b3cd050",
      "tree": "bdbd2eb5bd1f8a26c7287e21be25ec50db075459",
      "parents": [
        "334ccfd545bba9690515f2c5c167d5adb161989b"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 17:16:20 2005 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Jun 22 16:07:03 2005 -0400"
      },
      "message": "[PATCH] RPC: Make rpc_create_client() destroy the transport on failure.\n\n This saves us a couple of lines of cleanup code for each call.\n\n Signed-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\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"
    }
  ]
}
