)]}'
{
  "log": [
    {
      "commit": "4875647a08e35f77274838d97ca8fa44158d50e2",
      "tree": "bf8a39eaf3219af5d661ed3e347545306fd84bda",
      "parents": [
        "6d40c4a708e0e996fd9c60d4093aebba5fe1f749"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Apr 26 15:54:29 2012 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed May 02 14:15:27 2012 -0500"
      },
      "message": "dlm: fixes for nodir mode\n\nThe \"nodir\" mode (statically assign master nodes instead\nof using the resource directory) has always been highly\nexperimental, and never seriously used.  This commit\nfixes a number of problems, making nodir much more usable.\n\n- Major change to recovery: recover all locks and restart\n  all in-progress operations after recovery.  In some\n  cases it\u0027s not possible to know which in-progess locks\n  to recover, so recover all.  (Most require recovery\n  in nodir mode anyway since rehashing changes most\n  master nodes.)\n\n- Change the way nodir mode is enabled, from a command\n  line mount arg passed through gfs2, into a sysfs\n  file managed by dlm_controld, consistent with the\n  other config settings.\n\n- Allow recovering MSTCPY locks on an rsb that has not\n  yet been turned into a master copy.\n\n- Ignore RCOM_LOCK and RCOM_LOCK_REPLY recovery messages\n  from a previous, aborted recovery cycle.  Base this\n  on the local recovery status not being in the state\n  where any nodes should be sending LOCK messages for the\n  current recovery cycle.\n\n- Hold rsb lock around dlm_purge_mstcpy_locks() because it\n  may run concurrently with dlm_recover_master_copy().\n\n- Maintain highbast on process-copy lkb\u0027s (in addition to\n  the master as is usual), because the lkb can switch\n  back and forth between being a master and being a\n  process copy as the master node changes in recovery.\n\n- When recovering MSTCPY locks, flag rsb\u0027s that have\n  non-empty convert or waiting queues for granting\n  at the end of recovery.  (Rename flag from LOCKS_PURGED\n  to RECOVER_GRANT and similar for the recovery function,\n  because it\u0027s not only resources with purged locks\n  that need grant a grant attempt.)\n\n- Replace a couple of unnecessary assertion panics with\n  error messages.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "6d40c4a708e0e996fd9c60d4093aebba5fe1f749",
      "tree": "85c2c602d5c18c3a4c94e525114af4f449751c10",
      "parents": [
        "57638bf3aa64facd9eba0e018b5773f5d2da6c2b"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 23 16:36:01 2012 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Apr 26 15:41:46 2012 -0500"
      },
      "message": "dlm: improve error and debug messages\n\nChange some existing error/debug messages to\ncollect more useful information, and add\nsome new error/debug messages to address\nrecently found problems.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "7210cb7a72a22303cdb225bd1aea28697a17bbae",
      "tree": "eb303df3d35d52080309d139c1d26edcfab1e670",
      "parents": [
        "192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Mar 08 12:37:12 2012 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Mar 08 14:46:30 2012 -0600"
      },
      "message": "dlm: fix slow rsb search in dir recovery\n\nThe function used to find an rsb during directory\nrecovery was searching the single linear list of\nrsb\u0027s.  This wasted a lot of time compared to\nusing the standard hash table to find the rsb.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "c6ff669bac5c409f4cb74366248f51b73f7d6feb",
      "tree": "14c4b7dc943a7dde8fd6d80bc9d149dadc0d59b8",
      "parents": [
        "4bcad6c1ef53a9a0224f4654ceb3b9030d0769ec"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Mar 28 14:17:26 2011 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Apr 01 14:19:06 2011 -0500"
      },
      "message": "dlm: delayed reply message warning\n\nAdd an option (disabled by default) to print a warning message\nwhen a lock has been waiting a configurable amount of time for\na reply message from another node.  This is mainly for debugging.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "170e19ab2900b7c959d7a0e627fd12f383efcfa1",
      "tree": "d34d48eb0fc5c1bb7bd99e4613ce4cc6092010a8",
      "parents": [
        "5416b704aef0b7350073421f4f6ac1a21bc213e7"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 13 23:29:38 2008 +0200"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 21 11:18:01 2008 -0500"
      },
      "message": "dlm: make dlm_print_rsb() static\n\ndlm_print_rsb() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "eef7d739c218cb2546cf95686db77de0d76e4122",
      "tree": "4d6c0e65e8aff1afb2c6428c729a98274ccb1a6d",
      "parents": [
        "8b0d8e03f847d9c1677b8a193cd124debbc54633"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 25 00:58:46 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:22:42 2008 -0600"
      },
      "message": "dlm: dlm_process_incoming_buffer() fixes\n\n* check that length is large enough to cover the non-variable part of message or\n  rcom resp. (after checking that it\u0027s large enough to cover the header, of\n  course).\n\n* kill more pointless casts\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\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": "8b4021fa436f7c76a2299e6d85d4d4a619724e9a",
      "tree": "4e3be51910ede8a36d640229bb1d20d3f7547652",
      "parents": [
        "84d8cd69a8e7f1c9962f46bc79850c9f1f663806"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue May 29 08:46:00 2007 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jul 09 08:22:54 2007 +0100"
      },
      "message": "[DLM] canceling deadlocked lock\n\nAdd a function that can be used through libdlm by a system daemon to cancel\nanother process\u0027s deadlocked lock.  A completion ast with EDEADLK is returned\nto the process waiting for the lock.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "d7db923ea4990edb5583bf54af868ba687a1bc84",
      "tree": "3efa0db00a3a6400f43a65aef2726fa813f9dfa2",
      "parents": [
        "3ae1acf93a21512512f8a78430fcde5992dd208e"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri May 18 09:00:32 2007 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jul 09 08:22:36 2007 +0100"
      },
      "message": "[DLM] dlm_device interface changes [3/6]\n\nChange the user/kernel device interface used by libdlm:\n- Add ability for userspace to check the version of the interface.  libdlm\n  can now adapt to different versions of the kernel interface.\n- Increase the size of the flags passed in a lock request so all possible\n  flags can be used from userspace.\n- Add an opaque \"xid\" value for each lock.  This \"transaction id\" will be\n  used later to associate locks with each other during deadlock detection.\n- Add a \"timeout\" value for each lock.  This is used along with the\n  DLM_LKF_TIMEOUT flag.\n\nAlso, remove a fragment of unused code in device_read().\n\nThis patch requires updating libdlm which is backward compatible with\nolder kernels.\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": "85e86edf951a8a39954c0ba1edbe4a58827dcd5c",
      "tree": "0d605cdea61d8301c20a87784456a660aba89017",
      "parents": [
        "916297aad5de2363dccd531873eda55d4d6afb57"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri May 18 08:58:15 2007 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jul 09 08:22:31 2007 +0100"
      },
      "message": "[DLM] block scand during recovery [1/6]\n\nDon\u0027t let dlm_scand run during recovery since it may try to do a resource\ndirectory removal while the directory nodes are changing.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "72c2be776bd6eec5186e316e6d9dd4aab78d314d",
      "tree": "378338f229887375efbb3388068a148227b72b23",
      "parents": [
        "8499137d4ef1829281e04838113b6b09a0bf1269"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Mar 30 15:06:16 2007 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 01 09:11:12 2007 +0100"
      },
      "message": "[DLM] interface for purge (2/2)\n\nAdd code to accept purge commands from userland.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "a345da3e8f28ff69e1b14df78f7ddc6e7b78b726",
      "tree": "a1aa40c1aae01064b64b953c9b4a16180dd82be9",
      "parents": [
        "15d00c0b91ca776b51b5ab04f79ab35b06670d30"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Aug 18 11:54:25 2006 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Aug 21 09:50:09 2006 -0400"
      },
      "message": "[DLM] dump rsb and locks on assert\n\nIntroduce new function dlm_dump_rsb() to call within assertions instead of\ndlm_print_rsb().  The new function dumps info about all locks on the rsb\nin addition to rsb details.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n"
    },
    {
      "commit": "597d0cae0f99f62501e229bed50e8149604015bb",
      "tree": "b6cab09ff6fe2246740848164c0a52d5c03136a0",
      "parents": [
        "2eb168ca94aba3bcae350ad9b31870955174a218"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jul 12 16:44:04 2006 -0500"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Jul 13 09:25:34 2006 -0400"
      },
      "message": "[DLM] dlm: user locks\n\nThis changes the way the dlm handles user locks.  The core dlm is now\naware of user locks so they can be dealt with more efficiently.  There is\nno more dlm_device module which previously managed its own duplicate copy\nof every user lock.\n\nSigned-off-by: Patrick Caulfield \u003cpcaulfie@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\n\n"
    },
    {
      "commit": "97a35d1e5fab9ff8de27814082b78b2fc9ad94f0",
      "tree": "551025da17641ccc4df7378da2bb94cedfb2482e",
      "parents": [
        "d2d7b8a2a756fb520792ca3db3abdeed9214ae5b"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue May 02 13:34:03 2006 -0400"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Tue May 02 13:34:03 2006 -0400"
      },
      "message": "[DLM] fix grant_after_purge softlockup\n\nIn dlm_grant_after_purge() we were holding a hash table read_lock while\ncalling put_rsb() which potentially removes the rsb from the hash table,\ntaking the same lock in write.  Fix this by flagging rsb\u0027s ahead of time\nthat have been purged.  Then iteratively read_lock the hash table, find a\nflagged rsb, unlock, process rsb.\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"
    }
  ]
}
