)]}'
{
  "log": [
    {
      "commit": "f70cb33b9c270f4f1a7f28327e7d35dbf1a6fc40",
      "tree": "92de2b2813bfcc99edff8e1eea2922227b86ca0d",
      "parents": [
        "a4d935bd97b9ccf40aa0ec59646612df8ed46640"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Tue Aug 03 23:34:16 2010 +0200"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 05 14:23:45 2010 -0500"
      },
      "message": "fs/dlm: Drop unnecessary null test\n\nhlist_for_each_entry binds its first argument to a non-null value, and thus\nany null test on the value of that argument is superfluous.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\niterator I;\nexpression x,E,E1,E2;\nstatement S,S1,S2;\n@@\n\nI(x,...) { \u003c...\n- (x !\u003d NULL) \u0026\u0026\n  E\n  ...\u003e }\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "a4d935bd97b9ccf40aa0ec59646612df8ed46640",
      "tree": "b54f1179cb88227193fb7eeb278e82297fc68667",
      "parents": [
        "cdd854bc42b5e6c79bbbc40c6600d995ffe6e747"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Mon Jul 26 17:19:19 2010 +0800"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 05 14:22:01 2010 -0500"
      },
      "message": "dlm: use genl_register_family_with_ops()\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "89d799d008710e048ee14df4f4e5441e9f4d5d50",
      "tree": "76d6d11a5168e6062d04c64ce88c9d7a7e50e583",
      "parents": [
        "99fb19d49ecbeb390e023f58867c227a15f422f7"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Mar 25 14:23:13 2010 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Apr 30 14:52:51 2010 -0500"
      },
      "message": "dlm: fix ast ordering for user locks\n\nCommit 7fe2b3190b8b299409f13cf3a6f85c2bd371f8bb fixed possible\nmisordering of completion asts (casts) and blocking asts (basts)\nfor kernel locks.  This patch does the same for locks taken by\nuser space applications.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "99fb19d49ecbeb390e023f58867c227a15f422f7",
      "tree": "80560a57aa2b588ceaff2f65073c250c3bb317a1",
      "parents": [
        "be1066bbcd443a65df312fdecea7e4959adedb45"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Mar 22 15:03:54 2010 +0300"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Apr 30 14:52:28 2010 -0500"
      },
      "message": "dlm: cleanup remove unused code\n\nSmatch complains because \"lkb\" is never NULL.  Looking at it, the original\ncode actually adds the new element to the end of the list fine, so we can\njust get rid of the if condition.  This code is four years old and no one\nhas complained so it must work.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "c32da02342b7521df25fefc2ef20aee0e61cf887",
      "tree": "7e38f664fa3e13602c357d37f77d8adcf82fccc2",
      "parents": [
        "dca1d9f6d7ae428c193f32bd3e9a4ca13176648b",
        "318ae2edc3b29216abd8a2510f3f80b764f06858"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 12 16:04:50 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 12 16:04:50 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (56 commits)\n  doc: fix typo in comment explaining rb_tree usage\n  Remove fs/ntfs/ChangeLog\n  doc: fix console doc typo\n  doc: cpuset: Update the cpuset flag file\n  Fix of spelling in arch/sparc/kernel/leon_kernel.c no longer needed\n  Remove drivers/parport/ChangeLog\n  Remove drivers/char/ChangeLog\n  doc: typo - Table 1-2 should refer to \"status\", not \"statm\"\n  tree-wide: fix typos \"ass?o[sc]iac?te\" -\u003e \"associate\" in comments\n  No need to patch AMD-provided drivers/gpu/drm/radeon/atombios.h\n  devres/irq: Fix devm_irq_match comment\n  Remove reference to kthread_create_on_cpu\n  tree-wide: Assorted spelling fixes\n  tree-wide: fix \u0027lenght\u0027 typo in comments and code\n  drm/kms: fix spelling in error message\n  doc: capitalization and other minor fixes in pnp doc\n  devres: typo fix s/dev/devm/\n  Remove redundant trailing semicolons from macros\n  fix typo \"definetly\" -\u003e \"definitely\" in comment\n  tree-wide: s/widht/width/g typo in comments\n  ...\n\nFix trivial conflict in Documentation/laptops/00-INDEX\n"
    },
    {
      "commit": "318ae2edc3b29216abd8a2510f3f80b764f06858",
      "tree": "ce595adde342f57f379d277b25e4dd206988a052",
      "parents": [
        "25cf84cf377c0aae5dbcf937ea89bc7893db5176",
        "3e58974027b04e84f68b964ef368a6cd758e2f84"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\tDocumentation/filesystems/proc.txt\n\tarch/arm/mach-u300/include/mach/debug-macro.S\n\tdrivers/net/qlge/qlge_ethtool.c\n\tdrivers/net/qlge/qlge_main.c\n\tdrivers/net/typhoon.c\n"
    },
    {
      "commit": "52cf25d0ab7f78eeecc59ac652ed5090f69b619e",
      "tree": "031d1ffb3890bd69c0260c864c512e0be62ac05c",
      "parents": [
        "6c1733aca0b48db4d0e660d54976a1cca25b5eaf"
      ],
      "author": {
        "name": "Emese Revfy",
        "email": "re.emese@gmail.com",
        "time": "Tue Jan 19 02:58:23 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "Driver core: Constify struct sysfs_ops in struct kobj_type\n\nConstify struct sysfs_ops.\n\nThis is part of the ops structure constification\neffort started by Arjan van de Ven et al.\n\nBenefits of this constification:\n\n * prevents modification of data that is shared\n   (referenced) by many other structure instances\n   at runtime\n\n * detects/prevents accidental (but not intentional)\n   modification attempts on archs that enforce\n   read-only kernel data at runtime\n\n * potentially better optimized code as the compiler\n   can assume that the const data cannot be changed\n\n * the compiler/linker move const data into .rodata\n   and therefore exclude them from false sharing\n\nSigned-off-by: Emese Revfy \u003cre.emese@gmail.com\u003e\nAcked-by: David Teigland \u003cteigland@redhat.com\u003e\nAcked-by: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b6fa8796b2da0390e9f4115e8789a01004fc1c9b",
      "tree": "5bc3d1cea581b04d837c6cdb0fb5cd015f53f6fc",
      "parents": [
        "b4a5d4bc377e49239374f266f0a0e2772c29749c"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Feb 25 12:20:57 2010 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Feb 26 12:15:54 2010 -0600"
      },
      "message": "dlm: use bastmode in debugfs output\n\nThe bast mode that appears in the debugfs output should be\nuseful on both master and process nodes.  lkb_highbast is\ncurrently printed, and is only useful on the master node.\nlkb_bastmode is only useful on the process node.  This\npatch sets lkb_bastmode on the master node as well, and\nuses that value in the debugfs print.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "b4a5d4bc377e49239374f266f0a0e2772c29749c",
      "tree": "dcee73fd29feb448edc4800a56214dd6266993ab",
      "parents": [
        "cf6620acc0f6fac57968aafef79ab372bdcf6157"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Feb 17 09:41:34 2010 +0000"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Feb 26 12:14:25 2010 -0600"
      },
      "message": "dlm: Send lockspace name with uevents\n\nAlthough it is possible to get this information from the path,\nits much easier to provide the lockspace as a seperate env\nvariable.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cf6620acc0f6fac57968aafef79ab372bdcf6157",
      "tree": "fae381f0ffc0f13124f6138de9843140fc816cb3",
      "parents": [
        "7fe2b3190b8b299409f13cf3a6f85c2bd371f8bb"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 24 11:59:23 2010 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Feb 26 11:57:37 2010 -0600"
      },
      "message": "dlm: send reply before bast\n\nWhen the lock master processes a successful operation (request,\nconvert, cancel, or unlock), it will process the effects of the\nchange before sending the reply for the operation.  The \"effects\"\nof the operation are:\n\n- blocking callbacks (basts) for any newly granted locks\n- waiting or converting locks that can now be granted\n\nThe cast is queued on the local node when the reply from the lock\nmaster is received.  This means that a lock holder can receive a\nbast for a lock mode that is doesn\u0027t yet know has been granted.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "7fe2b3190b8b299409f13cf3a6f85c2bd371f8bb",
      "tree": "36af13880f834cd1c7fd92200ebcc33c64d9edf0",
      "parents": [
        "b0483e78e5c4c9871fc5541875b3bc006846d46b"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 24 11:08:18 2010 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 24 11:46:53 2010 -0600"
      },
      "message": "dlm: fix ordering of bast and cast\n\nWhen both blocking and completion callbacks are queued for lock,\nthe dlm would always deliver the completion callback (cast) first.\nIn some cases the blocking callback (bast) is queued before the\ncast, though, and should be delivered first.  This patch keeps\ntrack of the order in which they were queued and delivers them\nin that order.\n\nThis patch also keeps track of the granted mode in the last cast\nand eliminates the following bast if the bast mode is compatible\nwith the preceding cast mode.  This happens when a remotely mastered\nlock is demoted, e.g. EX-\u003eNL, in which case the local node queues\na cast immediately after sending the demote message.  In this way\na cast can be queued for a mode, e.g. NL, that makes an in-transit\nbast extraneous.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "c41b20e721ea4f6f20f66a66e7f0c3c97a2ca9c2",
      "tree": "92cd1b2b1cdb871530bb07bbbcbfeaffe1170830",
      "parents": [
        "a089377f29d3af0f62f3bdc6db0c5042513fc3f3"
      ],
      "author": {
        "name": "Adam Buchbinder",
        "email": "adam.buchbinder@gmail.com",
        "time": "Fri Dec 11 16:35:39 2009 -0500"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Feb 04 11:55:45 2010 +0100"
      },
      "message": "Fix misspellings of \"truly\" in comments.\n\nSome comments misspell \"truly\"; this fixes them. No code changes.\n\nSigned-off-by: Adam Buchbinder \u003cadam.buchbinder@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "02412f49f6a7e35753d9af49d92662fb562fc9fa",
      "tree": "ecf4c573ff8944227ca04e342e97ab17493cda5c",
      "parents": [
        "4515c3069da5bfb6f08dbfca499464b4cbdfcb50",
        "573c24c4af6664ffcd9aa7ba617a35fde2b95534"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:33:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 10 09:33:59 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: always use GFP_NOFS\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "573c24c4af6664ffcd9aa7ba617a35fde2b95534",
      "tree": "9222c0c8921fda5b842c2d1007d911d47bd4fe7c",
      "parents": [
        "a8a8a669ea13d792296737505adc43ccacf3a648"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Nov 30 16:34:43 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Nov 30 16:34:43 2009 -0600"
      },
      "message": "dlm: always use GFP_NOFS\n\nReplace all GFP_KERNEL and ls_allocation with GFP_NOFS.\nls_allocation would be GFP_KERNEL for userland lockspaces\nand GFP_NOFS for file system lockspaces.\n\nIt was discovered that any lockspaces on the system can\naffect all others by triggering memory reclaim in the\nfile system which could in turn call back into the dlm\nto acquire locks, deadlocking dlm threads that were\nshared by all lockspaces, like dlm_recv.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "6861f350785bf476c2d4e3b9cb69ee36b78df2fc",
      "tree": "99cb1eb3cb5ac2084077fae9eec7e1f3e9d2cdc5",
      "parents": [
        "04bedd79a7037ee7af816b06c60c738144475c4a"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Sep 24 15:58:23 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Sep 30 12:19:44 2009 -0500"
      },
      "message": "dlm: fix socket fd translation\n\nThe code to set up sctp sockets was not using the sockfd_lookup()\nand sockfd_put() routines to translate an fd to a socket.  The\ndirect fget and fput calls were resulting in error messages from\nalloc_fd().\n\nAlso clean up two log messages and remove a third, related to\nsetting up sctp associations.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "04bedd79a7037ee7af816b06c60c738144475c4a",
      "tree": "e68657f25eda860333a5dc37eb64181e1c686f35",
      "parents": [
        "9c1fe834c1bd7725b411055c66886b64c928083d"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Sep 18 14:31:47 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Sep 30 12:19:44 2009 -0500"
      },
      "message": "dlm: fix lowcomms_connect_node for sctp\n\nThe recently added dlm_lowcomms_connect_node() from\n391fbdc5d527149578490db2f1619951d91f3561 does not work\nwhen using SCTP instead of TCP.  The sctp connection code\nhas nothing to do without data to send.  Check for no data\nin the sctp connection code and do nothing instead of\ntriggering a BUG.  Also have connect_node() do nothing\nwhen the protocol is sctp.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "88e9d34c727883d7d6f02cf1475b3ec98b8480c7",
      "tree": "475f544536d52739e0929e7727cab5124e855a06",
      "parents": [
        "b7ed698cc9d556306a4088c238e2ea9311ea2cb3"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 22 16:43:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "seq_file: constify seq_operations\n\nMake all seq_operations structs const, to help mitigate against\nrevectoring user-triggerable function pointers.\n\nThis is derived from the grsecurity patch, although generated from scratch\nbecause it\u0027s simpler than extracting the changes from there.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ce00289875a853280985aee671258795b77e089",
      "tree": "c88e4ec62cad3e83dadb49dddbcde81a2808a3c1",
      "parents": [
        "2511817cf9b1cf2506f47e20bb128e2da231c150",
        "1329e3f2c898cfabb6ed236d3fb8c1725197af53"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:19:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 18 09:19:10 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: use kernel_sendpage\n  dlm: fix connection close handling\n  dlm: fix double-release of socket in error exit path\n"
    },
    {
      "commit": "1329e3f2c898cfabb6ed236d3fb8c1725197af53",
      "tree": "f4ca0178fb5f3f874e0493ac67fb196d326a40d7",
      "parents": [
        "063c4c99630c0b06afad080d2a18bda64172c1a2"
      ],
      "author": {
        "name": "Paolo Bonzini",
        "email": "bonzini@gnu.org",
        "time": "Mon Aug 24 13:18:04 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Aug 24 13:18:04 2009 -0500"
      },
      "message": "dlm: use kernel_sendpage\n\nUsing kernel_sendpage() is cleaner and safer than following\nsock-\u003eops ourselves.\n\nSigned-off-by: Paolo Bonzini \u003cbonzini@gnu.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "063c4c99630c0b06afad080d2a18bda64172c1a2",
      "tree": "5ceca753d0366f9af6e2afbc9151494a6cfcac7d",
      "parents": [
        "b5711b8e5a437ca7d35321d19de568b4f76a7739"
      ],
      "author": {
        "name": "Lars Marowsky-Bree",
        "email": "lmb@suse.de",
        "time": "Tue Aug 11 16:18:23 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Aug 24 13:13:56 2009 -0500"
      },
      "message": "dlm: fix connection close handling\n\nClosing a connection to a node can create problems if there are\noutstanding messages for that node.  The problems include dlm_send\nspinning attempting to reconnect, or BUG from tcp_connect_to_sock()\nattempting to use a partially closed connection.\n\nTo cleanly close a connection, we now first attempt to send any pending\nmessages, cancel any remaining workqueue work, and flag the connection\nas closed to avoid reconnect attempts.\n\nSigned-off-by: Lars Marowsky-Bree \u003clmb@suse.de\u003e\nSigned-off-by: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "b5711b8e5a437ca7d35321d19de568b4f76a7739",
      "tree": "945c9f712833ed2810e3179ab626fb974e438996",
      "parents": [
        "df4ecf1524c7793de3121b2d4e5fc6bcc0da3bfb"
      ],
      "author": {
        "name": "Casey Dahlin",
        "email": "cdahlin@redhat.com",
        "time": "Tue Jul 28 12:29:05 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Aug 18 15:09:24 2009 -0500"
      },
      "message": "dlm: fix double-release of socket in error exit path\n\nThe last correction to the tcp_connect_to_sock error exit path,\ncommit a89d63a159b1ba5833be2bef00adf8ad8caac8be, can free an already\nfreed socket, due to collision with a previous (incomplete) attempt\nto fix the same issue, commit 311f6fc77c51926dbdfbeab0a5d88d70f01fa3f4.\n\nSigned-off-by: Casey Dahlin \u003ccdahlin@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "aa11d958d1a6572eda08214d7c6a735804fe48a5",
      "tree": "d025b05270ad1e010660d17eeadc6ac3c1abbd7d",
      "parents": [
        "07f6642ee9418e962e54cbc07471cfe2e559c568",
        "9799218ae36910af50f002a5db1802d576fffb43"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tarch/microblaze/include/asm/socket.h\n"
    },
    {
      "commit": "a89d63a159b1ba5833be2bef00adf8ad8caac8be",
      "tree": "520fa4131a549d1956c2a938e8e5a682e1ef5dab",
      "parents": [
        "c78a87d0a1fc885dfdbe21fd5e07787691dfb068"
      ],
      "author": {
        "name": "Casey Dahlin",
        "email": "cdahlin@redhat.com",
        "time": "Tue Jul 14 12:17:51 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Jul 14 12:28:43 2009 -0500"
      },
      "message": "dlm: free socket in error exit path\n\nIn the tcp_connect_to_sock() error exit path, the socket\nallocated at the top of the function was not being freed.\n\nSigned-off-by: Casey Dahlin \u003ccdahlin@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "134e63756d5f3d0f7604dfcca847b09d1b14fd66",
      "tree": "d2b5eab085d90cde0a4c0136a118800ca72b76ad",
      "parents": [
        "11a28d373ed2539a110d56419457e2e7db221ac7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 09:51:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 12 14:03:27 2009 -0700"
      },
      "message": "genetlink: make netns aware\n\nThis makes generic netlink network namespace aware. No\ngeneric netlink families except for the controller family\nare made namespace aware, they need to be checked one by\none and then set the family-\u003enetnsok member to true.\n\nA new function genlmsg_multicast_netns() is introduced to\nallow sending a multicast message in a given namespace,\nfor example when it applies to an object that lives in\nthat namespace, a new function genlmsg_multicast_allns()\nto send a message to all network namespaces (for objects\nthat do not have an associated netns).\n\nThe function genlmsg_multicast() is changed to multicast\nthe message in just init_net, which is currently correct\nfor all generic netlink families since they only work in\ninit_net right now. Some will later want to work in all\nnet namespaces because they do not care about the netns\nat all -- those will have to be converted to use one of\nthe new functions genlmsg_multicast_allns() or\ngenlmsg_multicast_netns() whenever they are made netns\naware in some way.\n\nAfter this patch families can easily decide whether or\nnot they should be available in all net namespaces. Many\ngenl families us it for objects not related to networking\nand should therefore be available in all namespaces, but\nthat will have to be done on a per family basis.\n\nNote that this doesn\u0027t touch on the checkpoint/restart\nproblem where network namespaces could be used, genl\nfamilies and multicast groups are numbered globally and\nI see no easy way of changing that, especially since it\nmust be possible to multicast to all network namespaces\nfor those families that do not care about netns.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c78a87d0a1fc885dfdbe21fd5e07787691dfb068",
      "tree": "73f6056f87cd9183e04f3b9f6a4245876cf0cb23",
      "parents": [
        "a566a6b11c86147fe9fc9db7ab15f9eecca3e862"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Jun 18 13:20:24 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Jun 18 13:42:42 2009 -0500"
      },
      "message": "dlm: fix plock use-after-free\n\nFix a regression from the original addition of nfs lock support\n586759f03e2e9031ac5589912a51a909ed53c30a.  When a synchronous\n(non-nfs) plock completes, the waiting thread will wake up and\nfree the op struct.  This races with the user thread in\ndev_write() which goes on to read the op\u0027s callback field to\ncheck if the lock is async and needs a callback.  This check\ncan happen on the freed op.  The fix is to note the callback\nvalue before the op can be freed.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "a566a6b11c86147fe9fc9db7ab15f9eecca3e862",
      "tree": "3583e7e0ac8d557610df16054fd96df98062edc5",
      "parents": [
        "65795efbd380a832ae508b04dba8f8e53f0b84d9"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Mon Jun 15 08:26:48 2009 +0100"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jun 17 11:31:32 2009 -0500"
      },
      "message": "dlm: Fix uninitialised variable warning in lock.c\n\n  CC [M]  fs/dlm/lock.o\nfs/dlm/lock.c: In function ‘find_rsb’:\nfs/dlm/lock.c:438: warning: ‘r’ may be used uninitialized in this function\n\nSince r is used on the error path to set r_ret, set it to NULL.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "748285ccf7ea76d3d76d0d5f2945ad6fb91f5329",
      "tree": "aeb56a0e18c2f54acccb65e5b6e8ac63f53dfc44",
      "parents": [
        "391fbdc5d527149578490db2f1619951d91f3561"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri May 15 10:50:57 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri May 15 11:24:59 2009 -0500"
      },
      "message": "dlm: use more NOFS allocation\n\nChange some GFP_KERNEL allocations to use either GFP_NOFS or\nls_allocation (when available) which the fs sets to GFP_NOFS.\nThe point is to prevent allocations from going back into the\ncluster fs in places where that might lead to deadlock.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "391fbdc5d527149578490db2f1619951d91f3561",
      "tree": "98b84ba8cd459293a232fd148cef0886f976bf19",
      "parents": [
        "8511a2728ab82cab398e39d019f5cf1246021c1c"
      ],
      "author": {
        "name": "Christine Caulfield",
        "email": "ccaulfie@redhat.com",
        "time": "Thu May 07 10:54:16 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri May 15 09:34:12 2009 -0500"
      },
      "message": "dlm: connect to nodes earlier\n\nMake network connections to other nodes earlier, in the context of\ndlm_recoverd.  This avoids connecting to nodes from dlm_send where we\ntry to avoid allocations which could possibly deadlock if memory reclaim\ngoes into the cluster fs which may try to do a dlm operation.\n\nSigned-off-by: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "8511a2728ab82cab398e39d019f5cf1246021c1c",
      "tree": "c1a99f292e9e56fe05d174be771f00a78c66a9b7",
      "parents": [
        "08ce4c91e44d51bb6c946f2756825a462d53c545"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Apr 08 15:38:43 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu May 07 10:14:42 2009 -0500"
      },
      "message": "dlm: fix use count with multiple joins\n\nWhen a lockspace was joined multiple times, the global dlm\nuse count was incremented when it should not have been.  This\ncaused the global dlm threads to not be stopped when all\nlockspaces were eventually be removed.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "08ce4c91e44d51bb6c946f2756825a462d53c545",
      "tree": "265ece7e5f8848087ebe0c2d986234195eb5f09e",
      "parents": [
        "413f81eba35d6ede9289b0c8a920c013a84fac71"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Tue Apr 07 23:40:39 2009 +0200"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu May 07 10:14:26 2009 -0500"
      },
      "message": "dlm: Make name input parameter of {,dlm_}new_lockspace() const\n\n| fs/gfs2/lock_dlm.c:207: warning: passing argument 1 of \u0027dlm_new_lockspace\u0027 discards qualifiers from pointer target type\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "1fecb1c4b62881e3689ba2dcf93072ae301b597c",
      "tree": "bd0a111ea40bfaa0697e7b0c341660cd970a23a3",
      "parents": [
        "a536e38125fe5da8ed49690f30c30a8f651cf1f5"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Mar 04 11:17:23 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Mar 11 12:23:59 2009 -0500"
      },
      "message": "dlm: fix length calculation in compat code\n\nUsing offsetof() to calculate name length does not work because\nit does not produce consistent results with with structure packing.\nThis caused memcpy to corrupt memory by copying 4 extra bytes off\nthe end of the buffer on 64 bit kernels with 32 bit userspace\n(the only case where this 32/64 compat code is used).\n\nThe fix is to calculate name length directly from the start instead\nof trying to derive it later using count and offsetof.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "a536e38125fe5da8ed49690f30c30a8f651cf1f5",
      "tree": "c63ef3e58e10fbe23366ba557ceca00f69def547",
      "parents": [
        "43279e5376017c40b4be9af5bc79cbb4ef6f53d7"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Feb 27 15:23:28 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Mar 11 12:23:58 2009 -0500"
      },
      "message": "dlm: ignore cancel on granted lock\n\nReturn immediately from dlm_unlock(CANCEL) if the lock is\ngranted and not being converted; there\u0027s nothing to cancel.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "43279e5376017c40b4be9af5bc79cbb4ef6f53d7",
      "tree": "69c2c942ade01c891a47e01696e90f04e3cf94da",
      "parents": [
        "5e9ccc372dc855900c4a75b21286038938e288c7"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 28 14:37:54 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Mar 11 12:23:39 2009 -0500"
      },
      "message": "dlm: clear defunct cancel state\n\nWhen a conversion completes successfully and finds that a cancel\nof the convert is still in progress (which is now a moot point),\npreemptively clear the state associated with outstanding cancel.\nThat state could cause a subsequent conversion to be ignored.\n\nAlso, improve the consistency and content of error and debug\nmessages in this area.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "5e9ccc372dc855900c4a75b21286038938e288c7",
      "tree": "323ac103ab37ba5adfa3dc66ff90ec03c77b7517",
      "parents": [
        "2cf12c0bf261e19d9641d7b8aa220e2651a03289"
      ],
      "author": {
        "name": "Christine Caulfield",
        "email": "ccaulfie@redhat.com",
        "time": "Wed Jan 28 12:57:40 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Mar 11 12:20:58 2009 -0500"
      },
      "message": "dlm: replace idr with hash table for connections\n\nInteger nodeids can be too large for the idr code; use a hash\ntable instead.\n\nSigned-off-by: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "2cf12c0bf261e19d9641d7b8aa220e2651a03289",
      "tree": "352b4de0a7c30ccb390b35c41fd6cfae0fc89434",
      "parents": [
        "44ad532b3277f0cae55bfe0625d3140cf73af450"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Jan 22 13:26:47 2009 -0800"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 28 12:56:07 2009 -0600"
      },
      "message": "dlm: comment typo fixes\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "44ad532b3277f0cae55bfe0625d3140cf73af450",
      "tree": "7a5e7a9082c0be3a717e95fca9b890ec82345d6d",
      "parents": [
        "305a47b17c6efcc0e7b67b0bd41e2c12b7af758b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Jan 22 13:24:49 2009 -0800"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 28 12:56:02 2009 -0600"
      },
      "message": "dlm: use ipv6_addr_copy\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "305a47b17c6efcc0e7b67b0bd41e2c12b7af758b",
      "tree": "610c0b2642815221d57f39371d854d4751596dd5",
      "parents": [
        "152a649b647a8ef47bb74ff9e11850fa6001bedc"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Fri Jan 16 16:21:12 2009 +0000"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 28 12:55:55 2009 -0600"
      },
      "message": "dlm: Change rwlock which is only used in write mode to a spinlock\n\nThe ls_dirtbl[].lock was an rwlock, but since it was only used in write\nmode a spinlock will suffice.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "20d5a39929232a715f29e6cb7e3f0d0c790f41eb",
      "tree": "6662d2a65f470526a8d6ec591b8429a2ca6024fb",
      "parents": [
        "24179f488092267c9a033d7e25ce7a58af50ff79"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Jan 21 11:34:50 2009 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 21 15:28:45 2009 -0600"
      },
      "message": "dlm: initialize file_lock struct in GETLK before copying conflicting lock\n\ndlm_posix_get fills out the relevant fields in the file_lock before\nreturning when there is a lock conflict, but doesn\u0027t clean out any of\nthe other fields in the file_lock.\n\nWhen nfsd does a NFSv4 lockt call, it sets the fl_lmops to\nnfsd_posix_mng_ops before calling the lower fs. When the lock comes back\nafter testing a lock on GFS2, it still has that field set. This confuses\nnfsd into thinking that the file_lock is a nfsd4 lock.\n\nFix this by making DLM reinitialize the file_lock before copying the\nfields from the conflicting lock.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "24179f488092267c9a033d7e25ce7a58af50ff79",
      "tree": "a4f4fc6a038ba8240350a4b47d9a1f405790e78f",
      "parents": [
        "f3b8436ad9a8ad36b3c9fa1fe030c7f38e5d3d0b"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Jan 19 13:13:33 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 21 15:28:45 2009 -0600"
      },
      "message": "dlm: fix plock notify callback to lockd\n\nWe should use the original copy of the file_lock, fl, instead\nof the copy, flc in the lockd notify callback.  The range in flc has\nbeen modified by posix_lock_file(), so it will not match a copy of the\nlock in lockd.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "c7be761a8163d2f1ac0b606c21e4316b7abc5af7",
      "tree": "1687373b56379c1c310f43b1c05ac486c67dec48",
      "parents": [
        "892c4467e335e9050c95e0d8409c136c4dadaca2"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 07 16:50:41 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Jan 08 15:12:39 2009 -0600"
      },
      "message": "dlm: change rsbtbl rwlock to spinlock\n\nThe rwlock is almost always used in write mode, so there\u0027s no reason\nto not use a spinlock instead.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "892c4467e335e9050c95e0d8409c136c4dadaca2",
      "tree": "aa5fda6f6f6db529212980def510edf8810debfc",
      "parents": [
        "238c6d54830c624f34ac9cf123ac04aebfca5013"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Jan 07 16:48:52 2009 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Jan 08 15:12:31 2009 -0600"
      },
      "message": "dlm: fix seq_file usage in debugfs lock dump\n\nThe old code would leak iterators and leave reference counts on\nrsbs because it was ignoring the \"stop\" seq callback.  The code\nfollowed an example that used the seq operations differently.\nThis new code is based on actually understanding how the seq\noperations work.  It also improves things by saving the hash bucket\nin the position to avoid cycling through completed buckets in start.\n\nSiged-off-by: Davd Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "7d8a804c594b61a05c698126165b5dc417d94a0f",
      "tree": "5718ed900d1a8aa7d85eaa02dc27fda8230a688e",
      "parents": [
        "c58bd34d00e04df9a0691732086cf8102b20d907",
        "722d74219ea21223c74e5e894b0afcc5e4ca75a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:02:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:02:09 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: fs/dlm/ast.c: fix warning\n  dlm: add new debugfs entry\n  dlm: add time stamp of blocking callback\n  dlm: change lock time stamping\n  dlm: improve how bast mode handling\n  dlm: remove extra blocking callback check\n  dlm: replace schedule with cond_resched\n  dlm: remove kmap/kunmap\n  dlm: trivial annotation of be16 value\n  dlm: fix up memory allocation flags\n"
    },
    {
      "commit": "722d74219ea21223c74e5e894b0afcc5e4ca75a7",
      "tree": "6a35db4b6e750cf1e1eabe7e15a0ba858baafe26",
      "parents": [
        "d022509d1c54be4918e7fc8f1195ee8c392e9a57"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Dec 23 10:22:56 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:22:56 2008 -0600"
      },
      "message": "dlm: fs/dlm/ast.c: fix warning\n\nfs/dlm/ast.c: In function \u0027dlm_astd\u0027:\nfs/dlm/ast.c:64: warning: \u0027bastmode\u0027 may be used uninitialized in this function\n\nCleans code up.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "d022509d1c54be4918e7fc8f1195ee8c392e9a57",
      "tree": "be27db04228d30674c21f6b550b78c5fb4bd2672",
      "parents": [
        "e3a84ad495d1fddb542e0922160f0194a1361950"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 16 14:53:23 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:18:51 2008 -0600"
      },
      "message": "dlm: add new debugfs entry\n\nThe new debugfs entry dumps all rsb and lkb structures, and includes\na lot more information than has been available before.  This includes\nthe new timestamps added by a previous patch for debugging callback\nissues.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "e3a84ad495d1fddb542e0922160f0194a1361950",
      "tree": "acc2d0c23440b68b1a9b9b048c2d0fae4735303b",
      "parents": [
        "eeda418d8c2646f33f24e9ad33d86c239adc6de7"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 09 14:47:29 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:18:34 2008 -0600"
      },
      "message": "dlm: add time stamp of blocking callback\n\nRecord the time the latest blocking callback was queued for\na lock.  This will be used for debugging in combination with\nlock queue timestamp changes in the previous patch.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "eeda418d8c2646f33f24e9ad33d86c239adc6de7",
      "tree": "fecfb293e62cc043d57535481913b37347006a4c",
      "parents": [
        "fd22a51bcc0b7b76fc729b02316214fd979f9fe1"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 09 14:12:21 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:18:17 2008 -0600"
      },
      "message": "dlm: change lock time stamping\n\nUse ktime instead of jiffies for timestamping lkb\u0027s.  Also stamp the\ntime on every lkb whenever it\u0027s added to a resource queue, instead of\njust stamping locks subject to timeouts.  This will allow us to use\ntimestamps more widely for debugging all locks.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "fd22a51bcc0b7b76fc729b02316214fd979f9fe1",
      "tree": "e23326bb9df7cf0ee76b3b6b61c82364ff0aed78",
      "parents": [
        "03339696314fffb95dafb349b84243358e945ce6"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 09 11:55:46 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:16:46 2008 -0600"
      },
      "message": "dlm: improve how bast mode handling\n\nThe lkb bastmode value is set in the context of processing the\nlock, and read by the dlm_astd thread.  Because it\u0027s accessed\nin these two separate contexts, the writing/reading ought to\nbe done under a lock.  This is simple to do by setting it and\nreading it when the lkb is added to and removed from dlm_astd\u0027s\ncallback list which is properly locked.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "03339696314fffb95dafb349b84243358e945ce6",
      "tree": "4fcdacf43dbe0adaeba79374d54395b5b4f0c035",
      "parents": [
        "d61e9aac96317a43c192f1faabfa95d4d675b7ce"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Dec 08 17:14:10 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:16:32 2008 -0600"
      },
      "message": "dlm: remove extra blocking callback check\n\nJust before delivering a blocking callback (bast), the dlm_astd\nthread checks again that the granted mode of the lkb actually\nblocks the mode requested by the bast.  The idea behind this was\noriginally that the granted mode may have changed since the bast\nwas queued, making the callback now unnecessary.  Reasons for\nremoving this extra check are:\n- dlm_astd doesn\u0027t lock the rsb before reading the lkb grmode, so\n  it\u0027s not technically safe (this removes the long standing FIXME)\n- after running some tests, it doesn\u0027t appear the check ever actually\n  eliminates a bast\n- delivering an unnecessary blocking callback isn\u0027t a bad thing and\n  can happen anyway\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "d61e9aac96317a43c192f1faabfa95d4d675b7ce",
      "tree": "d6e256d8394c4458012c1673ff4d5741d893b87a",
      "parents": [
        "1521848cbb42935a52d11305c054b14461ad061c"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Dec 10 09:31:02 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:16:13 2008 -0600"
      },
      "message": "dlm: replace schedule with cond_resched\n\nThis is a one-liner to use cond_resched() rather than schedule()\nin the ast delivery loop. It should not be necessary to schedule\nevery time, so this will save some cpu time while continuing to\nallow scheduling when required.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "1521848cbb42935a52d11305c054b14461ad061c",
      "tree": "9cdbb97b238a909765f5e94688d70be062f7257d",
      "parents": [
        "cd8e4679bdcf9b54564f2cda2389bd0f0457e12d"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Nov 12 17:00:16 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:16:01 2008 -0600"
      },
      "message": "dlm: remove kmap/kunmap\n\nThe pages used in lowcomms are not highmem, so kmap is not necessary.\n\nCc: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cd8e4679bdcf9b54564f2cda2389bd0f0457e12d",
      "tree": "17d737aa05c526f23d65f1eae937b10a1d1b978d",
      "parents": [
        "d6d7b702a3a1ca50f7ca2bebaa79c80425156bac"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Nov 12 16:28:43 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:15:51 2008 -0600"
      },
      "message": "dlm: trivial annotation of be16 value\n\nfs/dlm/dir.c:419:14: warning: incorrect type in assignment (different base types)\nfs/dlm/dir.c:419:14:    expected unsigned short [unsigned] [addressable] [assigned] [usertype] be_namelen\nfs/dlm/dir.c:419:14:    got restricted __be16 [usertype] \u003cnoident\u003e\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "d6d7b702a3a1ca50f7ca2bebaa79c80425156bac",
      "tree": "58399f82a48ca2a02bea7bdadc14925858a8017a",
      "parents": [
        "58e20d8d344b0ee083febb18c2b021d2427e56ca"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Wed Nov 12 16:49:48 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Dec 23 10:15:40 2008 -0600"
      },
      "message": "dlm: fix up memory allocation flags\n\nUse ls_allocation for memory allocations, which a cluster fs sets to\nGFP_NOFS.  Use GFP_NOFS for allocations when no lockspace struct is\navailable.  Taking dlm locks needs to avoid calling back into the\ncluster fs because write-out can require taking dlm locks.\n\nCc: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "180b65df7ba1e700e28aabfbddbad84b7beebe4b",
      "tree": "2563802614050480f4b85dd7b0559b4aa7d49bc6",
      "parents": [
        "d3f644da909549a4cf0ad27541df342f75158cc0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 25 16:51:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 16:51:45 2008 -0800"
      },
      "message": "fix warning in fs/dlm/netlink.c\n\nthis warning:\n\n  fs/dlm/netlink.c: In function ‘dlm_timeout_warn’:\n  fs/dlm/netlink.c:131: warning: ‘send_skb’ may be used uninitialized in this function\n\ntriggers because GCC does not recognize the (correct) error flow\nbetween prepare_data() and send_skb.\n\nAnnotate it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "278afcbf4fe964230eba67f8fb8235e8b7e63ffb",
      "tree": "64bcfe585256f96f468e29af9961ddf4c2dcc71d",
      "parents": [
        "3edac25f2e8ac8c2a84904c140e1aeb434e73e75"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Nov 13 13:22:34 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Nov 13 13:22:34 2008 -0600"
      },
      "message": "dlm: fix shutdown cleanup\n\nFixes a regression from commit 0f8e0d9a317406612700426fad3efab0b7bbc467,\n\"dlm: allow multiple lockspace creates\".\n\nAn extraneous \u0027else\u0027 slipped into a code fragment being moved from\nrelease_lockspace() to dlm_release_lockspace().  The result of the\nunwanted \u0027else\u0027 is that dlm threads and structures are not stopped\nand cleaned up when the final dlm lockspace is removed.  Trying to\ncreate a new lockspace again afterward will fail with\n\"kmem_cache_create: duplicate cache dlm_conn\" because the cache\nwas not previously destroyed.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "27eccf46491e1f77f9af9bbe0778122ce6882890",
      "tree": "21b5cd7aeb9ce1338a07daf13fd14695c492c89e",
      "parents": [
        "f9f2ed486256f3480e4d499ffd6bf730bc5e6fc6"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Sep 05 08:42:08 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Sep 05 09:51:30 2008 -0500"
      },
      "message": "dlm: choose better identifiers\n\nsparc32:\n\nfs/dlm/config.c:397: error: expected identifier or \u0027(\u0027 before \u0027{\u0027 token\nfs/dlm/config.c: In function \u0027drop_node\u0027:\nfs/dlm/config.c:589: warning: initialization from incompatible pointer type\nfs/dlm/config.c:589: warning: initialization from incompatible pointer type\nfs/dlm/config.c: In function \u0027release_node\u0027:\nfs/dlm/config.c:601: warning: initialization from incompatible pointer type\nfs/dlm/config.c:601: warning: initialization from incompatible pointer type\nfs/dlm/config.c: In function \u0027show_node\u0027:\nfs/dlm/config.c:717: warning: initialization from incompatible pointer type\nfs/dlm/config.c:717: warning: initialization from incompatible pointer type\nfs/dlm/config.c: In function \u0027store_node\u0027:\nfs/dlm/config.c:726: warning: initialization from incompatible pointer type\nfs/dlm/config.c:726: warning: initialization from incompatible pointer type\n\nCc: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "f9f2ed486256f3480e4d499ffd6bf730bc5e6fc6",
      "tree": "adb359d0462f3d99451c15e98a8e4d7796677ddb",
      "parents": [
        "44be6fdf1056b685eb79e53e42bd2d321b085cfc"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Sep 04 12:51:20 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Sep 04 12:55:13 2008 -0500"
      },
      "message": "dlm: remove bkl\n\nBLK from recent pushdown is not needed.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "44be6fdf1056b685eb79e53e42bd2d321b085cfc",
      "tree": "3af8658e3400b5090b78f730591da8e347cde327",
      "parents": [
        "c1dcf65ffc5796bf4ff75c13f448e63b3a416fd6"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 28 11:36:19 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Sep 02 14:32:08 2008 -0500"
      },
      "message": "dlm: fix address compare\n\nCompare only the addr and port fields of sockaddr structures.\nFixes a problem with ipv6 where sin6_scope_id does not match.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "c1dcf65ffc5796bf4ff75c13f448e63b3a416fd6",
      "tree": "0283dcd832fb54758e80f7fb53f8efb331b6321c",
      "parents": [
        "dc68c7ed362a00a48290252573a8eb9f74463c3a"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Aug 18 14:03:25 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 28 11:50:07 2008 -0500"
      },
      "message": "dlm: fix locking of lockspace list in dlm_scand\n\nThe dlm_scand thread needs to lock the list of lockspaces\nwhen going through it.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "dc68c7ed362a00a48290252573a8eb9f74463c3a",
      "tree": "99b8b64ea08d4990373d09e01b7bac2566ad3879",
      "parents": [
        "0f8e0d9a317406612700426fad3efab0b7bbc467"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Aug 18 11:43:30 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 28 11:49:43 2008 -0500"
      },
      "message": "dlm: detect available userspace daemon\n\nIf dlm_controld (the userspace daemon that controls the setup and\nrecovery of the dlm) fails, the kernel should shut down the lockspaces\nin the kernel rather than leaving them running.  This is detected by\nhaving dlm_controld hold a misc device open while running, and if\nthe kernel detects a close while the daemon is still needed, it stops\nthe lockspaces in the kernel.\n\nKnowing that the userspace daemon isn\u0027t running also allows the\nlockspace create/remove routines to avoid waiting on the daemon\nfor join/leave operations.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "0f8e0d9a317406612700426fad3efab0b7bbc467",
      "tree": "b4ed35afeab36615e50d5c7928a6199780fd2fca",
      "parents": [
        "4c246edd2550304df5b766cc841584b2bb058843"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Aug 06 13:30:24 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Aug 28 11:49:15 2008 -0500"
      },
      "message": "dlm: allow multiple lockspace creates\n\nAdd a count for lockspace create and release so that create can\nbe called multiple times to use the lockspace from different places.\nAlso add the new flag DLM_LSFL_NEWEXCL to create a lockspace with\nthe previous behavior of returning -EEXIST if the lockspace already\nexists.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "51409340d240dabe66adb49f645588c3a802d055",
      "tree": "a513f2ca81f3638b2608064ef8383b0af86e846a",
      "parents": [
        "cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Jul 31 09:31:53 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Aug 13 12:47:36 2008 -0500"
      },
      "message": "dlm: rename structs\n\nAdd a dlm_ prefix to the struct names in config.c.  This resolves a\nconflict with struct node in particular, when include/linux/node.h\nhappens to be included.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3",
      "tree": "817fd390f15904ef0b14b22b4b8c7a2055514337",
      "parents": [
        "30a2f3c60a84092c8084dfe788b710f8d0768cd4"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue Jul 29 15:21:19 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Aug 13 12:47:36 2008 -0500"
      },
      "message": "dlm: add missing kfrees\n\nA couple of unlikely error conditions were missing a kfree on the error\nexit path.\n\nReported-by: Juha Leppanen \u003cjuha_motorsportcom@luukku.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "3988ba0708e98b4bafc9034aa476775520bee708",
      "tree": "8c706018fef444bc16b33fa8208e78cabf993a1f",
      "parents": [
        "d9089c296bdd82e6c1b7f82d04c11b5decde75e7",
        "18c60c0a3b16fc7d6a55497a228602ad8509f838"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:46:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:46:00 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: fix uninitialized variable for search_rsb_list callers\n  dlm: release socket on error\n  dlm: fix basts for granted CW waiting PR/CW\n  dlm: check for null in device_write\n"
    },
    {
      "commit": "bde74e4bc64415b142e556a34d295a52a1b7da9d",
      "tree": "b6bd229307ccab9b1ad03ffbc75f1f9960cd49e4",
      "parents": [
        "cc77b1521d06be07c9bb1a4a3e1f775dcaa15093"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Fri Jul 25 01:48:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:47 2008 -0700"
      },
      "message": "locks: add special return value for asynchronous locks\n\nUse a special error value FILE_LOCK_DEFERRED to mean that a locking\noperation returned asynchronously.  This is returned by\n\n  posix_lock_file() for sleeping locks to mean that the lock has been\n  queued on the block list, and will be woken up when it might become\n  available and needs to be retried (either fl_lmops-\u003efl_notify() is\n  called or fl_wait is woken up).\n\n  f_op-\u003elock() to mean either the above, or that the filesystem will\n  call back with fl_lmops-\u003efl_grant() when the result of the locking\n  operation is known.  The filesystem can do this for sleeping as well\n  as non-sleeping locks.\n\nThis is to make sure, that return values of -EAGAIN and -EINPROGRESS by\nfilesystems are not mistaken to mean an asynchronous locking.\n\nThis also makes error handling in fs/locks.c and lockd/svclock.c slightly\ncleaner.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a6795e9ebb420d87af43789174689af0d66d1d35",
      "tree": "fb2a86ad010015fdd311f3b7f6ef30f60c14b8f7",
      "parents": [
        "f89ab8619e5320cc9c2576f5f8dcbaf6c0ba3950"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 17 15:21:29 2008 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 17 15:21:29 2008 -0700"
      },
      "message": "configfs: Allow -\u003emake_item() and -\u003emake_group() to return detailed errors.\n\nThe configfs operations -\u003emake_item() and -\u003emake_group() currently\nreturn a new item/group.  A return of NULL signifies an error.  Because\nof this, -ENOMEM is the only return code bubbled up the stack.\n\nMultiple folks have requested the ability to return specific error codes\nwhen these operations fail.  This patch adds that ability by changing the\n-\u003emake_item/group() ops to return ERR_PTR() values.  These errors are\nbubbled up appropriately.  NULL returns are changed to -ENOMEM for\ncompatibility.\n\nAlso updated are the in-kernel users of configfs.\n\nThis is a rework of reverted commit 11c3b79218390a139f2d474ee1e983a672d5839a.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "f89ab8619e5320cc9c2576f5f8dcbaf6c0ba3950",
      "tree": "e703050b232c76de7cb25afd63a2b4dd885c4bb9",
      "parents": [
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 17 14:53:48 2008 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 17 14:53:48 2008 -0700"
      },
      "message": "Revert \"configfs: Allow -\u003emake_item() and -\u003emake_group() to return detailed errors.\"\n\nThis reverts commit 11c3b79218390a139f2d474ee1e983a672d5839a.  The code\nwill move to PTR_ERR().\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "5b664cb235e97afbf34db9c4d77f08ebd725335e",
      "tree": "518540649c38342209790de8e0b575ac1a6fa722",
      "parents": [
        "f39548a6ad1dbdfaab552419386ec5bb1d76fa0d",
        "c0420ad2ca514551ca086510b0e7d17a05c70492"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 17 10:55:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 17 10:55:51 2008 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:\n  [PATCH] ocfs2: fix oops in mmap_truncate testing\n  configfs: call drop_link() to cleanup after create_link() failure\n  configfs: Allow -\u003emake_item() and -\u003emake_group() to return detailed errors.\n  configfs: Fix failing mkdir() making racing rmdir() fail\n  configfs: Fix deadlock with racing rmdir() and rename()\n  configfs: Make configfs_new_dirent() return error code instead of NULL\n  configfs: Protect configfs_dirent s_links list mutations\n  configfs: Introduce configfs_dirent_lock\n  ocfs2: Don\u0027t snprintf() without a format.\n  ocfs2: Fix CONFIG_OCFS2_DEBUG_FS #ifdefs\n  ocfs2/net: Silence build warnings on sparc64\n  ocfs2: Handle error during journal load\n  ocfs2: Silence an error message in ocfs2_file_aio_read()\n  ocfs2: use simple_read_from_buffer()\n  ocfs2: fix printk format warnings with OCFS2_FS_STATS\u003dn\n  [PATCH 2/2] ocfs2: Instrument fs cluster locks\n  [PATCH 1/2] ocfs2: Add CONFIG_OCFS2_FS_STATS config option\n"
    },
    {
      "commit": "2fceef397f9880b212a74c418290ce69e7ac00eb",
      "tree": "d9cc09ab992825ef7fede4a688103503e3caf655",
      "parents": [
        "feae1ef116ed381625d3731c5ae4f4ebcb3fa302",
        "bce7f793daec3e65ec5c5705d2457b81fe7b5725"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Mon Jul 14 15:29:34 2008 -0600"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Mon Jul 14 15:29:34 2008 -0600"
      },
      "message": "Merge commit \u0027v2.6.26\u0027 into bkl-removal\n"
    },
    {
      "commit": "11c3b79218390a139f2d474ee1e983a672d5839a",
      "tree": "03fa1a4927f2d9856ee45a64d522424478058b6f",
      "parents": [
        "6d8344baee99402de58b5fa5dfea197242955c15"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jun 12 14:00:18 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jul 14 13:57:16 2008 -0700"
      },
      "message": "configfs: Allow -\u003emake_item() and -\u003emake_group() to return detailed errors.\n\nThe configfs operations -\u003emake_item() and -\u003emake_group() currently\nreturn a new item/group.  A return of NULL signifies an error.  Because\nof this, -ENOMEM is the only return code bubbled up the stack.\n\nMultiple folks have requested the ability to return specific error codes\nwhen these operations fail.  This patch adds that ability by changing the\n-\u003emake_item/group() ops to return an int.\n\nAlso updated are the in-kernel users of configfs.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "18c60c0a3b16fc7d6a55497a228602ad8509f838",
      "tree": "f963e66eddd4d527790a3d691cbb45e492cd6b0b",
      "parents": [
        "311f6fc77c51926dbdfbeab0a5d88d70f01fa3f4"
      ],
      "author": {
        "name": "Benny Halevy",
        "email": "bhalevy@panasas.com",
        "time": "Mon Jun 30 19:59:14 2008 +0300"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Jul 14 13:56:59 2008 -0500"
      },
      "message": "dlm: fix uninitialized variable for search_rsb_list callers\n\ngcc 4.3.0 correctly emits the following warning.\nsearch_rsb_list does not *r_ret if no dlm_rsb is found\nand _search_rsb may pass the uninitialized value upstream\non the error path when both calls to search_rsb_list\nreturn non-zero error.\n\nThe fix sets *r_ret to NULL on search_rsb_list\u0027s not-found path.\n\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "311f6fc77c51926dbdfbeab0a5d88d70f01fa3f4",
      "tree": "bb5c3ca66a104642ac97814509015e60e5aea7d3",
      "parents": [
        "329fc4c37212588091b64bdf09afaeb18642aae2"
      ],
      "author": {
        "name": "Masatake YAMATO",
        "email": "yamato@redhat.com",
        "time": "Fri Jun 27 08:35:03 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Jul 14 13:56:59 2008 -0500"
      },
      "message": "dlm: release socket on error\n\nIt seems that `sock\u0027 allocated by sock_create_kern in\ntcp_connect_to_sock() of dlm/fs/lowcomms.c is not released if\ndlm_nodeid_to_addr an error.\n\nAcked-by: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nSigned-off-by: Masatake YAMATO \u003cyamato@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "329fc4c37212588091b64bdf09afaeb18642aae2",
      "tree": "1df9d0ed055afb2f46669142472f7c88554a93bc",
      "parents": [
        "254ae43ab8d7877c980fca3636624e0777a70fa4"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue May 20 12:18:10 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Jul 14 13:56:59 2008 -0500"
      },
      "message": "dlm: fix basts for granted CW waiting PR/CW\n\nThe fix in commit 3650925893469ccb03dbcc6a440c5d363350f591 was addressing\nthe case of a granted PR lock with waiting PR and CW locks.  It\u0027s a\nspecial case that requires forcing a CW bast.  However, that forced CW\nbast was incorrectly applying to a second condition where the granted\nlock was CW.  So, the holder of a CW lock could receive an extraneous CW\nbast instead of a PR bast.  This fix narrows the original special case to\nwhat was intended.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "254ae43ab8d7877c980fca3636624e0777a70fa4",
      "tree": "2a68101ba1c053d167a3f5effed6c33ab1043972",
      "parents": [
        "bce7f793daec3e65ec5c5705d2457b81fe7b5725"
      ],
      "author": {
        "name": "Masatake YAMATO",
        "email": "yamato@redhat.com",
        "time": "Wed May 28 14:45:10 2008 +0900"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Jul 14 13:56:59 2008 -0500"
      },
      "message": "dlm: check for null in device_write\n\nIf `device_write\u0027 method is called via \"dlm-control\",\nfile-\u003eprivate_data is NULL. (See ctl_device_open() in\nuser.c. ) Through proc-\u003eflags is read.\n\nSigned-off-by: Masatake YAMATO \u003cyamato@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "514bcc66d4072a221a8dfd341a4006385a441918",
      "tree": "5d2252cf2b6bd5345dd3671873785680c1b61b4c",
      "parents": [
        "009228dfb641ca7e4315ab0d0d55465747331025"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue May 20 19:15:48 2008 +0200"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Fri Jun 20 14:05:56 2008 -0600"
      },
      "message": "dlm-user: BKL pushdown\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "817d10bad56f2fdfa321b4a864a21295226b123a",
      "tree": "a8072d7f82e04a88ea37f474661e33f45c112e15",
      "parents": [
        "0035a4b14931eb62a5f8a7762284c18e7ab14289"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Tue May 13 14:28:26 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon May 19 15:37:27 2008 -0500"
      },
      "message": "dlm: fix plock dev_write return value\n\nThe return value on writes to the plock device should be\nthe number of bytes written.  It was returning 0 instead\nwhen an nfs lock callback was involved.\n\nReported-by: Nathan Straz \u003cnstraz@redhat.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "0035a4b14931eb62a5f8a7762284c18e7ab14289",
      "tree": "460232289d1c47eeacdcdf14d29c8763c2fca39f",
      "parents": [
        "88ad23195e4609cef73b6fcf2b4c08aaaef33204"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Sun May 11 22:01:29 2008 +0200"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon May 19 15:37:27 2008 -0500"
      },
      "message": "dlm: tcp_connect_to_sock should check for -EINVAL, not EINVAL\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: cluster-devel@redhat.com\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "88ad23195e4609cef73b6fcf2b4c08aaaef33204",
      "tree": "744a3c9a990930236d175606afdfb331c3a0aabe",
      "parents": [
        "7a936ce71eed7b887b8a0d6c54dd8a9072f71c9f"
      ],
      "author": {
        "name": "Leonardo Potenza",
        "email": "lpotenza@inwind.it",
        "time": "Sun May 11 19:15:34 2008 +0200"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon May 19 15:37:27 2008 -0500"
      },
      "message": "dlm: section mismatch warning fix\n\nRemoved the section mismatch message:\nWARNING: fs/dlm/dlm.o(.init.text+0x132): Section mismatch in reference from the function init_module() to the function .exit.text:dlm_netlink_exit()\n\nSince dlm_netlink_exit() is called in the init_dlm() error handling,\nthe __exit annotation has been removed.\n\nSigned-off-by: Leonardo Potenza \u003clpotenza@inwind.it\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "7a936ce71eed7b887b8a0d6c54dd8a9072f71c9f",
      "tree": "9d4d691a54a584e6991e8dfb9a9551536b0cb787",
      "parents": [
        "860da5e578c25d1ab4528c0d1ad13f9969e3490f"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias@kaehlcke.net",
        "time": "Mon May 12 10:04:51 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon May 19 15:37:27 2008 -0500"
      },
      "message": "dlm: convert connections_lock in a mutex\n\nThe semaphore connections_lock is used as a mutex.  Convert it to the mutex\nAPI.\n\nSigned-off-by: Matthias Kaehlcke \u003cmatthias@kaehlcke.net\u003e\nCc: Christine Caulfield \u003cccaulfie@redhat.com\u003e\nCc: David Teigland \u003cteigland@redhat.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "8e24eea728068bbeb6a3c500b848f883a20bf225",
      "tree": "93e79da649723e2766237505b22725fec395f139",
      "parents": [
        "530b6412786d7f83592c1a8e2445541ed73fca76"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Apr 30 00:55:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:54 2008 -0700"
      },
      "message": "fs: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "03b883840c630c7b571690577809754739ac773f",
      "tree": "aeec0581accf5e19360205e21dd25a220b4a0e54",
      "parents": [
        "0d07a15bdb5a4ea6271b6e874d307c48151ef546",
        "c1c76743e98346eb052b707f0e054377a09441d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 22 13:44:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 22 13:44:23 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: linux/{dlm,dlm_device}.h: cleanup for userspace\n  dlm: common max length definitions\n  dlm: move plock code from gfs2\n  dlm: recover nodes that are removed and re-added\n  dlm: save master info after failed no-queue request\n  dlm: make dlm_print_rsb() static\n  dlm: match signedness between dlm_config_info and cluster_set\n"
    },
    {
      "commit": "3d564fa3472d36cd6aa70514c37b8bbbec5b17ab",
      "tree": "1033829746e0440e3b603381b9ed640a0af1ec2a",
      "parents": [
        "2402211a8389282fd2942fad4511f02c0eeeffc5"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 14 14:06:29 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 21 11:22:29 2008 -0500"
      },
      "message": "dlm: common max length definitions\n\nAdd central definitions for max lockspace name length and max resource\nname length.  The lack of central definitions has resulted in scattered\nprivate definitions which we can now clean up, including an unused one\nin dlm_device.h.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "2402211a8389282fd2942fad4511f02c0eeeffc5",
      "tree": "853e5818a29816e642689d7e793a845d2519711b",
      "parents": [
        "d44e0fc704143624b3e88fbf8fbcfda7a83fd299"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Fri Mar 14 15:09:15 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 21 11:22:28 2008 -0500"
      },
      "message": "dlm: move plock code from gfs2\n\nMove the code that handles cluster posix locks from gfs2 into the dlm\nso that it can be used by both gfs2 and ocfs2.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "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": "761b9d3ffc953c24ceb55d8e12ff7e02b17e0484",
      "tree": "07dcab128761847c008b589bf367715f2fcd60b0",
      "parents": [
        "170e19ab2900b7c959d7a0e627fd12f383efcfa1"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Feb 21 11:25:42 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 21 11:18:01 2008 -0500"
      },
      "message": "dlm: save master info after failed no-queue request\n\nWhen a NOQUEUE request fails, the rsb res_master field is unnecessarily\nreset to -1, instead of leaving the valid master setting in place.  We\nwant to save the looked-up master values while the rsb is on the \"toss\nlist\" so that another lookup can be avoided if the rsb is soon reused.\nThe fix is to simply leave res_master value alone.\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": "5416b704aef0b7350073421f4f6ac1a21bc213e7",
      "tree": "8868300550da5c2746d6595a073ee9c8da6d58d3",
      "parents": [
        "3925e6fc1f774048404fdd910b0345b06c699eb4"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Feb 13 16:54:29 2008 -0800"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Apr 21 11:18:01 2008 -0500"
      },
      "message": "dlm: match signedness between dlm_config_info and cluster_set\n\ncluster_set is only called from the macro CLUSTER_ATTR which defines read/write\naccess functions.  Make the signedness match to avoid sparse warnings every time\nCLUSTER_ATTR is used (lines 149-159) all of the form:\n\nfs/dlm/config.c:149:1: warning: incorrect type in argument 3 (different signedness)\nfs/dlm/config.c:149:1:    expected unsigned int *info_field\nfs/dlm/config.c:149:1:    got int extern [toplevel] *\u003cnoident\u003e\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cb688371e27880d86c42323826846d1cd7caad8f",
      "tree": "1be4f5bb437e86a547365a94aed5ade23adb09da",
      "parents": [
        "d3135846f6c1858dbad6ccb780a42e6c98953e6d"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Feb 26 09:59:26 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:16:44 2008 -0400"
      },
      "message": "fs: Remove unnecessary inclusions of asm/semaphore.h\n\nNone of these files use any of the functionality promised by\nasm/semaphore.h.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "599e0f584de8ff16b1428e2e16118757619f1d1b",
      "tree": "2c7cc24266290200cedf732b8bca28cc1b266583",
      "parents": [
        "e80af3a8dbbbf431b2070cc760699f01c5a6ac69"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Feb 21 13:39:57 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Thu Feb 21 15:19:54 2008 -0600"
      },
      "message": "dlm: fix rcom_names message to self\n\nThe recent patch to validate data lengths in rcom_names messages\nfailed to account for fake messages a node directs to itself before\never sending it.  In this case we need to fill in the message length\nin the header for the validation code to use.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "30727174b6273c67fa96fb818fe5bdde1ad70e5c",
      "tree": "807a66e114555caf3dc07fc818d2dac2c62dff47",
      "parents": [
        "d292c0cc489fa642799494bddbd7c94d11f7bbc1"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Sat Feb 02 01:53:46 2008 +0800"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 06 23:41:22 2008 -0600"
      },
      "message": "dlm: add __init and __exit marks to init and exit functions\n\nit moves 365 bytes from .text to .init.text, and 30 bytes from .text to\n.exit.text, saves memory.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "d292c0cc489fa642799494bddbd7c94d11f7bbc1",
      "tree": "5999df751f987dc59ff052ed07fc7715c00898cc",
      "parents": [
        "e5dae548b0b5397e070de793be925cfc5813ad95"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 06 23:27:04 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 06 23:27:04 2008 -0600"
      },
      "message": "dlm: eliminate astparam type casting\n\nPut lkb_astparam in a union with a dlm_user_args pointer to\neliminate a lot of type casting.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "e5dae548b0b5397e070de793be925cfc5813ad95",
      "tree": "5ad4c94cbeab745fc1bac3426423c405971c6796",
      "parents": [
        "cb79f1998d89821a4dbac47f59a46ee3fbbf3c61"
      ],
      "author": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 06 00:35:45 2008 -0600"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Wed Feb 06 00:35:45 2008 -0600"
      },
      "message": "dlm: proper types for asts and basts\n\nUse proper types for ast and bast functions, and use\nconsistent type for ast param.\n\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cb79f1998d89821a4dbac47f59a46ee3fbbf3c61",
      "tree": "1d1f953a43d1b3aa6bd9a786637ab2c4d2c7ab19",
      "parents": [
        "043b19cdc081f586a8f4e1c93ce6c03b63c26284"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 26 16:49:44 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:30:19 2008 -0600"
      },
      "message": "dlm: dlm/user.c input validation fixes\n\na) in device_write(): add sentinel NUL byte, making sure that lspace.name will\nbe NUL-terminated\nb) in compat_input() be keep it simple about the amounts of data we are copying.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "043b19cdc081f586a8f4e1c93ce6c03b63c26284",
      "tree": "11101abb0a5716c51ddae9bd7009718030efe510",
      "parents": [
        "a9cc9159281d44754f621f75d4efad0076b29db4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 26 00:03:59 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:30:19 2008 -0600"
      },
      "message": "dlm: fix dlm_dir_lookup() handling of too long names\n\n... those can happen and BUG() from DLM_ASSERT() in allocate_direntry() is\nnot a good way to handle them.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "a9cc9159281d44754f621f75d4efad0076b29db4",
      "tree": "8ee69182283251b06ed725dcd1fa0ed3c05423ec",
      "parents": [
        "ef58bccab7c7ef34451aa4ceea39545ef126b666"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 26 00:02:29 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:29:13 2008 -0600"
      },
      "message": "dlm: fix overflows when copying from -\u003em_extra to lvb\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "ef58bccab7c7ef34451aa4ceea39545ef126b666",
      "tree": "56cdbdeba5db2cdca3e3f96a7124a4f83c56e791",
      "parents": [
        "a5dd06313dbcec3a2c8a5e4a6f3ddb2a8fc72ec9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 25 23:22:26 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:26:31 2008 -0600"
      },
      "message": "dlm: make find_rsb() fail gracefully when namelen is too large\n\nWe *can* get there from receive_request() and dlm_recover_master_copy()\nwith namelen too large if incoming request is invalid; BUG() from\nDLM_ASSERT() in allocate_rsb() is a bit excessive reaction to that\nand in case of dlm_recover_master_copy() we would actually oops before\nthat while calculating hash of up to 64Kb worth of data - with data\nactually being 64 _bytes_ in kmalloc()\u0027ed struct.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "a5dd06313dbcec3a2c8a5e4a6f3ddb2a8fc72ec9",
      "tree": "50927394b52a4fa2d01cb9300cd49c3bb2f014c2",
      "parents": [
        "ae773d0b74bf2244887a6d0504372748381ab9c7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 25 20:22:22 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:25:58 2008 -0600"
      },
      "message": "dlm: receive_rcom_lock_args() overflow check\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "ae773d0b74bf2244887a6d0504372748381ab9c7",
      "tree": "43862e0dea715b3d07c4a456e35e4b67525c973b",
      "parents": [
        "cd9df1aac346f1c7f592739d092ff710c27bbcde"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 25 19:55:09 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:25:09 2008 -0600"
      },
      "message": "dlm: verify that places expecting rcom_lock have packet long enough\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    },
    {
      "commit": "cd9df1aac346f1c7f592739d092ff710c27bbcde",
      "tree": "cc7eadf1e209742b89cb0a064495dee9f1fc6c98",
      "parents": [
        "02ed16b64dc5b7a4f78476bdb64da9bbf88d84b3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 25 04:08:09 2008 -0500"
      },
      "committer": {
        "name": "David Teigland",
        "email": "teigland@redhat.com",
        "time": "Mon Feb 04 01:24:52 2008 -0600"
      },
      "message": "dlm: validate data in dlm_recover_directory()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David Teigland \u003cteigland@redhat.com\u003e\n"
    }
  ],
  "next": "02ed16b64dc5b7a4f78476bdb64da9bbf88d84b3"
}
