)]}'
{
  "log": [
    {
      "commit": "f2906e183f5460df9d9e774f5952f5ff670b3913",
      "tree": "f30736542841df13d66c5aa3f6507105fdc8f7ac",
      "parents": [
        "02bc7174ae83617b4364dc179d95d848d9fd6db5"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Jul 21 17:04:32 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:37 2010 +0200"
      },
      "message": "drbd: fix for spurious full sync (becoming sync target looked like invalidate)\n\nIf a synctarget lost connection while being WFSyncUUID,\ndue to \"state sanitizing\", the attempted state change to SyncTarget\nlooked like an \"invalidate\" to after_state_ch() later,\nthus caused a full sync on next handshake (Bug #318).\n\ndrbd0: PingAck did not arrive in time.\ndrbd0: peer( Primary -\u003e Unknown ) conn( WFSyncUUID -\u003e NetworkFailure ) pdsk( UpToDate -\u003e DUnknown )\n\n        from  : { cs:NetworkFailure ro:Secondary/Unknown ds:UpToDate/DUnknown r--- }\n        to    : { cs:SyncTarget ro:Secondary/Unknown ds:Inconsistent/DUnknown r--- }\n        after sanizising, resulted in\n        state: { cs:NetworkFailure ro:Secondary/Unknown ds:Inconsistent/DUnknown r--- }\n        drbd0: disk( UpToDate -\u003e Inconsistent )\n\nFix:\ndon\u0027t mask state transition errors in \"sanitizing\",\nso the requested state change to SyncTarget fails,\ninstead of being implicitly \"remaped\" to invalidate.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "02bc7174ae83617b4364dc179d95d848d9fd6db5",
      "tree": "df2e16cc3b4e3ac23cceffa710ee6b2daccac384",
      "parents": [
        "a821cc4a9a8d9e67356f9a5cfc1206aa3cfd30f7"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Sep 06 12:13:20 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:36 2010 +0200"
      },
      "message": "drbd: cosmetic, don\u0027t report resync for online-verify\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "a821cc4a9a8d9e67356f9a5cfc1206aa3cfd30f7",
      "tree": "d63daf31b85cefc993e6345fcd3ef3f6faac6474",
      "parents": [
        "1d53f09e170e477de67babd7a10e277479260d51"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Sep 06 12:31:37 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:35 2010 +0200"
      },
      "message": "drbd: fix spurious protocol error\n\nIf we cannot satisfy a request (because our disk just broke),\nwe still need to drain the payload.  Or we\u0027ll get a protocol error\nwhen interpreting the payload as DRBD packet header.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "1d53f09e170e477de67babd7a10e277479260d51",
      "tree": "c795de9e5aeaf8324eeb25ea20c7b94f573bca83",
      "parents": [
        "435f07402b3165b90592073bc0f8c6f8fa160ff9"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Sun Sep 05 01:13:24 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:34 2010 +0200"
      },
      "message": "drbd: fix potential kernel BUG (NULL deref)\n\nBUG trace would look like:\n lc_find\n drbd_rs_complete_io\n got_OVResult\n drbd_asender\n\nCould be triggered by explicit, or IO-error policy based,\ndetach during online-verify.\n\nWe may only dereference mdev-\u003eresync, if we first get_ldev(), as the\ndisk may break any time, causing mdev-\u003eresync to disappear once all\nldev references have been returned.\nAlready in flight online-verify requests or replies may still come in,\nwhich we then need to ignore.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "435f07402b3165b90592073bc0f8c6f8fa160ff9",
      "tree": "cef4df9cde79857ad5590358c5f155c2f8bd84a2",
      "parents": [
        "76d2e7eca8e7675c6d7a6592f9e747b121cc8a87"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Sep 06 12:30:25 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:33 2010 +0200"
      },
      "message": "drbd: don\u0027t count sendpage()d pages only referenced by tcp as in use\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "76d2e7eca8e7675c6d7a6592f9e747b121cc8a87",
      "tree": "0fef8428c57574046bdd650c4040c9c3d299aba5",
      "parents": [
        "1090c056c5eb6d5335cceb381683e77ac24c71ab"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Aug 25 11:58:05 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:32 2010 +0200"
      },
      "message": "drbd: Adding support for BIO/Request flags: REQ_FUA, REQ_FLUSH and REQ_DISCARD\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "1090c056c5eb6d5335cceb381683e77ac24c71ab",
      "tree": "66c38894d55a57797a27569ec77dd5090a9b08f3",
      "parents": [
        "ee15b038164fcf19b798021762dee3cf5cbc6433"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Jul 19 17:41:04 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:31 2010 +0200"
      },
      "message": "drbd: drbd_md_sync before calling user space helpers\n\nJust in case we have some pending meta data changes to sync, do it\nbefore we call our userland helper, as that may take some time,\nor even cause a hard reboot.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "ee15b038164fcf19b798021762dee3cf5cbc6433",
      "tree": "8d2cca781af96296a591a14928ece247fc682ef3",
      "parents": [
        "63106d3c6c769b6219bd04edde513b12abae3f61"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Fri Sep 03 10:00:09 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:30 2010 +0200"
      },
      "message": "drbd: fix race on meta-data update, addendum\n\naddendum to baa33ae4eaa4477b60af7c434c0ddd1d182c1ae7\n\nThe race:\n    drbd_md_sync()\n\tif (!test_and_clear_bit(MD_DIRTY, \u0026mdev-\u003eflags))\n\t\treturn;\n    \u003d\u003d\u003e RACE with drbd_md_mark_dirty() rearming the timer.\n\tdel_timer(\u0026mdev-\u003emd_sync_timer);\n\n    Fixed by moving the del_timer before the test_and_clear_bit.\n\nAdditionally only rearm the timer in drbd_md_mark_dirty, if MD_DIRTY was\nnot already set, reduce the grace period from five to one second, and\nadd an ifdef\u0027ed debuging aid to find code paths missing an explicit\ndrbd_md_sync, if any, as those are the only relevant ones for this race.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "63106d3c6c769b6219bd04edde513b12abae3f61",
      "tree": "5131a90796858c44bfb4cceda6c2a4760d7e007d",
      "parents": [
        "ef50a3e34f93a067ada541346be3175e924331a2"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Sep 01 15:47:15 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:29 2010 +0200"
      },
      "message": "drbd: Removed a race that could cause unexpected execution of w_make_resync_request()\n\nThe actual race happened int the drbd_start_resync() function. Where\ndrbd_resync_finished() -\u003e __drbd_set_state() set STOP_SYNC_TIMER and\narmed the timer.\n\nIf the timer fired before execution reaches the mod_timer statement\nat the end of drbd_start_resync() the latter would cause an\nunexpected call to w_make_resync_request().\n\nRemoved the STOP_SYNC_TIMER bit, and base it on the connection state.\n\nThe STOP_SYNC_TIMER bit probably originates probably the time before\nthe state engine.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "ef50a3e34f93a067ada541346be3175e924331a2",
      "tree": "455fd4a7d4b11ead24b7e297f25b02afabc36c76",
      "parents": [
        "3f3a9b849d2b703934c07fa17f5eac2dc37c1f6b"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Sep 01 14:39:30 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:28 2010 +0200"
      },
      "message": "drbd: implicitly create unconfigured devices on sync-after dependencies\n\nIf pacemaker (for example) decided to initialize minor devices not in\nthe exact sync-after dependency order, the configuration partially\nfailed with an error \"The sync-after minor number is invalid\". (Bugz. #322)\n\nWe can avoid that by implicitly creating unconfigured minor devices,\nif others depend on them.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "3f3a9b849d2b703934c07fa17f5eac2dc37c1f6b",
      "tree": "12aff51d5d92a0642232205b95eb9e55e85dd2bf",
      "parents": [
        "c518d04fdec3d8b9d6f8b2228040934de9ee6708"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Sep 01 15:12:12 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:28 2010 +0200"
      },
      "message": "drbd: fix race on meta-data update\n\nThe race:\n\tdrbd_md_mark_dirty()\n\tdrbd_md_sync()\n\t\tif (!test_and_clear_bit(MD_DIRTY, \u0026mdev-\u003eflags))\n\t\t\treturn;\n\t\tdrbd_md_sync_page_io(mdev, mdev-\u003eldev, sector, WRITE)\n  \u003d\u003d\u003e RACE\n\t\tclear_bit(MD_DIRTY, \u0026mdev-\u003eflags); \u003c\u003d\u003d spurious\n\nFixed by removing the spurious clear_bit.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "c518d04fdec3d8b9d6f8b2228040934de9ee6708",
      "tree": "8d749aa26634287fe59fba8fe181b0f43f36af1a",
      "parents": [
        "0778286a133d2d3f81861a4e5db308e359583006"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Sep 01 09:50:23 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:27 2010 +0200"
      },
      "message": "drbd: fix race between deconfiguring and reconfiguring network\n\nIf a drbd_nl_net_conf hits the small window between the state change\nto C_STANDALONE and the corresponding cleanup in after_state_ch,\nthat cleanup would throw away stuff we now need again,\nand later trigger BUG_ON()s.\n\nFixed by properly serializing the new config request with\nany pending cleanup.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "0778286a133d2d3f81861a4e5db308e359583006",
      "tree": "14bdfe375481d8954ada1ddaa0bc84fcaba4e23d",
      "parents": [
        "d53733893dc43f4ebb5be510863c5debf0f8990b"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Aug 31 12:00:50 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:26 2010 +0200"
      },
      "message": "drbd: Disable activity log updates when the whole device is out of sync\n\nWhen the complete device is marked as out of sync, we can disable\nupdates of the on disk AL. Currently AL updates are only disabled\nif one uses the \"invalidate-remote\" command on an unconnected,\nprimary device, or when at attach time all bits in the bitmap are\nset.\n\nAs of now, AL updated do not get disabled when a all bits becomes\nset due to application writes to an unconnected DRBD device.\nWhile this is a missing feature, it is not considered important,\nand might get added later.\n\nBTW, after initializing a \"one legged\" DRBD device\ndrbdadm create-md resX\ndrbdadm -- --force primary resX\nAL updates also get disabled, until the first connect.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "d53733893dc43f4ebb5be510863c5debf0f8990b",
      "tree": "dbc9bb129b6c4774747be8b1d68dee6d18052637",
      "parents": [
        "02918be2273a6b086292e0d85b740336eda46e36"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Aug 23 15:18:33 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:25 2010 +0200"
      },
      "message": "drbd: Actually allow BIOs up to 128k (was 32k).\n\nNow we have multiple BIOs per ee, packets with a 32 bit length field,\nit gets time to use these goodies.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "02918be2273a6b086292e0d85b740336eda46e36",
      "tree": "2ec58d863e30be994bfe6ae6feb3ab888fb5c9f0",
      "parents": [
        "0b70a13dac014ec9274640b9e945bde493ba365e"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Aug 20 14:35:10 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:24 2010 +0200"
      },
      "message": "drbd: receiving of big packets, for payloads between 64kByte and 4GByte\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": "204bba9965c4cc175bf5bc65ddd19889e9085c72",
      "tree": "49af2eedad06561d26fea943b3be5a89da07bd93",
      "parents": [
        "48acf8689847c061bd82c808c379f1bd79dfe407"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Aug 23 16:17:13 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:22 2010 +0200"
      },
      "message": "drbd: Bugfix for regression introduced with f9bc8913c06022e\n\nIf we intent to use the block_id member of an epoch entry,\nwe may not use the digest member.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "48acf8689847c061bd82c808c379f1bd79dfe407",
      "tree": "1b1f26d2a7ab56628587e5e8049fc80fc7d0fa07",
      "parents": [
        "0f0601f4ea2f53cfd8bcae060fb03d9bbde070ec"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Aug 23 15:51:56 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:21 2010 +0200"
      },
      "message": "drbd: Microfix: Assigning sector once is sufficient\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "0f0601f4ea2f53cfd8bcae060fb03d9bbde070ec",
      "tree": "42bcbd8edf48c9cee526893108cc69b4918a9f64",
      "parents": [
        "80a40e439e5a3f30b0a6210a1add6d7c33392e54"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Aug 11 23:40:24 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:20 2010 +0200"
      },
      "message": "drbd: new configuration parameter c-min-rate\n\nWe now track the data rate of locally submitted resync related requests,\nand can thus detect non-resync activity on the lower level device.\n\nIf the current sync rate is above c-min-rate, and the lower level device\nappears to be busy, we throttle the resyncer.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "80a40e439e5a3f30b0a6210a1add6d7c33392e54",
      "tree": "4442914b7bb70a1d9bde4be3cd3eb7085738ed66",
      "parents": [
        "1d7734a0df02ff5068ff8baa1447c7baee601db1"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Aug 11 23:28:00 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:19 2010 +0200"
      },
      "message": "drbd: reduce code duplication when receiving data requests\n\nalso canonicalize the return values of read_for_csum\nand drbd_rs_begin_io to return -ESOMETHING, or 0 for success.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "1d7734a0df02ff5068ff8baa1447c7baee601db1",
      "tree": "2b01470ccd1523328c9e243801266aff9e2df391",
      "parents": [
        "0bb70bf601579b0d4c56acbb54b8eb0688541e19"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Aug 11 21:21:50 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:18 2010 +0200"
      },
      "message": "drbd: use rolling marks for resync speed calculation\n\nThe current resync speed as displayed in /proc/drbd fluctuates a lot.\nUsing an array of rolling marks makes this calculation much more stable.\nWe used to have this (a long time ago with 0.7), but it got lost somehow.\n\nIf \"stalled\", do not discard the rest of the information, just add a\n\" (stalled)\" tag to the progress line.\n\nThis patch also shortens a spinlock critical section somewhat, and\nreduces the number of atomic operations in put_ldev.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "0bb70bf601579b0d4c56acbb54b8eb0688541e19",
      "tree": "d341c4a385be6f977ec1bcf78cd75cc60ecbc871",
      "parents": [
        "c36c3ced692b38d0cf90a5e6f875be2f9ebbc037"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Aug 11 20:53:21 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:17 2010 +0200"
      },
      "message": "drbd: remove outdated comment and dead code\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "c36c3ced692b38d0cf90a5e6f875be2f9ebbc037",
      "tree": "e8384ed0c80e2ce057006d83944a299445811380",
      "parents": [
        "85719573dd716bc2ac3e098b44adfed884250bab"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Aug 11 20:42:55 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:16 2010 +0200"
      },
      "message": "drbd: let drbd_free_ee implicitly free any digest\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "85719573dd716bc2ac3e098b44adfed884250bab",
      "tree": "494e7797c923c7c584dc3c16d4d6ab2fcd6996a0",
      "parents": [
        "d207450cf2731c6a2afa8c78fb31c7206cd35eba"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jul 21 10:20:17 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:15 2010 +0200"
      },
      "message": "drbd: Replaced some casts by an union. Improved comments\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "d207450cf2731c6a2afa8c78fb31c7206cd35eba",
      "tree": "2cd48ba58ebc3dd2c7243f5cf06240e88e960860",
      "parents": [
        "778f271dfe7a7173c0bae2d6cde8d9bd1533e668"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jul 22 15:27:27 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:14 2010 +0200"
      },
      "message": "drbd: Bugfix: rs_in_flight could become wrong if read_for_csum() requested reschedule later\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "778f271dfe7a7173c0bae2d6cde8d9bd1533e668",
      "tree": "1c057622152bd652102749b488653bff8be24c2a",
      "parents": [
        "8e26f9ccb9be00fdb33551a34c8f6029e89ab79f"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jul 06 11:14:00 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:14 2010 +0200"
      },
      "message": "drbd: The new, smarter resync speed controller\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "8e26f9ccb9be00fdb33551a34c8f6029e89ab79f",
      "tree": "0a16e6a5c9f5c42cbc375ac8e3e180011b214743",
      "parents": [
        "9a31d7164d409ca59cfadb7957ac7b0acf4545b8"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jul 06 17:25:54 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:13 2010 +0200"
      },
      "message": "drbd: New sync_param packet, that includes the parameters of the new controller\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "9a31d7164d409ca59cfadb7957ac7b0acf4545b8",
      "tree": "3859b808c97180308d796f87d6af6fd9888b7f5f",
      "parents": [
        "d28fd092a55b504a0d699b65802a995086d70647"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Jul 05 13:42:03 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:12 2010 +0200"
      },
      "message": "drbd: New sync parameters for the smart resync rate controller\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "d28fd092a55b504a0d699b65802a995086d70647",
      "tree": "80071a61faa7e38cd6df6be155dd99e0f455a821",
      "parents": [
        "e756414f7daa93b862f1670dd0a6aaa676ea71e3"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Fri Jul 09 23:28:10 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:31:43 2010 +0200"
      },
      "message": "drbd: fix list corruption (recent regression)\n\nThe commit 288f422ec13667de40b278535d2a5fb5c77352c4\n drbd: Track all IO requests on the TL, not writes only\nmoved a list_add_tail(req, ) into a region where req\nmay have just been freed due to conflict detection.\n\nFix this by adding a proper cleanup section for that code path.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "e756414f7daa93b862f1670dd0a6aaa676ea71e3",
      "tree": "7c20a61d7483db6279279bbeadd245420b810a1d",
      "parents": [
        "6709893059105d7859ae772af70c7db5bbab7de0"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jun 29 17:35:34 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:12:07 2010 +0200"
      },
      "message": "drbd: Initialize all members of sync_conf to their defaults [Bugz 315]\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "6709893059105d7859ae772af70c7db5bbab7de0",
      "tree": "939d177fc3f70970d46442ee7953b1467d6aabc5",
      "parents": [
        "f70b3511599c49a3dc20ae349d6cdc5af47659df"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 24 16:24:25 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:09:09 2010 +0200"
      },
      "message": "drbd: Make sure tl_restart(, resend) can not get called multiple times for a new connection\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "f70b3511599c49a3dc20ae349d6cdc5af47659df",
      "tree": "1d5971f48f5fe95988df64f5ab1f22333c492dc9",
      "parents": [
        "8f488156c0635dcc9c668737d05386113a745ef9"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 24 14:34:40 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:08:27 2010 +0200"
      },
      "message": "drbd: Do not try to free tl_hash in drbd_disconnect() when IO is suspended\n\nWe may not free tl_hash when IO is suspended, since we can not wait\nuntil ap_bio_cnt reaches zero.\n\nWe can do this after susp reched 0, since then tl_clear was called\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "8f488156c0635dcc9c668737d05386113a745ef9",
      "tree": "9c589bfbb57ece853b9960c0e835fbc95a1ca8eb",
      "parents": [
        "cfa03415a14dd0055f2ff8c3d348d4c1452acba6"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 24 12:05:53 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:05:32 2010 +0200"
      },
      "message": "drbd: Allow attach while IO is suspended\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "cfa03415a14dd0055f2ff8c3d348d4c1452acba6",
      "tree": "760aa04f76edd0333324705e86b7a7a306f457c4",
      "parents": [
        "84dfb9f564208a0331131d1ab922382c7d61a553"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jun 23 17:18:51 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:05:08 2010 +0200"
      },
      "message": "drbd: Allow tl_restart() to do IO completion while IO is suspended\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "84dfb9f564208a0331131d1ab922382c7d61a553",
      "tree": "1506d6c318afa4a94b13bab6af983031eac5e3cd",
      "parents": [
        "65d922c33ebd359db25d5846929b2eafc4238fcc"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jun 23 11:20:05 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:04:46 2010 +0200"
      },
      "message": "drbd: Fixed a deadlock, probably only affected UP machines\n\nAfter disconnect (most likely mdev-\u003enet_cnt \u003d\u003d 0) and we are\nstill in an unstable state (!drbd_state_is_stable()). When we\nget an IO request in drbd_get_max_buffers() (called from\n__inc_ap_bio_cond(), called from inc_ap_bio()) we wake up\nmisc_wait. Misc_wait is also used in inc_ap_bio() to sleep\nuntil the outcome of __inc_ap_bio_cond() changes. \u003d\u003e Busy loop!\n\nSolution: Have a dedicated wait queue for get_net_conf() and\nput_net_conf().\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "65d922c33ebd359db25d5846929b2eafc4238fcc",
      "tree": "f8393356094f3e9bb62521d50fbf300184851328",
      "parents": [
        "481c6f503213ab14f69ce88fff7b1ece325522f2"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jun 16 16:18:09 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:04:10 2010 +0200"
      },
      "message": "drbd: Do not do a hard state change when establishing a connection [bugz 304]\n\nMake sure the state engine can deny two primaries to connect\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "481c6f503213ab14f69ce88fff7b1ece325522f2",
      "tree": "6d6da7d5e2893349116cfc89e6b7c755965c723a",
      "parents": [
        "43a5182cccae5850f7590f78dd9651bd407be440"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jun 22 14:03:27 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 15:01:37 2010 +0200"
      },
      "message": "drbd: Ensure that the peer was not rebootet in the meantime before resending TL\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "43a5182cccae5850f7590f78dd9651bd407be440",
      "tree": "b3bed34cdd96b8272134f3b00441f109193292af",
      "parents": [
        "87f7be4cf88e93069f4cc63baf2ce70fdfc59c63"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Jun 11 11:26:34 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:59:21 2010 +0200"
      },
      "message": "drbd: Delayed creation of current-UUID\n\nWhen a fencing policy of \"resource-and-stonith\" is configured,\nand DRBD looses connection to it\u0027s peer, we can delay the\ncreation of a new current-UUID until IO gets thawed.\n\nThat allows one to deploy fence-peer handlers that actually\ncommit suicide on the machine they get started.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "87f7be4cf88e93069f4cc63baf2ce70fdfc59c63",
      "tree": "b76a190b93d4a5d3629c7f25737e11c8231efd6c",
      "parents": [
        "1616a25493cce727d582886f162c5bb0abd87e6a"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Jun 11 13:56:33 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:58:36 2010 +0200"
      },
      "message": "drbd: Run the fence-peer helper asynchronously\n\nSince we can not thaw the transfer log, the next logical step is\nto allow reconnects while the fence-peer handler runs.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "1616a25493cce727d582886f162c5bb0abd87e6a",
      "tree": "d8dce723c24a8ff4c3ddc41b43b9f4a4c19b3a91",
      "parents": [
        "999122bc188a4d0a4847bdf1915d357bd6ab53dc"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 10 16:55:15 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:57:22 2010 +0200"
      },
      "message": "drbd: Reduce the verbosity of some state transitions\n\nState transitions in the space of non-allowed states used\nto be very noisy. Reduce that, since that has little value\nfor the majority of the user base.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "999122bc188a4d0a4847bdf1915d357bd6ab53dc",
      "tree": "0f9362cc0b5c58f48b9836bf40ee28e095d7dd5a",
      "parents": [
        "18a50fa213d46d5592f6542c91ab4c4760cf346c"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 10 16:46:54 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:56:50 2010 +0200"
      },
      "message": "drbd: Removing a by now obsolete clause in the state sanitizing\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "18a50fa213d46d5592f6542c91ab4c4760cf346c",
      "tree": "2af1520311c4671bd0db2765a9b939b40e3ace04",
      "parents": [
        "894c6a946199cf91e52bc1864c3dc6529cceb3db"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon Jun 21 14:14:15 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:56:00 2010 +0200"
      },
      "message": "drbd: Now we need to handle the ed_uuid of an diskless, unconnected primary correctly\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "894c6a946199cf91e52bc1864c3dc6529cceb3db",
      "tree": "8fcb4eee7d538717943fba7d55f079efac95fbe0",
      "parents": [
        "47ff2d0a8e7ce87fed180729e8341f650bf585c8"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Jun 18 16:03:20 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:55:11 2010 +0200"
      },
      "message": "drbd: Disabled the crashed_primary detection for re-attach of last data while IO is frozen\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": "905cd7d8ac9b18e1f122b90dbebe1246b1c364fd",
      "tree": "6b69cbbfc35ea954b0bd4ad1da5f541fe8aca003",
      "parents": [
        "5ba82308ea766b33404cb130a88fe4113d9c20a3"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Mon May 10 16:03:10 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:39:38 2010 +0200"
      },
      "message": "drbd: Removed redundant error checks in the request code path\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "5ba82308ea766b33404cb130a88fe4113d9c20a3",
      "tree": "ec21a7d1cb92837cd98a6e9e30d44cb4cd63aa87",
      "parents": [
        "b9b98716f83856b928f1c985ab55520c67663dd2"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Jun 10 13:30:36 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:37:33 2010 +0200"
      },
      "message": "drbd: factored drbd_req_make_private_bio() out of drbd_req_new()\n\nPreparing tl_thaw_dio()\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "b9b98716f83856b928f1c985ab55520c67663dd2",
      "tree": "d935bc8efc8a7ecc6a05225ff941a16ee1d8bfcf",
      "parents": [
        "11b58e73a3a3d1bbb582370d59f9b2c4d0136b42"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Jun 22 11:26:48 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:36:51 2010 +0200"
      },
      "message": "drbd: Do not send two barriers without any writes between them\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "11b58e73a3a3d1bbb582370d59f9b2c4d0136b42",
      "tree": "9ca5b48e368da91f6cc1888440b6ea9ffe9a7e3f",
      "parents": [
        "2a80699f807885d501f08a7006f6a56c1c937a6e"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed May 12 17:08:26 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:35:58 2010 +0200"
      },
      "message": "drbd: factored tl_restart() out of tl_clear().\n\nIf IO was frozen for a temporal network outage, resend the\ncontent of the transfer-log into the newly established connection.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "2a80699f807885d501f08a7006f6a56c1c937a6e",
      "tree": "4a3cefc56201d9f88f898a1560945f85a09077d5",
      "parents": [
        "288f422ec13667de40b278535d2a5fb5c77352c4"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Jun 09 14:07:43 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:26:45 2010 +0200"
      },
      "message": "drbd: mod_req has now a return value\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "288f422ec13667de40b278535d2a5fb5c77352c4",
      "tree": "fc8f594c05b05637a5052a41c603bbdad6f8641e",
      "parents": [
        "7e602c0aaf3e686c36cc742119f0f53f42e9befe"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu May 27 15:07:43 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:25:20 2010 +0200"
      },
      "message": "drbd: Track all IO requests on the TL, not writes only\n\nWith that the drbd_fail_pending_reads() function becomes obsolete.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "7e602c0aaf3e686c36cc742119f0f53f42e9befe",
      "tree": "788ffe2a83d907cbd83b650997775eeac2bc6b1b",
      "parents": [
        "504c6d1b44bc6e694bdba8d9a2a4e046275b5e2b"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu May 27 14:49:27 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 14:23:45 2010 +0200"
      },
      "message": "drbd: renamed drbd_tl_epoch.n_req to drbd_tl_epoch.n_writes\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "504c6d1b44bc6e694bdba8d9a2a4e046275b5e2b",
      "tree": "3dc50274aabbb2d3bcf17a9f088444a2cacea929",
      "parents": [
        "639e2f2aa76eefaf22078dccbbf2f3483f587aa7"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Sun Sep 26 12:23:25 2010 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sun Sep 26 12:23:25 2010 +0900"
      },
      "message": "amiga floppy: Compile failure fixes\n\no Compile fixes for amiga floppy driver.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "639e2f2aa76eefaf22078dccbbf2f3483f587aa7",
      "tree": "7df6fac9e0b45584f79ae75bf7f7d55019ff1fbc",
      "parents": [
        "786029ff810ff4a2fd52c0462713985a415417ab"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Fri Sep 24 20:35:45 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 24 20:35:45 2010 +0200"
      },
      "message": "atari floppy: Stop sharing request queue across multiple gendisks\n\no Use one request queue per gendisk instead of sharing the queue.\n\no Don\u0027t have hardware. No compile testing or run time testing done. Completely\n  untested.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "786029ff810ff4a2fd52c0462713985a415417ab",
      "tree": "9779d53ecc99b88513be0177bfdbecb92dc6edb9",
      "parents": [
        "488211844e0c3fad6ffa98a6f3c4f2139074e79a"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Fri Sep 24 20:35:44 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 24 20:35:44 2010 +0200"
      },
      "message": "amiga floppy: Stop sharing request queue across multiple gendisks\n\no Use one request queue per gendisk instead of sharing request queue\n\no Don\u0027t have hardware. No compile testing or run time testing done. Completely\n  untested.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "488211844e0c3fad6ffa98a6f3c4f2139074e79a",
      "tree": "c65be4db08980d2230b62b7b52320c5bb8bcf484",
      "parents": [
        "fcfb5c0ce11fe474cd6b4f7e83e0cc25f220d911"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Sep 22 09:32:36 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Sep 22 09:32:36 2010 +0200"
      },
      "message": "floppy: switch to one queue per drive instead of sharing a queue\n\nPretty straight forward conversion. Note that we do round-robin\nbetween the drives that have available requests, before we simply\nused the drive that the IO scheduler told us to. Since the IO\nscheduler doesn\u0027t care about multiple devices per queue, the resulting\nsort would not have made sense.\n\nFixed by Vivek to get rid of a double lock problem in set_next_request()\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\n"
    },
    {
      "commit": "fcfb5c0ce11fe474cd6b4f7e83e0cc25f220d911",
      "tree": "9b650860568f631fc36d0fdca15d1144bcedfb66",
      "parents": [
        "0c9f5ba7cb7435ea4b99599de4af0729f0740647"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:35 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:40 2010 +0200"
      },
      "message": "cciss: remove some superfluous tests from cciss_bigpassthru()\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "0c9f5ba7cb7435ea4b99599de4af0729f0740647",
      "tree": "1c80511d7a57c5ce2998d6c26eaeb5d6814a8f27",
      "parents": [
        "f32f125b1c14dcde49ec415ec941af750433251e"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:30 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:39 2010 +0200"
      },
      "message": "cciss: factor out cciss_big_passthru\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "f32f125b1c14dcde49ec415ec941af750433251e",
      "tree": "85934839906b5b1b79c9c07723797db23d9727e6",
      "parents": [
        "0894b32c5c1444d25f3e988cf03415ce8dfc5142"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:25 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:37 2010 +0200"
      },
      "message": "cciss: factor out cciss_passthru\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "0894b32c5c1444d25f3e988cf03415ce8dfc5142",
      "tree": "525a32e3350db1325e9ec9bdaa12271a15e66e53",
      "parents": [
        "c525919ddf0b10ff0e1f528dd50d90edfdee4797"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:20 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:36 2010 +0200"
      },
      "message": "cciss: factor out cciss_getluninfo\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "c525919ddf0b10ff0e1f528dd50d90edfdee4797",
      "tree": "2c39db5a4e1e648bc5d15c7017663c2139a66aa3",
      "parents": [
        "8a4f7fbfdd76a304c8f04dde6b8fd0e5c50bbe76"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:15 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:35 2010 +0200"
      },
      "message": "cciss: factor out cciss_getdrivver\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "8a4f7fbfdd76a304c8f04dde6b8fd0e5c50bbe76",
      "tree": "becfda4a679543971f2cdbc948d47cb960bf80c0",
      "parents": [
        "d18dfad4e2bf6c2d2c5c104d882b14b9fee71b14"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:10 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:34 2010 +0200"
      },
      "message": "cciss: factor out cciss_getfirmver\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "d18dfad4e2bf6c2d2c5c104d882b14b9fee71b14",
      "tree": "a7ccc43dbe19dba9b5d14ac08871813c62470c59",
      "parents": [
        "93c74931131d3a7af3a6aa18aab0d39978b5d3b5"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:56:05 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:33 2010 +0200"
      },
      "message": "cciss: factor out cciss_getbustypes\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "93c74931131d3a7af3a6aa18aab0d39978b5d3b5",
      "tree": "81f9811e6cc2f8d3072f4fbe90a242f0e4d7d5ed",
      "parents": [
        "4f43f32cd3f65cfee5f30d7e6be55854cf33809b"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:55:59 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:32 2010 +0200"
      },
      "message": "cciss: factor out cciss_getheartbeat\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "4f43f32cd3f65cfee5f30d7e6be55854cf33809b",
      "tree": "100c18f82e4ac710469136b7f037f089f4b14684",
      "parents": [
        "252161094255ffdc277b8a0e5e12b0a8ff67b10f"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:55:54 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:32 2010 +0200"
      },
      "message": "cciss: factor out cciss_setnodename\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "252161094255ffdc277b8a0e5e12b0a8ff67b10f",
      "tree": "875117a8c576bd2bfea5504f635312b1b9041383",
      "parents": [
        "4c800eed9a46f7b6a469d24e7e6051b23e62bb69"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:55:49 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:31 2010 +0200"
      },
      "message": "cciss: factor out cciss_getnodename\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "4c800eed9a46f7b6a469d24e7e6051b23e62bb69",
      "tree": "2dd28321454adc0c0d3b0af63347e25243b0d645",
      "parents": [
        "576e661c658ab7d2a15cc12d5b8a1600db81ec0a"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:55:44 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:30 2010 +0200"
      },
      "message": "cciss: factor out cciss_setintinfo\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "576e661c658ab7d2a15cc12d5b8a1600db81ec0a",
      "tree": "1396cc0c1192b154f1f9e3cad80218e65e263283",
      "parents": [
        "0a25a5aee727c4a56c7d39e0e595947b02ee2696"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:55:39 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:29 2010 +0200"
      },
      "message": "cciss: factor out cciss_getintinfo\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "0a25a5aee727c4a56c7d39e0e595947b02ee2696",
      "tree": "61262c46f4547de8b87c4a91df5e195f7fe4e76c",
      "parents": [
        "ee86273062cbb310665fe49e1f1937d2cf85b0b9"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Aug 26 13:55:34 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:12:28 2010 +0200"
      },
      "message": "cciss: factor out cciss_getpciinfo\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "ee86273062cbb310665fe49e1f1937d2cf85b0b9",
      "tree": "cca87f85feafedb52bcc0687b6daa6b15895b199",
      "parents": [
        "9ee47476d6734c9deb9ae9ab05d963302f6b6150"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Aug 23 15:16:00 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Aug 23 15:18:10 2010 +0200"
      },
      "message": "loop: add some basic read-only sysfs attributes\n\nCreate /sys/block/loopX/loop directory and provide these attributes:\n - backing_file\n - autoclear\n - offset\n - sizelimit\n\nThis loop directory is present only if loop device is configured.\n\nTo be used in util-linux-ng (and possibly elsewhere like udev rules)\nwhere code need to get loop attributes from kernel (and not store\nduplicate info in userspace).\n\nMoreover loop ioctls are not even able to provide full backing\nfile info because of buffer limits.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "9ee47476d6734c9deb9ae9ab05d963302f6b6150",
      "tree": "d6d5a54831322628427eb54cb3edc2f78a6125f4",
      "parents": [
        "76be97c1fc945db08aae1f1b746012662d643e97",
        "144dcfc01221e1a79fa47ca897df7d5e3ab298e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 19:55:14 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 19:55:14 2010 -0700"
      },
      "message": "Merge branch \u0027radix-tree\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev\n\n* \u0027radix-tree\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev:\n  radix-tree: radix_tree_range_tag_if_tagged() can set incorrect tags\n  radix-tree: clear all tags in radix_tree_node_rcu_free\n"
    },
    {
      "commit": "76be97c1fc945db08aae1f1b746012662d643e97",
      "tree": "3b99e4b7c76bf5e3905dd8d7092f8f56b249d773",
      "parents": [
        "3dc8d7f07e7496c0c6702e7e4b1acc179fa94019"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 17:43:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 17:43:29 2010 -0700"
      },
      "message": "Linux 2.6.36-rc2\n"
    },
    {
      "commit": "144dcfc01221e1a79fa47ca897df7d5e3ab298e6",
      "tree": "70b0d0bf73815fb242502a562da3a8c7667843ba",
      "parents": [
        "b6dd08652e2b70e73661c4975ae46398066c06f8"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Mon Aug 23 10:33:53 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Aug 23 10:33:53 2010 +1000"
      },
      "message": "radix-tree: radix_tree_range_tag_if_tagged() can set incorrect tags\n\nCommit ebf8aa44beed48cd17893a83d92a4403e5f9d9e2 (\"radix-tree:\nomplement function radix_tree_range_tag_if_tagged\") does not safely\nset tags on on intermediate tree nodes. The code walks down the tree\nsetting tags before it has fully resolved the path to the leaf under\nthe assumption there will be a leaf slot with the tag set in the\nrange it is searching.\n\nUnfortunately, this is not a valid assumption - we can abort after\nsetting a tag on an intermediate node if we overrun the number of\ntags we are allowed to set in a batch, or stop scanning because we\nwe have passed the last scan index before we reach a leaf slot with\nthe tag we are searching for set.\n\nAs a result, we can leave the function with tags set on intemediate\nnodes which can be tripped over later by tag-based lookups. The\nresult of these stale tags is that lookup may end prematurely or\nlivelock because the lookup cannot make progress.\n\nThe fix for the problem involves reocrding the traversal path we\ntake to the leaf nodes, and only propagating the tags back up the\ntree once the tag is set in the leaf node slot. We are already\nrecording the path for efficient traversal, so there is no\nadditional overhead to do the intermediately node tag setting in\nthis manner.\n\nThis fixes a radix tree lookup livelock triggered by the new\nwriteback sync livelock avoidance code introduced in commit\nf446daaea9d4a420d16c606f755f3689dcb2d0ce (\"mm: implement writeback\nlivelock avoidance using page tagging\").\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "b6dd08652e2b70e73661c4975ae46398066c06f8",
      "tree": "fa70f295a5074627a6b6dba11a8c8cf90d4e4b95",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Mon Aug 23 10:33:19 2010 +1000"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Aug 23 10:33:19 2010 +1000"
      },
      "message": "radix-tree: clear all tags in radix_tree_node_rcu_free\n\nCommit f446daaea9d4a420d16c606f755f3689dcb2d0ce (\"mm: implement\nwriteback livelock avoidance using page tagging\") introduced a new\nradix tree tag, increasing the number of tags in each node from 2 to\n3. It did not, however, fix up the code in\nradix_tree_node_rcu_free() that cleans up after radix_tree_shrink()\nand hence could leave stray tags set in the new tag array.\n\nThe result is that the livelock avoidance code added in the the\nabove commit would hit stale tags when doing tag based lookups,\nresulting in livelocks when trying to traverse the tree.\n\nFix this problem in radix_tree_node_rcu_free() so it doesn\u0027t happen\nagain in the future by using a loop to walk all the tags up to\nRADIX_TREE_MAX_TAGS to clear the stray tags radix_tree_shrink()\nleaves behind.\n\nSigned-off-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nAcked-by: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\n"
    },
    {
      "commit": "3dc8d7f07e7496c0c6702e7e4b1acc179fa94019",
      "tree": "f4ba37e2b0bb88e870df963f7a36b93fc733d846",
      "parents": [
        "4238a417a91643e1162a98770288f630e37f0484",
        "6b5d7a9f6f7ff0e096829c1d82f70d5a6066b889"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 11:27:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 11:27:36 2010 -0700"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.36\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.36\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm:\n  KVM: PIT: free irq source id in handling error path\n  KVM: destroy workqueue on kvm_create_pit() failures\n  KVM: fix poison overwritten caused by using wrong xstate size\n"
    },
    {
      "commit": "4238a417a91643e1162a98770288f630e37f0484",
      "tree": "9a4ec0f4249ebe5c723d3f281f087aa472666c02",
      "parents": [
        "bc584c5107bfd97e2aa41c798e3b213bcdd4eae7",
        "4fefe435626758b14e6c05d2a5f8d71a997c0ad6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 11:03:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 11:03:27 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel: (58 commits)\n  drm/i915,intel_agp: Add support for Sandybridge D0\n  drm/i915: fix render pipe control notify on sandybridge\n  agp/intel: set 40-bit dma mask on Sandybridge\n  drm/i915: Remove the conflicting BUG_ON()\n  drm/i915/suspend: s/IS_IRONLAKE/HAS_PCH_SPLIT/\n  drm/i915/suspend: Flush register writes before busy-waiting.\n  i915: disable DAC on Ironlake also when doing CRT load detection.\n  drm/i915: wait for actual vblank, not just 20ms\n  drm/i915: make sure eDP PLL is enabled at the right time\n  drm/i915: fix VGA plane disable for Ironlake+\n  drm/i915: eDP mode set sequence corrections\n  drm/i915: add panel reset workaround\n  drm/i915: Enable RC6 on Ironlake.\n  drm/i915/sdvo: Only set is_lvds if we have a valid fixed mode.\n  drm/i915: Set up a render context on Ironlake\n  drm/i915 invalidate indirect state pointers at end of ring exec\n  drm/i915: Wake-up wait_request() from elapsed hang-check (v2)\n  drm/i915: Apply i830 errata for cursor alignment\n  drm/i915: Only update i845/i865 CURBASE when disabled (v2)\n  drm/i915: FBC is updated within set_base() so remove second call in mode_set()\n  ...\n"
    },
    {
      "commit": "bc584c5107bfd97e2aa41c798e3b213bcdd4eae7",
      "tree": "13cb518e2f4f2aac46aefbbaacb6e4fa3fbb58a2",
      "parents": [
        "a28e0852d45e65d9edf249c36e432b5e0a80f01d",
        "1ab335d8f85792e3b107ff8237d53cf64db714df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 10:08:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 10:08:52 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:\n  slab: fix object alignment\n  slub: add missing __percpu markup in mm/slub_def.h\n"
    },
    {
      "commit": "a28e0852d45e65d9edf249c36e432b5e0a80f01d",
      "tree": "b19f4725757252eb070157b06765235138384813",
      "parents": [
        "e36c886a0f9d624377977fa6cae309cfd7f362fa",
        "1cb0c924fa2d616e5e3b5bc62d97191aac9ff442"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 09:44:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 22 09:44:47 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:\n  nilfs2: wait for discard to finish\n"
    },
    {
      "commit": "4fefe435626758b14e6c05d2a5f8d71a997c0ad6",
      "tree": "efd6adcafcdc73902cf940ec2bfb89055ab37be0",
      "parents": [
        "3fdef0205e69b80c4219f14b834cb85eb719039f"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Thu Aug 19 09:46:16 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:29:03 2010 -0700"
      },
      "message": "drm/i915,intel_agp: Add support for Sandybridge D0\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "3fdef0205e69b80c4219f14b834cb85eb719039f",
      "tree": "31f0fc0b6d48661bec5f165971b311a3521a8846",
      "parents": [
        "877fdacf8291d7627f339885b5ae52c2f6061734"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Thu Aug 19 09:46:15 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:28:54 2010 -0700"
      },
      "message": "drm/i915: fix render pipe control notify on sandybridge\n\nThis one is missed in last pipe control fix for sandybridge,\nthat really unmask interrupt bit for notify in render engine IMR.\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "877fdacf8291d7627f339885b5ae52c2f6061734",
      "tree": "2bfa23d723deeeb95298f69a83ab44f70dcac96c",
      "parents": [
        "156dadc180a1bd3a25d644ee6c361afc465ccd0e"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyuw@linux.intel.com",
        "time": "Thu Aug 19 09:46:13 2010 +0800"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:24:50 2010 -0700"
      },
      "message": "agp/intel: set 40-bit dma mask on Sandybridge\n\nSigned-off-by: Zhenyu Wang \u003czhenyuw@linux.intel.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "156dadc180a1bd3a25d644ee6c361afc465ccd0e",
      "tree": "2a4e58c0d79d44bddf626c55abe9080432d6f010",
      "parents": [
        "90eb77baaea35c591bd324b31e9eac032bd603c9"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Sun Aug 15 10:52:34 2010 +0100"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:21:13 2010 -0700"
      },
      "message": "drm/i915: Remove the conflicting BUG_ON()\n\nWe now attempt to free \"active\" objects following a GPU hang as either\nthe GPU will be reset or the hang is permenant. In either case, the GPU\nwrites will not be flushed to main memory and it should be safe to\nreturn that memory back to the system.\n\nThe BUG_ON(active) is thus overkill and can erroneously fire after a\nEIO.\n\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "90eb77baaea35c591bd324b31e9eac032bd603c9",
      "tree": "8dc290a72482fa6cbd4e9695fdb12839ca05433e",
      "parents": [
        "72bcb2690927f04c0479cd0d83825f09f3bf4d4f"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Sat Aug 14 14:41:23 2010 +0100"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:20:21 2010 -0700"
      },
      "message": "drm/i915/suspend: s/IS_IRONLAKE/HAS_PCH_SPLIT/\n\nFor the shared paths on the next generation chipsets.\n\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "72bcb2690927f04c0479cd0d83825f09f3bf4d4f",
      "tree": "19a53b4d114b896aa03af8da7aa5b11e3546965c",
      "parents": [
        "d5dd96cb280993a6096b42ab082f9cfd9c7ae0bd"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Sat Aug 14 14:41:22 2010 +0100"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:20:17 2010 -0700"
      },
      "message": "drm/i915/suspend: Flush register writes before busy-waiting.\n\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "d5dd96cb280993a6096b42ab082f9cfd9c7ae0bd",
      "tree": "4cf724533f51284cc00f9a7623c5ef59c6526496",
      "parents": [
        "9d0498a2bf7455159b317f19531a3e5db2ecc9c4"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Aug 04 15:52:19 2010 +1000"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 23:07:04 2010 -0700"
      },
      "message": "i915: disable DAC on Ironlake also when doing CRT load detection.\n\nLike on Sandybridge, disabling the DAC here when doing CRT load detect\navoids forever hangs waiting on the hardware.\n\ntest procedure on HP 2740p:\nboot with no VGA plugged in, start X,\nplug in VGA monitor (1280x1024)\nchvt 3\nmachine hangs waiting forever.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "9d0498a2bf7455159b317f19531a3e5db2ecc9c4",
      "tree": "41f2a8b1013d2ee12852d8885b9952120f3d6ebb",
      "parents": [
        "d240f20f545fa4ed78ce48d1eb62ab529f2b1467"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Aug 18 13:20:54 2010 -0700"
      },
      "committer": {
        "name": "Eric Anholt",
        "email": "eric@anholt.net",
        "time": "Sat Aug 21 22:59:23 2010 -0700"
      },
      "message": "drm/i915: wait for actual vblank, not just 20ms\n\nWaiting for a hard coded 20ms isn\u0027t always enough to make sure a vblank\nperiod has actually occurred, so add code to make sure we really have\npassed through a vblank period (or that the pipe is off when disabling).\n\nThis prevents problems with mode setting and link training, and seems to\nfix a bug like https://bugs.freedesktop.org/show_bug.cgi?id\u003d29278, but\non an HP 8440p instead.  Hopefully also fixes\nhttps://bugs.freedesktop.org/show_bug.cgi?id\u003d29141.\n\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Eric Anholt \u003ceric@anholt.net\u003e\n"
    },
    {
      "commit": "e36c886a0f9d624377977fa6cae309cfd7f362fa",
      "tree": "f75e7c3e50a48c671ed4dff33103f601a2204af9",
      "parents": [
        "69b26c7ad00fd5b6129400725e2ffb95134a0e1b"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Aug 21 13:07:26 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 13:19:37 2010 -0700"
      },
      "message": "workqueue: Add basic tracepoints to track workqueue execution\n\nWith the introduction of the new unified work queue thread pools,\nwe lost one feature: It\u0027s no longer possible to know which worker\nis causing the CPU to wake out of idle. The result is that PowerTOP\nnow reports a lot of \"kworker/a:b\" instead of more readable results.\n\nThis patch adds a pair of tracepoints to the new workqueue code,\nsimilar in style to the timer/hrtimer tracepoints.\n\nWith this pair of tracepoints, the next PowerTOP can correctly\nreport which work item caused the wakeup (and how long it took):\n\nInterrupt (43)            i915      time   3.51ms    wakeups 141\nWork      ieee80211_iface_work      time   0.81ms    wakeups  29\nWork              do_dbs_timer      time   0.55ms    wakeups  24\nProcess                   Xorg      time  21.36ms    wakeups   4\nTimer    sched_rt_period_timer      time   0.01ms    wakeups   1\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69b26c7ad00fd5b6129400725e2ffb95134a0e1b",
      "tree": "1986375f189313cc5a32560663c635e9110588c9",
      "parents": [
        "ddb0c5a689c857bb13a42d9a3f0a7604497b3a29",
        "cfe3fdadb16162327773ef01a575a32000b8c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 12:47:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 12:47:05 2010 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  mtd: nand: Fix probe of Samsung NAND chips\n  mtd: nand: Fix regression in BBM detection\n  pxa3xx: fix ns2cycle equation\n"
    },
    {
      "commit": "ddb0c5a689c857bb13a42d9a3f0a7604497b3a29",
      "tree": "7d7e5eb9d8763e7503138735ec5de2ce2505dc60",
      "parents": [
        "0e8e50e20c837eeec8323bba7dcd25fe5479194c"
      ],
      "author": {
        "name": "Samuel Thibault",
        "email": "samuel.thibault@ens-lyon.org",
        "time": "Sat Aug 21 21:32:41 2010 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 12:38:58 2010 -0700"
      },
      "message": "Replace Configure with Enable in description of MAXSMP\n\nThe \"Configure\" word tends to make user believe they have to say \u0027yes\u0027\nto be able to choose the number of procs/nodes.  \"Enable\" should be\nunambiguous enough.\n\nSigned-off-by: Samuel Thibault \u003csamuel.thibault@ens-lyon.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e8e50e20c837eeec8323bba7dcd25fe5479194c",
      "tree": "12c7ec767a4a8508be33442c6fb55c28a26c94cd",
      "parents": [
        "7798330ac8114c731cfab83e634c6ecedaa233d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 16:49:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 08:50:00 2010 -0700"
      },
      "message": "mm: make stack guard page logic use vm_prev pointer\n\nLike the mlock() change previously, this makes the stack guard check\ncode use vma-\u003evm_prev to see what the mapping below the current stack\nis, rather than have to look it up with find_vma().\n\nAlso, accept an abutting stack segment, since that happens naturally if\nyou split the stack with mlock or mprotect.\n\nTested-by: Ian Campbell \u003cijc@hellion.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7798330ac8114c731cfab83e634c6ecedaa233d7",
      "tree": "76c15db91609ad3355add2a6f23823ea27cf920d",
      "parents": [
        "297c5eee372478fc32fec5fe8eed711eedb13f3d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 16:39:25 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 08:49:50 2010 -0700"
      },
      "message": "mm: make the mlock() stack guard page checks stricter\n\nIf we\u0027ve split the stack vma, only the lowest one has the guard page.\nNow that we have a doubly linked list of vma\u0027s, checking this is trivial.\n\nTested-by: Ian Campbell \u003cijc@hellion.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "297c5eee372478fc32fec5fe8eed711eedb13f3d",
      "tree": "18415eae0833ff4767943f985900524d6b1d73f1",
      "parents": [
        "36423a5ed5e4ea95ceedb68fad52965033e11639"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 16:24:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 21 08:49:21 2010 -0700"
      },
      "message": "mm: make the vma list be doubly linked\n\nIt\u0027s a really simple list, and several of the users want to go backwards\nin it to find the previous vma.  So rather than have to look up the\nprevious entry with \u0027find_vma_prev()\u0027 or something similar, just make it\ndoubly linked instead.\n\nTested-by: Ian Campbell \u003cijc@hellion.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cfe3fdadb16162327773ef01a575a32000b8c7f4",
      "tree": "e93dd6e4a80c1cdb23f9a2b562d4cb2bfb955f37",
      "parents": [
        "065a1ed8de85583888b3d4f22c64b534a1fbdaaa"
      ],
      "author": {
        "name": "Tilman Sauerbeck",
        "email": "tilman@code-monkey.de",
        "time": "Fri Aug 20 14:01:47 2010 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 20 22:26:20 2010 +0100"
      },
      "message": "mtd: nand: Fix probe of Samsung NAND chips\n\nApparently, the check for a 6-byte ID string introduced by commit\n426c457a3216fac74e3d44dd39729b0689f4c7ab (\"mtd: nand: extend NAND flash\ndetection to new MLC chips\") is NOT sufficient to determine whether or\nnot a Samsung chip uses their new MLC detection scheme or the old,\nstandard scheme. This adds a condition to check cell type.\n\nSigned-off-by: Tilman Sauerbeck \u003ctilman@code-monkey.de\u003e\nSigned-off-by: Brian Norris \u003cnorris@broadcom.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "36423a5ed5e4ea95ceedb68fad52965033e11639",
      "tree": "6835f907a07b5d5d4861455e8b46398da652a3d4",
      "parents": [
        "f6143a9b732977859cb6e04c604d04976aa5ccbd",
        "05e407603e527f9d808dd3866d3a17c2ce4dfcc5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 14:25:08 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 14:25:08 2010 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, apic: Fix apic\u003ddebug boot crash\n  x86, hotplug: Serialize CPU hotplug to avoid bringup concurrency issues\n  x86-32: Fix dummy trampoline-related inline stubs\n  x86-32: Separate 1:1 pagetables from swapper_pg_dir\n  x86, cpu: Fix regression in AMD errata checking code\n"
    },
    {
      "commit": "f6143a9b732977859cb6e04c604d04976aa5ccbd",
      "tree": "3b5583a70e34a3a53415fe1ef23bb2b47b42125f",
      "parents": [
        "a4724ed6f084fd294b001103a68c3196eb60364c"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri Aug 20 19:56:31 2010 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:55:41 2010 -0700"
      },
      "message": "Documentation: fix ozlabs.org mailing list address\n\nThis list moved to lists.ozlabs.org quite some time ago.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4724ed6f084fd294b001103a68c3196eb60364c",
      "tree": "a4b36746783fe839241933ecc7e0ef6c7b80d783",
      "parents": [
        "1ee41680572971e34d90d5f584daf33195ec6dcb"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri Aug 20 19:52:45 2010 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:55:41 2010 -0700"
      },
      "message": "MAINTAINERS: Fix ozlabs.org mailing list addresses\n\nAll these lists moved to lists.ozlabs.org quite a while ago.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1ee41680572971e34d90d5f584daf33195ec6dcb",
      "tree": "f34cc8afcba020e0b47e676b5583e5d59fc26306",
      "parents": [
        "626115cda9a31d7618cfd5ca8928811e5947d360"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Aug 19 14:13:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:34:56 2010 -0700"
      },
      "message": "Documentation: kernel-locking: mutex_trylock cannot be used in interrupt context\n\nChapter 6 is right about mutex_trylock, but chapter 10 wasn\u0027t.  This error\nwas introduced during semaphore-to-mutex conversion of the Unreliable\nguide.  :-)\n\nIf user context which performs mutex_lock() or mutex_trylock() is\npreempted by interrupt context which performs mutex_trylock() on the same\nmutex instance, a deadlock occurs.  This is because these functions do not\ndisable local IRQs when they operate on mutex-\u003ewait_lock.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "626115cda9a31d7618cfd5ca8928811e5947d360",
      "tree": "32c72343734bd6088d10bfc00d13f0fcdcde0815",
      "parents": [
        "f3c072ad727617f00bffae17dba8cd895f5b7bdb"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Aug 19 14:13:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:34:56 2010 -0700"
      },
      "message": "drivers/scsi/qla4xxx: fix build\n\ngcc-4.0.2:\n\n  drivers/scsi/qla4xxx/ql4_os.c: In function \u0027qla4_8xxx_error_recovery\u0027:\n  drivers/scsi/qla4xxx/ql4_glbl.h:135: sorry, unimplemented: inlining failed in call to \u0027qla4_8xxx_set_drv_active\u0027: function body not available\n  drivers/scsi/qla4xxx/ql4_os.c:2377: sorry, unimplemented: called from here\n  drivers/scsi/qla4xxx/ql4_glbl.h:135: sorry, unimplemented: inlining failed in call to \u0027qla4_8xxx_set_drv_active\u0027: function body not available\n  drivers/scsi/qla4xxx/ql4_os.c:2393: sorry, unimplemented: called from here\n\nCc: Ravi Anand \u003cravi.anand@qlogic.com\u003e\nCc: Vikas Chaudhary \u003cvikas.chaudhary@qlogic.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3c072ad727617f00bffae17dba8cd895f5b7bdb",
      "tree": "adfc9f4da5f4ce01fb7e936bea2f6ec0ab9a68c4",
      "parents": [
        "8d6c83f0ba5e1bd1e8bb2e3c7de4c276dc247f99"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Thu Aug 19 14:13:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:34:55 2010 -0700"
      },
      "message": "uml: fix compile error in dma_get_cache_alignment()\n\nFix uml compile error:\n\n  include/linux/dma-mapping.h:145: error: redefinition of \u0027dma_get_cache_alignment\u0027\n  arch/um/include/asm/dma-mapping.h:99: note: previous definition of \u0027dma_get_cache_alignment\u0027 was here\n\nIntroduced by commit 4565f0170dfc (\"dma-mapping: unify\ndma_get_cache_alignment implementations\")\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d6c83f0ba5e1bd1e8bb2e3c7de4c276dc247f99",
      "tree": "58b777adffdaf754b97e6359a325bccdd8919346",
      "parents": [
        "b52723c5607f7684c2c0c075f86f86da0d7fb6d0"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu Aug 19 14:13:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 20 09:34:55 2010 -0700"
      },
      "message": "oom: __task_cred() need rcu_read_lock()\n\ndump_tasks() needs to hold the RCU read lock around its access of the\ntarget task\u0027s UID.  To this end it should use task_uid() as it only needs\nthat one thing from the creds.\n\nThe fact that dump_tasks() holds tasklist_lock is insufficient to prevent the\ntarget process replacing its credentials on another CPU.\n\nThen, this patch change to call rcu_read_lock() explicitly.\n\n\t\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\t[ INFO: suspicious rcu_dereference_check() usage. ]\n\t---------------------------------------------------\n\tmm/oom_kill.c:410 invoked rcu_dereference_check() without protection!\n\n\tother info that might help us debug this:\n\n\trcu_scheduler_active \u003d 1, debug_locks \u003d 1\n\t4 locks held by kworker/1:2/651:\n\t #0:  (events){+.+.+.}, at: [\u003cffffffff8106aae7\u003e]\n\tprocess_one_work+0x137/0x4a0\n\t #1:  (moom_work){+.+...}, at: [\u003cffffffff8106aae7\u003e]\n\tprocess_one_work+0x137/0x4a0\n\t #2:  (tasklist_lock){.+.+..}, at: [\u003cffffffff810fafd4\u003e]\n\tout_of_memory+0x164/0x3f0\n\t #3:  (\u0026(\u0026p-\u003ealloc_lock)-\u003erlock){+.+...}, at: [\u003cffffffff810fa48e\u003e]\n\tfind_lock_task_mm+0x2e/0x70\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "b52723c5607f7684c2c0c075f86f86da0d7fb6d0"
}
