)]}'
{
  "log": [
    {
      "commit": "d44e0fc704143624b3e88fbf8fbcfda7a83fd299",
      "tree": "af6c5a5c6ae179051caf725e46f11ff8e2f0f7c8",
      "parents": [
        "761b9d3ffc953c24ceb55d8e12ff7e02b17e0484"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Mar 18 14:22:11 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 21 11:18:01 2008 -0500"
      },
      "message": "dlm: recover nodes that are removed and re-added\n\nIf a node is removed from a lockspace, and then added back before the\ndlm is notified of the removal, the dlm will not detect the removal\nand won\u0027t clear the old state from the node.  This is fixed by using a\nlist of added nodes so the membership recovery can detect when a newly\nadded node is already in the member list.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "85f0379aa0f9366bb6918e2e898a915231176fbd",
      "tree": "359544ba2ad34c1e49d4e6333b7c36cf8c7685f5",
      "parents": [
        "594199ebaae5d77f025974dfcfa6651cc81325a8"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 16 13:02:31 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 30 11:04:43 2008 -0600"
      },
      "message": "dlm: keep cached master rsbs during recovery\n\nTo prevent the master of an rsb from changing rapidly, an unused rsb is kept\non the \"toss list\" for a period of time to be reused.  The toss list was\nbeing cleared completely for each recovery, which is unnecessary.  Much of\nthe benefit of the toss list can be maintained if nodes keep rsb\u0027s in their\ntoss list that they are the master of.  These rsb\u0027s need to be included\nwhen the resource directory is rebuilt during recovery.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "c36258b5925e6cf6bf72904635100593573bfcff",
      "tree": "565f1ce29a7f8a2cd1c25f2d36c932727adbdbc2",
      "parents": [
        "b434eda6fda5bcdcc2dd918e5ffbf7184f2d4e17"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Sep 27 15:53:38 2007 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Oct 10 08:56:38 2007 +0100"
      },
      "message": "[DLM] block dlm_recv in recovery transition\n\nIntroduce a per-lockspace rwsem that\u0027s held in read mode by dlm_recv\nthreads while working in the dlm.  This allows dlm_recv activity to be\nsuspended when the lockspace transitions to, from and between recovery\ncycles.\n\nThe specific bug prompting this change is one where an in-progress\nrecovery cycle is aborted by a new recovery cycle.  While dlm_recv was\nprocessing a recovery message, the recovery cycle was aborted and\ndlm_recoverd began cleaning up.  dlm_recv decremented recover_locks_count\non an rsb after dlm_recoverd had reset it to zero.  This is fixed by\nsuspending dlm_recv (taking write lock on the rwsem) before aborting the\ncurrent recovery.\n\nThe transitions to/from normal and recovery modes are simplified by using\nthis new ability to block dlm_recv.  The switch from normal to recovery\nmode means dlm_recv goes from processing locking messages, to saving them\nfor later, and vice versa.  Races are avoided by blocking dlm_recv when\nsetting the flag that switches between modes.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "3ae1acf93a21512512f8a78430fcde5992dd208e",
      "tree": "878ed3c619530c6acf862ecf663063f66fc47a06",
      "parents": [
        "85e86edf951a8a39954c0ba1edbe4a58827dcd5c"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri May 18 08:59:31 2007 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jul 09 08:22:33 2007 +0100"
      },
      "message": "[DLM] add lock timeouts and warnings [2/6]\n\nNew features: lock timeouts and time warnings.  If the DLM_LKF_TIMEOUT\nflag is set, then the request/conversion will be canceled after waiting\nthe specified number of centiseconds (specified per lock).  This feature\nis only available for locks requested through libdlm (can be enabled for\nkernel dlm users if there\u0027s a use for it.)\n\nIf the new DLM_LSFL_TIMEWARN flag is set when creating the lockspace, then\na warning message will be sent to userspace (using genetlink) after a\nrequest/conversion has been waiting for a given number of centiseconds\n(configurable per node).  The time warnings will be used in the future\nto do deadlock detection in userspace.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "8ec6886748443bec53ce9b9bf50cec92bc417a1b",
      "tree": "f51bdd8cc92931c5f50d1a15181444651ceeeacb",
      "parents": [
        "87d21e07f3880b8d489f0b4a639deb1362101838"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Jan 09 09:38:39 2007 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Feb 05 13:36:34 2007 -0500"
      },
      "message": "[DLM] change some log_error to log_debug\n\nSome common, non-error messages should use log_debug instead of log_error\nso they can be turned off.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "57adf7eede38d315e0e328c52484d6a596e9a238",
      "tree": "6e08a97b0de41ecc46e465d01f100bb32eeffecc",
      "parents": [
        "0ac230699a0f3f0d15ad4e4ad99446dac5b4a21f"
      ],
      "author": {
        "name": "Ryusuke Konishi",
        "email": "ryusuke@osrg.net",
        "time": "Wed Nov 29 09:33:48 2006 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Nov 30 10:37:22 2006 -0500"
      },
      "message": "[DLM] fix format warnings in rcom.c and recoverd.c\n\nThis fixes the following gcc warnings generated on\nthe architectures where uint64_t !\u003d unsigned long long (e.g. ppc64).\n\nfs/dlm/rcom.c:154: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 4 has type \u0027uint64_t\u0027\nfs/dlm/rcom.c:154: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 5 has type \u0027uint64_t\u0027\nfs/dlm/recoverd.c:48: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 3 has type \u0027uint64_t\u0027\nfs/dlm/recoverd.c:202: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 3 has type \u0027uint64_t\u0027\nfs/dlm/recoverd.c:210: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 3 has type \u0027uint64_t\u0027\n\nSigned-off-by: Ryusuke Konishi \u003cryusuke@osrg.net\u003e\nSigned-off-by: Patrick Caulfield \u003cpcaulfie@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2896ee37ccc1f9acb244c9b02becb74a43661009",
      "tree": "c7129fd39b33c9c61516419b595f109bff500749",
      "parents": [
        "dcf3dd852f554bb0016aa23892596717cc123a26"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Nov 27 11:31:22 2006 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Nov 30 10:37:00 2006 -0500"
      },
      "message": "[DLM] fix add_requestqueue checking nodes list\n\nRequests that arrive after recovery has started are saved in the\nrequestqueue and processed after recovery is done.  Some of these requests\nare purged during recovery if they are from nodes that have been removed.\nWe move the purging of the requests (dlm_purge_requestqueue) to later in\nthe recovery sequence which allows the routine saving requests\n(dlm_add_requestqueue) to avoid filtering out requests by nodeid since the\nsame will be done by the purge.  The current code has add_requestqueue\nfiltering by nodeid but doesn\u0027t hold any locks when accessing the list of\ncurrent nodes.  This also means that we need to call the purge routine\nwhen the lockspace is being shut down since the add routine will not be\nrejecting requests itself any more.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "4b77f2c93d052adca8cc8690b9b5e7f8798f4ddd",
      "tree": "b61c4923c355d36875bf878212dfc1b2f1f0f7ba",
      "parents": [
        "2cdc98aaf072d573df10c503d3b3b0b74e2a6d06"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Nov 01 09:31:48 2006 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Nov 30 10:35:24 2006 -0500"
      },
      "message": "[DLM] do full recover_locks barrier\n\nRed Hat BZ 211914\n\nThe previous patch \"[DLM] fix aborted recovery during\nnode removal\" was incomplete as discovered with further testing.  It set\nthe bit for the RS_LOCKS barrier but did not then wait for the barrier.\nThis is often ok, but sometimes it will cause yet another recovery hang.\nIf it\u0027s a new node that also has the lowest nodeid that skips the barrier\nwait, then it misses the important step of collecting and reporting the\nbarrier status from the other nodes (which is the job of the low nodeid in\nthe barrier wait routine).\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "2cdc98aaf072d573df10c503d3b3b0b74e2a6d06",
      "tree": "c8f0ed478c6384da504026ce2668ed916b01a6af",
      "parents": [
        "91c0dc93a1a6bbdd79707ed311e48b4397df177f"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Oct 31 11:56:08 2006 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Nov 30 10:35:16 2006 -0500"
      },
      "message": "[DLM] fix stopping unstarted recovery\n\nRed Hat BZ 211914\n\nWhen many nodes are joining a lockspace simultaneously, the dlm gets a\nquick sequence of stop/start events, a pair for adding each node.\ndlm_controld in user space sends dlm_recoverd in the kernel each stop and\nstart event.  dlm_controld will sometimes send the stop before\ndlm_recoverd has had a chance to take up the previously queued start.  The\nstop aborts the processing of the previous start by setting the\nRECOVERY_STOP flag.  dlm_recoverd is erroneously clearing this flag and\nignoring the stop/abort if it happens to take up the start after the stop\nmeant to abort it.  The fix is to check the sequence number that\u0027s\nincremented for each stop/start before clearing the flag.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "91c0dc93a1a6bbdd79707ed311e48b4397df177f",
      "tree": "ec78620714a49fc41244afb667404b0ff825b1a2",
      "parents": [
        "d4400156d415540086c34a06e5d233122d6bf56a"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Oct 31 11:56:01 2006 -0600"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Nov 30 10:35:13 2006 -0500"
      },
      "message": "[DLM] fix aborted recovery during node removal\n\nRed Hat BZ 211914\n\nWith the new cluster infrastructure, dlm recovery for a node removal can\nbe aborted and restarted for a node addition.  When this happens, the\nrestarted recovery isn\u0027t aware that it\u0027s doing recovery for the earlier\nremoval as well as the addition.  So, it then skips the recovery steps\nonly required when nodes are removed.  This can result in locks not being\npurged for failed/removed nodes.  The fix is to check for removed nodes\nfor which recovery has not been completed at the start of a new recovery\nsequence.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "5f88f1ea16a2fb5f125505053d1bfb7901a88c64",
      "tree": "e3d9ce0e01a3903556885c784f8db759c26a795e",
      "parents": [
        "5dc39fe621ead2fa2a0439a686be4df185861eae"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 24 14:47:20 2006 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Aug 25 10:02:53 2006 -0400"
      },
      "message": "[DLM] add new lockspace to list ealier\n\nWhen a new lockspace was being created, the recoverd thread was being\nstarted for it before the lockspace was added to the global list of\nlockspaces.  The new thread was looking up the lockspace in the global\nlist and sometimes not finding it due to the race with the original thread\nadding it to the list.  We need to add the lockspace to the global list\nbefore starting the thread instead of after, and if the new thread can\u0027t\nfind the lockspace for some reason, it should return an error.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "f6db1b8e724b071d144055b48da3827ce26dba1c",
      "tree": "7812eb7ff88dbf638cc8bfd30d3e86aa1d35f0e1",
      "parents": [
        "5ff519112af6a6dab0ad7f6b0b0a2dcfff273e5b"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Aug 08 17:06:07 2006 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Aug 09 09:45:31 2006 -0400"
      },
      "message": "[DLM] abort recovery more quickly\n\nWhen we abort one recovery to do another, break out of the ping_members()\nroutine more quickly, and wake up the dlm_recoverd thread more quickly\ninstead of waiting for it to time out.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "901359256b2666f52a3a7d3f31927677e91b3a2a",
      "tree": "24d4ee2c1ad63a0e6c3a303ad67eac3342772c4f",
      "parents": [
        "ec5800246607183a1d7fd0bae5f087c12439e9e7"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Jan 20 08:47:07 2006 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "steve@chygwyn.com",
        "time": "Fri Jan 20 08:47:07 2006 +0000"
      },
      "message": "[DLM] Update DLM to the latest patch level\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steve Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "e7fd41792fc0ee52a05fcaac87511f118328d147",
      "tree": "eee5227088ba97daef795e385b7548d2a1cc4cb6",
      "parents": [
        "e47314207032cfd1157b8c377df162839b32ea6f"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 18 09:30:29 2006 +0000"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Jan 18 09:30:29 2006 +0000"
      },
      "message": "[DLM] The core of the DLM for GFS2/CLVM\n\nThis is the core of the distributed lock manager which is required\nto use GFS2 as a cluster filesystem. It is also used by CLVM and\ncan be used as a standalone lock manager independantly of either\nof these two projects.\n\nIt implements VAX-style locking modes.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steve Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    }
  ]
}
