)]}'
{
  "log": [
    {
      "commit": "328e0f125bf41f4f33f684db22015f92cb44fe56",
      "tree": "364b7292db9d7072130080589b579e3fdadf23e6",
      "parents": [
        "518a4d53b2985451a08cb4e5b79deacfe151a38a"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 19 14:37:47 2012 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Nov 09 14:11:43 2012 +0100"
      },
      "message": "drbd: Broadcast sync progress no more often than once per second\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "eb12010e9af119c84e6b2214064a98681027e0e3",
      "tree": "47fba4ebbf2a2a54137362b9d1e489a8cfcd3086",
      "parents": [
        "427c0434fc52f15bd762ddc6611e874df6cc5b8d"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Aug 01 12:46:20 2012 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Nov 09 14:05:50 2012 +0100"
      },
      "message": "drbd: disambiguation, s/ERR_DISCARD/ERR_DISCARD_IMPOSSIBLE/\n\nIf for some reason (typically \"split-brained\" cluster manager)\ndrbd replica data has diverged, we can chose a victim,\nand reconnect using \"--discard-my-data\", causing the victim\nto become sync-target, fetching all changed blocks from the peer.\n\nIf we are Primary, we are potentially in use, and we refuse to\n\"roll back\" changes to the data below the page cache and other users.\n\nRename the error symbol for this to ERR_DISCARD_IMPOSSIBLE.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "58ffa580a748dd16b1e5ab260bea39cdbd1e94ef",
      "tree": "4155bcde6d49f50545bcb1312b6470c64e823d72",
      "parents": [
        "970fbde1f1ebae0c85bbaed3de83684a58d60fad"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Jul 26 14:09:49 2012 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Nov 09 14:05:32 2012 +0100"
      },
      "message": "drbd: introduce stop-sector to online verify\n\nWe now can schedule only a specific range of sectors for online verify,\nor interrupt a running verify without interrupting the connection.\n\nHad to bump the protocol version differently, we are now 101.\nAdded verify_can_do_stop_sector() { protocol \u003e\u003d 97 \u0026\u0026 protocol !\u003d 100; }\n\nAlso, the return value convention for worker callbacks has changed,\nwe returned \"true/false\" for \"keep the connection up\" in 8.3,\nwe return 0 for success and \u003c\u003d for failure in 8.4.\nAffected: receive_state()\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "9a51ab1c1b3c1e21f076cdd571bbe6ca7d1b504c",
      "tree": "863ba573f9a803d5f64979dae566a89ea22bbe5f",
      "parents": [
        "26ec92871be1e6bd48d0be9ab38ee1ebbeea49f1"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Feb 20 21:53:28 2012 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:58:31 2012 +0100"
      },
      "message": "drbd: New disk option al-updates\n\nBy disabling al-updates one might increase performace. The price for\nthat is that in case a crashed primary (that had al-updates disabled)\nis reintegraded, it will receive a full-resync instead of a bitmap\nbased resync.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "d60de03a6694302b691bdf858ede9cbdfb7112d6",
      "tree": "030c1b5a84f5f23f9bad023b042391163be9bed5",
      "parents": [
        "380207d08e7c4d1b19c0323777278992b4fbf9d6"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 17 10:12:31 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:58:11 2012 +0100"
      },
      "message": "drbd: Load balancing method: striping\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "380207d08e7c4d1b19c0323777278992b4fbf9d6",
      "tree": "3a35f3543810eb2a7d87f15dd62a8fe8e13aad76",
      "parents": [
        "d10b4ea32bf2b77a3d56a20992cd549978df7b38"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Nov 11 12:31:20 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:58:10 2012 +0100"
      },
      "message": "drbd: Load balancing of read requests\n\nNew config option for the disk secition \"read-balancing\", with\nthe values: prefer-local, prefer-remote, round-robin, when-congested-remote.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "d5d7ebd42250620a6da2a8f6943c024391433488",
      "tree": "1025faf28644b437a845f21606a1c2db83b54a3c",
      "parents": [
        "cdfda633d235028e9b27381dedb65416409e8729"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Jul 05 20:59:26 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:57:51 2012 +0100"
      },
      "message": "drbd: on attach, enforce clean meta data\n\nDetection of unclean shutdown has moved into user space.\n\nThe kernel code will, whenever it updates the meta data, mark it as\n\"unclean\", and will refuse to attach to such unclean meta data.\n\n\"drbdadm up\" now schedules \"drbdmeta apply-al\", which will apply\nthe activity log to the bitmap, and/or reinitialize it, if necessary,\nas well as set a \"clean\" indicator flag.\n\nThis moves a bit code out of kernel space.\nAs a side effect, it also prevents some 8.3 module from accidentally\nignoring the 8.4 style activity log, if someone should downgrade,\nwhether on purpose, or accidentally because he changed kernel versions\nwithout providing an 8.4 for the new kernel, and the new kernel comes\nwith in-tree 8.3.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "789c1b626cb490acb36cf481b45040b324f60fde",
      "tree": "d6e987d28dd362362205682f5b4e2337bc92a067",
      "parents": [
        "67b58bf723b083d4776cd7c9959246ef46c0d36f"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Mon Jun 06 16:16:44 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:57:44 2012 +0100"
      },
      "message": "drbd: Use the terminology suggested by the command names in the source code and messages\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "67b58bf723b083d4776cd7c9959246ef46c0d36f",
      "tree": "1fe119fabea180061e31531271cd4cfb3dd5fc1c",
      "parents": [
        "fc251d5c2466413fdd6851e6c3f63e9851bf9d84"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Jun 06 15:36:04 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:57:44 2012 +0100"
      },
      "message": "drbd: spelling fix: too small\n\nIt is not \"to small\", but \"too small\".\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "dcb20d1a8e7d9602e52a9b673ae4d7f746d2cbb2",
      "tree": "34e9330fab46adf21f9ddf02b8cbea4b2050dbde",
      "parents": [
        "c5482bbd9607bf38cbc952eacaa429e6ba3160a0"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon May 16 14:30:24 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:55:52 2012 +0100"
      },
      "message": "drbd: Refuse to change network options online when...\n\n* the peer does not speak protocol_version 100 and the\n  user wants to change one of:\n    - wire_protocol\n    - two_primaries\n    - integrity_alg\n\n* the user wants to remove the allow_two_primaries flag\n  when there are two primaries\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "95f8efd08bcce65df994049a292b94e56c7ada67",
      "tree": "a4a943aea52b65adc4ddabf736a30f66f83f6ed0",
      "parents": [
        "69ef82dea4c34e4a0541fc3f415b0fef70fe12b0"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Thu May 12 11:15:34 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:55:51 2012 +0100"
      },
      "message": "drbd: Fix the upper limit of resync-after\n\nThe 32-bit resync_after netlink field takes a device minor number as\nparameter, which is no longer limited to 255.  We cannot statically\nverify which device numbers are valid, so set the ummer limit to the\nhighest possible signed 32-bit integer.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "b032b6fa3528d6eed972db32257cb316a66e0dac",
      "tree": "c5152232ea0074339e69e5b2fef9fa9bfd7229e6",
      "parents": [
        "cd64397c0b7be5050c4127aba242c5d0ae6acaed"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Apr 13 18:16:10 2011 -0700"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:45:18 2012 +0100"
      },
      "message": "drbd: Allow online change of replication protocol only with agreed_pv \u003e\u003d 100\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "0c8e36d9b843be56e4e43d4ef3c3eb6a97205599",
      "tree": "5f593c0b3c4a4052382fa2d23dff87281786e2ad",
      "parents": [
        "e658983af6e62304be785cd6b0ae756723057395"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Wed Mar 30 16:00:17 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:45:10 2012 +0100"
      },
      "message": "drbd: Introduce protocol version 100 headers\n\nThe 8 byte header finally becomes too small. With the protocol 100 header we\nhave 16 bit for the volume number, proper 32 bit for the data length, and\n32 bit for further extensions in the future.\n\nPrevious versions of drbd are using version 80 headers for all packets\nshort enough for protocol 80.  They support both header versions in\nworker context, but only version 80 headers in asynchronous context.\nFor backwards compatibility, continue to use version 80 headers for\nshort packets before protocol version 100.\n\nFrom protocol version 100 on, use the same header version for all\npackets.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "cb703454a283d8dd5599e928eeea30367ca18874",
      "tree": "5e4c7553bc4dbbc3804c6ed6359a355a18b44159",
      "parents": [
        "a02d124091ac7178c24a1318e5dcc4ae7fe6c8e1"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 24 11:03:07 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Nov 08 16:44:53 2012 +0100"
      },
      "message": "drbd: Converted drbd_try_outdate_peer() from mdev to tconn\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "047e95e259e81d7b97eca10cda0aa93082531ac1",
      "tree": "bc069b550dee8bc44226182ce753491ba55b5ae6",
      "parents": [
        "40cbf085f584840847e3f945c10c75f7d36237fc"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Mar 16 14:43:36 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Sun Nov 04 00:16:31 2012 +0100"
      },
      "message": "drbd: Allow volumes to become primary only on one side\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "3b98c0c2093d1f92e5b7394ae0b13d142e7ef880",
      "tree": "43d24df845b0c63ca0689b1aa094623ae0f999d0",
      "parents": [
        "ec2c35ac1ea288f5c931e32452ecea50068e8450"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Mar 07 12:49:34 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Sun Nov 04 00:16:17 2012 +0100"
      },
      "message": "drbd: switch configuration interface from connector to genetlink\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "774b305518a68a50df4f479bcf79da2add724e6e",
      "tree": "19b0322feebe2aed18cee0eb7ffa3f5e0ad3addc",
      "parents": [
        "80883197da071239ed9e76bd3b9d8c9c5e19e4e6"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Feb 22 02:07:03 2011 -0500"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 14 16:48:00 2011 +0200"
      },
      "message": "drbd: Implemented new commands to create/delete connections/minors\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "1aba4d7fcfabe999e0c99683b394aa76d5c42842",
      "tree": "f7d2cbff4aba926e8d7134bc68ed4904989b5b6b",
      "parents": [
        "2f5cdd0b2cf7a4099faa7e53ba0a29ddf0ddf950"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Feb 21 15:38:08 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 14 16:47:59 2011 +0200"
      },
      "message": "drbd: Preparing the connector interface to operator on connections\n\nUp to now it only operated on minor numbers. Now it can work also\non named connections.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "7ad651b52218eea3f9280dbb353dfe0c42742d85",
      "tree": "52206f862eb6d1999252522e181d833673348ff7",
      "parents": [
        "46a15bc3ec425b546d140581c28192ab7877ddc4"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Feb 21 13:21:03 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 14 16:47:46 2011 +0200"
      },
      "message": "drbd: new on-disk activity log transaction format\n\nUse a new on-disk transaction format for the activity log, which allows\nfor multiple changes to the active set per transaction.\n\nUsing 4k transaction blocks, we can now get rid of the work-around code\nto deal with devices not supporting 512 byte logical block size.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "fd340c12c98b57ec0751ebb317057eee41be0c3d",
      "tree": "8c6ded46522a064d422dfecc9583629532662326",
      "parents": [
        "c012949a4084a9f91654121d28f199ef408cb9d7"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jan 19 16:57:39 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Sep 28 10:23:03 2011 +0200"
      },
      "message": "drbd: Use new header layout\n\nThe new header layout will only be used if the peer supports\nit of course.\n\nFor the first packet and the handshake packet the old (h80)\nlayout is used for compatibility reasons.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "ca9bc12b90fbc4e2b1f81360f63842c9da54bb3c",
      "tree": "485b1492c0d131d01502c31eda0c68842343ae87",
      "parents": [
        "9a8e77530fa7059044114bcf1a897a470ec21bc9"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Tue Jan 11 13:47:24 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Aug 25 14:57:56 2011 +0200"
      },
      "message": "drbd: Get rid of BE_DRBD_MAGIC and BE_DRBD_MAGIC_BIG\n\nConverting the constants happens at compile time.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "24c4830c8ec3cbc904d84c213126a35f41a4e455",
      "tree": "3d232dd4e56ec477929a2537ef683b4f19528fb2",
      "parents": [
        "9a0d9d0389ef769e4b01abf50fcc11407706270b"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bvanassche@acm.org",
        "time": "Sat May 21 18:32:29 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue May 24 10:21:29 2011 +0200"
      },
      "message": "drbd: Fix spelling\n\nFound these with the help of ispell -l.\n\nSigned-off-by: Bart Van Assche \u003cbvanassche@acm.org\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\n"
    },
    {
      "commit": "9a0d9d0389ef769e4b01abf50fcc11407706270b",
      "tree": "e766296ff1e684a0a081a6961ec664a4131faf74",
      "parents": [
        "99432fcc528d7a5ac8494a4c07ad4726670c96e2"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon May 02 11:51:31 2011 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue May 24 10:14:32 2011 +0200"
      },
      "message": "drbd: fix schedule in atomic\n\nAn administrative detach used to request a state change directly to D_DISKLESS,\nfirst suspending IO to avoid the last put_ldev() occuring from an endio handler,\npotentially in irq context.\n\nThis is not enough on the receiving side (typically secondary), we may miss\nsome peer_req on the way to local disk, which then may do the last put_ldev()\nfrom their drbd_peer_request_endio().\n\nThis patch makes the detach always go through the intermediate D_FAILED state.\nWe may consider to rename it D_DETACHING.\n\nAlternative approach would be to create yet an other work item to be scheduled\non the worker, do the destructor work from there, and get the timing right.\n\nmanually picked commit 564040f from the drbd 8.4 branch.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "c5a91619793d444e5103ec5841045bf878718398",
      "tree": "3a1457aaaba954610b8bd55f27b8f4e9997bf936",
      "parents": [
        "fdda6544ad4d3284246e717b7108f7f497b45295"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Tue Jan 25 17:33:38 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:48:15 2011 +0100"
      },
      "message": "drbd: Remove unused function atodb_endio()\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "cd88d030d41a9b0100fd5fee872024e6ebc8b276",
      "tree": "c107e24c88fee112ebc85c966573ad51074aed7b",
      "parents": [
        "79a30d2d71f7be862de93228fe9b919ef664af52"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jan 20 11:46:41 2011 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:47:58 2011 +0100"
      },
      "message": "drbd: Provide hints with the error message when clearing the sync pause flag\n\nWhen the user clears the sync-pause flag, and sync stays in pause\nstate, give hints to the user, why it still is in pause state.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "c8b325632f0e5ffdaeca3d1f3be77c9399316a40",
      "tree": "3b86d7a6a9b180e05a78c89d9a83ca1b93aa5cbe",
      "parents": [
        "116676ca621a862a8124969772f4dd61c8b40eee"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Wed Dec 08 01:06:16 2010 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:36:18 2011 +0100"
      },
      "message": "drbd: Rename enum drbd_state_ret_codes to enum drbd_state_rv\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "116676ca621a862a8124969772f4dd61c8b40eee",
      "tree": "f02da6846ac3726f800fe80cc08a5f6da396c6a9",
      "parents": [
        "0cf9d27e38447efe5e5edce155a66a782a5aac4a"
      ],
      "author": {
        "name": "Andreas Gruenbacher",
        "email": "agruen@linbit.com",
        "time": "Wed Dec 08 13:33:11 2010 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:36:16 2011 +0100"
      },
      "message": "drbd: Rename enum drbd_ret_codes to enum drbd_ret_code\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "73a01a18b9c28a0fab1131ece5b0a9bc00a879b8",
      "tree": "36ed1ea31bd18def918717906a58355a77b39cba",
      "parents": [
        "67531718d8f1259f01ab84c2aa25f7b03c7afd46"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Oct 27 14:33:00 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:34:48 2011 +0100"
      },
      "message": "drbd: New packet for Ahead/Behind mode: P_OUT_OF_SYNC\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "67531718d8f1259f01ab84c2aa25f7b03c7afd46",
      "tree": "6f76323440f8ce3793b5d5f1a19808207f38db5b",
      "parents": [
        "422028b1ca4c07995af82a18abced022ff4c296c"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Oct 27 12:21:30 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:34:46 2011 +0100"
      },
      "message": "drbd: Implemented two new connection states Ahead/Behind\n\nIn this connection mode, the ahead node no longer replicates\napplication IO. The behind\u0027s disk becomes out dated.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "422028b1ca4c07995af82a18abced022ff4c296c",
      "tree": "87583c3aab3d8b39c5210de800d5eae79941dc25",
      "parents": [
        "759fbdfba66e620aceb3e73167e6003d1b8b0b0b"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Oct 27 11:12:07 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 10 11:34:45 2011 +0100"
      },
      "message": "drbd: New configuration parameters for dealing with network congestion\n\nnet {\n    on_congestion {block|pull-ahead|disconnect};\n    congestion-fill {sectors};\n    congestion-extents {al-extents};\n}\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "8825f7c3e5c7b251b49fc594658a96f59417ee16",
      "tree": "051e2d3c2c05e89c573297feeae315e541dc30d8",
      "parents": [
        "fb2c7a10eec051317ff091b2cb2d73c5ecd98c19"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 21 17:21:19 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:55:22 2010 +0200"
      },
      "message": "drbd: Silenced an assert\n\nThat assertion\u0027s condition needed adjustment for today\u0027s semantics\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "5dbfe7aedf54aa7f62fd659e34371d4ea0e7bffe",
      "tree": "1ef5c18551186ba593010cbde9756e27b5d54685",
      "parents": [
        "ac7241211ded714873e8dc6d2f7c98ae7ea2cc30"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Fri Oct 15 09:52:46 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 15 14:06:53 2010 +0200"
      },
      "message": "drbd: add race-breaker to drbd_go_diskless\n\nThis adds a necessary race breaker to these commits:\n    drbd: fix for possible deadlock on IO error during resync\n    drbd: drop wrong debug asserts, fix recently introduced race\n\nWhat we do is get a refcount, check the state, then depending on the\nstate and the requested minimum disk state, either hold it (success),\nor give it back immediately (failed \"try lock\").\n\nSome code paths (flushing of drbd metadata) may still grab and hold a\nrefcount even if we are D_FAILED (application IO won\u0027t).\nSo even if we hit local_cnt \u003d\u003d 0 once after being D_FAILED,\nwe still need to wait for that again after we changed to D_DISKLESS.\nOnce local_cnt reaches 0 while we are D_DISKLESS, we can be sure that\nno one will look at the protected members anymore, so only then is it\nsafe to free them.\n\nWe cannot easily convert to standard locking primitives here, as we want\nto be able to use it in atomic context (we always do a \"try lock\"),\nas well as hold references for a \"long time\" (from IO submission to\ncompletion callback).\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "22cc37a943832c948808884604ec6f5ff2594c1d",
      "tree": "5c0784f0010421c45c4fd847dac8692d03f399e6",
      "parents": [
        "af85e8e83d160f72a10e4467852646ac08614260"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Sep 14 20:40:41 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:49 2010 +0200"
      },
      "message": "drbd: fix unlikely access after free and list corruption\n\nVarious cleanup paths have been incomplete, for the very unlikely case\nthat we cannot allocate enough bios from process context when submitting\non behalf of the peer or resync process.\n\nNever observed.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "fb22c402ffdf61dd121795b5809de587185d5240",
      "tree": "7c3de5410eff21b3a3b105dc63d5e2034f2c7c63",
      "parents": [
        "78db89287ce0f146a1f2a019a0b243ea4557caac"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Sep 08 23:20:21 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:40 2010 +0200"
      },
      "message": "drbd: Track the reasons to suspend IO in dedicated state bits\n\nThere are three ways to get IO suspended:\n\n * Loss of any access to data\n * Fence-peer-handler running\n * User requested to suspend IO\n\nTrack those in different bits, so that one condition clearing its\nstate bit does not interfere with the other two conditions.\n\nOnly when the user resumes IO he overrules all three bits.\n\nThe fact is hidden from the user, he sees only a single suspend\nbit.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "0b70a13dac014ec9274640b9e945bde493ba365e",
      "tree": "cf771e2f8018c0b59bc14fbf00c5c9cdc9caed7c",
      "parents": [
        "204bba9965c4cc175bf5bc65ddd19889e9085c72"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Aug 20 13:36:10 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:23 2010 +0200"
      },
      "message": "drbd: Sending of big packets, for payloads from 64KByte to 4GByte\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "47ff2d0a8e7ce87fed180729e8341f650bf585c8",
      "tree": "a8b9fb2f76ebf70090328dba7c57144d8352d9e5",
      "parents": [
        "265be2d09853d425ad14a61cda0ca63345613d0c"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Jun 18 13:56:57 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:53:42 2010 +0200"
      },
      "message": "drbd: Do not allow a fencing-policy of resource-and-stonith with protocol A\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "265be2d09853d425ad14a61cda0ca63345613d0c",
      "tree": "cc2f419d8aaa41fd088f3d24ca134c4d7f51aa64",
      "parents": [
        "905cd7d8ac9b18e1f122b90dbebe1246b1c364fd"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon May 31 10:14:17 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:52:53 2010 +0200"
      },
      "message": "drbd: Finished the \"on-no-data-accessible suspend-io;\" functionality\n\nWhen no data is accessible (no connection to the peer, nor a local disk)\nallow the user to select to freeze all IO operations instead of getting\nIO errors.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "e7f52dfb4f378ea1bbfd4476f4e8ba42f5fb332c",
      "tree": "1f31f9c3fd2f3c9150d08c9429b3c2a36f15d5f5",
      "parents": [
        "85f4cc17a62c3ac9edeaf120cdae7261df458053"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Aug 03 20:20:20 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:53:57 2010 +0200"
      },
      "message": "drbd: revert \"delay probes\", feature is being re-implemented differently\n\nIt was a now abandoned attempt to throttle resync bandwidth\nbased on the delay it causes on the bulk data socket.\nIt has no userbase yet, and has been disabled by\n9173465ccb51c09cc3102a10af93e9f469a0af6f already.\nThis removes the now unused code.\n\nThe basic feature, namely using up \"idle\" bandwith\nof network and disk IO subsystem, with minimal impact\nto application IO, is being reimplemented differently.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "dc66c74de6f4238020db3e2041d4aca5c5b3e9bc",
      "tree": "8df9cdd2f1672217a210e624f4613744e57450e0",
      "parents": [
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jun 02 14:31:29 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Jun 14 12:19:41 2010 +0200"
      },
      "message": "drbd: Fixed a race between disk-attach and unexpected state changes\n\nThis was a very hard to trigger race condition.\n\nIf we got a state packet from the peer, after drbd_nl_disk() has\nalready changed the disk state to D_NEGOTIATING but\nafter_state_ch() was not yet run by the worker, then receive_state()\nmight called drbd_sync_handshake(), which in turn crashed\nwhen accessing p_uuid.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "099c5c310e9744bd0654881bb55c137051228e56",
      "tree": "819e89bc3187d231cd0c82025ff8924152357099",
      "parents": [
        "2a0ab2cd73c26835e635ed4e3868f983519048fb"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu May 27 13:46:35 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Jun 01 11:12:28 2010 +0200"
      },
      "message": "Preparing 8.3.8rc2\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "3d42b3612891baecf709d93f28655a6882a65d41",
      "tree": "2110b2846d73d7a3e470a6b813a63fa5e5295526",
      "parents": [
        "4e23a59ed1c5f12e14f7899855f8379b3d42e578"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu May 20 12:14:54 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 21 21:12:01 2010 +0200"
      },
      "message": "drbd: This is now equivalent to drbd release 8.3.8rc1\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6495d2c6d04f4c45411fdb1b40527c24015f39d6",
      "tree": "cb7262a4b4750bb0fba045f492ffedbf8eef6701",
      "parents": [
        "b4ee79dac3bddc468e21cae0deb00b80ec4ac051"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Mar 24 16:07:04 2010 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue May 18 01:17:47 2010 +0200"
      },
      "message": "drbd: Implemented the --assume-clean option for drbdsetup resize\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "cf14c2e987ba0a09a7b09be2ecd55af0bc9c17b4",
      "tree": "3e403ecc535e3860ab5835343fd428c77cad9f5c",
      "parents": [
        "8a03ae2a5baed3df09e5643615bdd853fc142a09"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Feb 02 21:03:50 2010 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Mar 11 15:51:23 2010 +0100"
      },
      "message": "drbd: --dry-run option for drbdsetup net ( drbdadm -- --dry-run connect \u003cres\u003e )\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "2ebccd71a71e6078920bc65b40f120e72b71c2b6",
      "tree": "40c0460f02703ceed155847f3f2af8df7a115336",
      "parents": [
        "a393db6f10ef2d4f28257234cfc730e744dfb6a4"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jan 12 10:09:07 2010 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jan 12 10:14:42 2010 +0100"
      },
      "message": "drbd: The kernel code is now equivalent to out of tree release 8.3.7\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "35a8a3fdcd4f973a5430e868f2f2a5c363803a5b",
      "tree": "bdf7e2d8c7ae482251b348e526fa1260f67f3eef",
      "parents": [
        "ad85dfe67bbf13d5fa20764e4ce801a1e6e526d8"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Nov 25 17:50:00 2009 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Nov 25 17:57:36 2009 +0100"
      },
      "message": "drbd: moved CN_IDX_DRBD and CN_VAL_DRBD to the right file\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "ad85dfe67bbf13d5fa20764e4ce801a1e6e526d8",
      "tree": "8a4c78f8f10be4c44b31d1c0f770979fe1afc570",
      "parents": [
        "d8c2a36b774defd4e230353d91f0f609c128bd78"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Nov 18 15:52:51 2009 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Nov 24 18:20:08 2009 +0100"
      },
      "message": "DRBD: Now the code is 8.3.6 + 3 fixes (without compat crap)\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "ed814525f2e45188964c270fc3a5a0b644f7e4a9",
      "tree": "a593d255981deedf02c7559a17013cdeb45b8524",
      "parents": [
        "83c38830b04d4e369b9a41acbc562c0422f2f2f2"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Oct 27 12:37:14 2009 +0100"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Nov 04 15:40:10 2009 +0100"
      },
      "message": "Now it is equal to DRBD release 8.3.5 without compat crap\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "9f5180e5c331d7b3ccc35e1a78072235d38f9f34",
      "tree": "d4d116f9bee360007c15b50fee86bf3a27566102",
      "parents": [
        "25d2d4edfa509b69fe4832094b8a07e634363ba3"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Oct 06 09:30:14 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 06 09:30:14 2009 +0200"
      },
      "message": "drbd: Work on permission enforcement\n\nNow we have the capabilities of the sending process available,\nuse them to enforce CAP_SYS_ADMIN.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b411b3637fa71fce9cf2acf0639009500f5892fe",
      "tree": "6b88e5202e0f137fef50e95b0441bcafdbf91990",
      "parents": [
        "1a35e0f6443f4266dad4c569c55c57a9032596fa"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Sep 25 16:07:19 2009 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 01 21:17:49 2009 +0200"
      },
      "message": "The DRBD driver\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    }
  ]
}
