)]}'
{
  "log": [
    {
      "commit": "c8da2f8dd86d70559ec4e50251f6a755b42bd5b4",
      "tree": "1991d27441d08a727160d75d7b2723b5514b19e1",
      "parents": [
        "371b2e348b7731a548b0a7432ca2ba32e90dd16f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Jul 21 12:00:27 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jul 21 12:00:27 2008 +0100"
      },
      "message": "dm log: make dm_dirty_log init and exit static\n\ndm_dirty_log_{init,exit}() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "a765e20eeb423d0fa6a02ffab51141e53bbd93cb",
      "tree": "fc7279fa73a21518373e1ba2efad27dab89a2214",
      "parents": [
        "2d1e580afe23287871529ce54429e249809525a1"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Apr 24 22:02:01 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:55 2008 +0100"
      },
      "message": "dm: move include files\n\nPublish the dm-io, dm-log and dm-kcopyd headers in include/linux.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "2a23aa1ddb1f0c9eef2c929c89565c387f6bf68b",
      "tree": "dc029b4230dc1282363a16d8a9d9126f1c9d7ffe",
      "parents": [
        "b8206bc3de0b0665d47655d270c18ea46aff5372"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Thu Apr 24 21:43:41 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:48 2008 +0100"
      },
      "message": "dm log: make module use tracking internal\n\nRemove internal module reference fields from the interface.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "b8206bc3de0b0665d47655d270c18ea46aff5372",
      "tree": "ae52f89c65b36f12887015104a37c4178303e889",
      "parents": [
        "416cd17b1982217bca3dc41b9f00b0b38fdaadad"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Apr 24 21:43:38 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:47 2008 +0100"
      },
      "message": "dm log: move register functions\n\nReorder a couple of functions in the file so the next patch is readable.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "416cd17b1982217bca3dc41b9f00b0b38fdaadad",
      "tree": "dcb73db9876f5b973ad26b47449083b98efad1b6",
      "parents": [
        "eb69aca5d3370b81450d68edeebc2bb9a3eb9689"
      ],
      "author": {
        "name": "Heinz Mauelshagen",
        "email": "hjm@redhat.com",
        "time": "Thu Apr 24 21:43:35 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:46 2008 +0100"
      },
      "message": "dm log: clean interface\n\nClean up the dm-log interface to prepare for publishing it in include/linux.\n\nSigned-off-by: Heinz Mauelshagen \u003chjm@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "22a1ceb1e6a7fbce95a1531ff10bb4fb036d4a37",
      "tree": "5b6ebebc747a0027626684a153b418a26119d074",
      "parents": [
        "e01fd7eeb00f8078103f4ed3e8ef64474c11f300"
      ],
      "author": {
        "name": "Heinz Mauelshagen",
        "email": "hjm@redhat.com",
        "time": "Thu Apr 24 21:43:17 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:43 2008 +0100"
      },
      "message": "dm io: clean interface\n\nClean up the dm-io interface to prepare for publishing it in include/linux.\n\nSigned-off-by: Heinz Mauelshagen \u003chjm@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "769aef30f0f505c44bbe9fcd2c911a052a386139",
      "tree": "8c9d8da4d1f173935d54398b1daf52df316fc3ca",
      "parents": [
        "b7fd54a70f99061721e604d72d940541e5b2b168"
      ],
      "author": {
        "name": "Heinz Mauelshagen",
        "email": "hjm@redhat.com",
        "time": "Thu Apr 24 21:43:09 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:39 2008 +0100"
      },
      "message": "dm log: move dirty region log code into separate module\n\nMove the dirty region log code into a separate module so\nother targets can share the code.\n\nSigned-off-by: Heinz Mauelshagen \u003chjm@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "b7fd54a70f99061721e604d72d940541e5b2b168",
      "tree": "177d9dfc5b0f2b9f79bf6708b41d904173712df4",
      "parents": [
        "c12bfc923ee02de5611730ddec087c11b3947038"
      ],
      "author": {
        "name": "Heinz Mauelshagen",
        "email": "hjm@redhat.com",
        "time": "Thu Apr 24 21:43:06 2008 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Apr 25 13:26:38 2008 +0100"
      },
      "message": "dm log: generalise name in messages\n\nChange dm-log.c messages from \"mirror log\" to \"dirty region log\" as\na new dm target wants to share this code.\n\nSigned-off-by: Heinz Mauelshagen \u003chjm@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "fb8b284806124bef250196007d7373ea3fe26194",
      "tree": "8e34cc38a2c5a0e8e7a937c53421cf7f76466a00",
      "parents": [
        "304f3f6a58301316da612d7bf21d9abe1369d456"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Fri Feb 08 02:11:19 2008 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Fri Feb 08 02:11:19 2008 +0000"
      },
      "message": "dm log: auto load modules\n\nIf the log type is not recognised, attempt to load the module\n\u0027dm-log-\u003ctype\u003e.ko\u0027.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "6b3df0d7a5e85ad2afd3eecc50e2dee59e876ae8",
      "tree": "d20f30d0a40d1162a6cc135dca31403ae38198e5",
      "parents": [
        "fe97e2aa0502922488ad62303a19a20c8044ae18"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Fri Oct 19 22:47:57 2007 +0100"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Sat Oct 20 02:01:21 2007 +0100"
      },
      "message": "dm log: split suspend\n\nThere are now two phases to a suspend in device-mapper -\npresuspend and postsuspend.  This patch removes the\nsingle \u0027suspend\u0027 in the logging API and replaces it with\n\u0027presuspend\u0027 and \u0027postsuspend\u0027 functions to align it\nbetter with core device-mapper.\n\nA subsequent patch will make use of \u0027presuspend\u0027.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "ba8b45cea5f632540d561d37d94c71c07f6af1aa",
      "tree": "03604401cd4162a16d1888b71e7d65c8cc14ec31",
      "parents": [
        "b997b82d266c9fb910fc2ad95b9bb93b3bccf9be"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Wed May 09 02:33:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:48 2007 -0700"
      },
      "message": "dm log: fix resume failed log device\n\nThis patch removes the possibility of having uninitialized log state if the\nlog device has failed.\n\nWhen a mirror resumes operation, it calls \u0027resume\u0027 on the logging module.  If\ndisk based logging is being used, the log device is read to fill in the log\nstate.  If the log device has failed, we cannot simply return, because this\nwould leave the in-memory log state uninitialized.  Instead, we assume all\nregions are out-of-sync and reset the log state.  Failure to do this could\nresult in the logging code reporting a region as in-sync, even though it\nisn\u0027t; which could result in a corrupted mirror.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d234d1e03d0a4cef4da32177be6657b45cc513f",
      "tree": "6f1cd0cedbd2a9ad276b1a92195f00925ce517fd",
      "parents": [
        "6cca1e7af543aa396b3e4919c251080741a49e69"
      ],
      "author": {
        "name": "Heinz Mauelshagen",
        "email": "heinzm@redhat.com",
        "time": "Wed May 09 02:33:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:47 2007 -0700"
      },
      "message": "dm log: update dm io interface\n\nThis patch ports dm-log.c to the new dm-io interface in order to make it\nscalable to have a large number of persistent dirty logs active in parallel.\n\nSigned-off-by: Heinz Mauelshagen \u003cheinzm@redhat.com\u003e\nCc: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "315dcc226f066c1d3cef79283dcde807fe0e32d1",
      "tree": "f3abf75905aec13819292564ef4c2711c8bf4b8d",
      "parents": [
        "01d03a660e73fb524957c09825a3eb7c2ae7c205"
      ],
      "author": {
        "name": "Jonathan E Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Wed May 09 02:32:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:47 2007 -0700"
      },
      "message": "dm log: report fault status\n\nThis patch reports the status of the log device so that userspace can detect\nthe error and take appropriate action.\n\nSigned-off-by: Jonathan E Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01d03a660e73fb524957c09825a3eb7c2ae7c205",
      "tree": "8f87a5b6b6e34f9baab8661c127bf427cb4eaf41",
      "parents": [
        "2cd54d9bedb79a97f014e86c0da393416b264eb3"
      ],
      "author": {
        "name": "Jonathan E Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Wed May 09 02:32:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:47 2007 -0700"
      },
      "message": "dm log: fault detection\n\nThis patch gives the disk logging code the ability to store the fact that an\nerror occured on the log device.  In addition, an event is raised when an\nerror is encountered during I/O to the log device.\n\nSigned-off-by: Jonathan E Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88b20a1a71d98d6e0b8373fa68fb784340b3ee51",
      "tree": "c6406a5e5502356bb86555703b52573372ba3b5a",
      "parents": [
        "f3ee6b2f621fec7bc8bfe43fb465e938c37c8d20"
      ],
      "author": {
        "name": "Jonathan E Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Fri Dec 08 02:41:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:29:09 2006 -0800"
      },
      "message": "[PATCH] dm: raid1: reset sync_search on resume\n\nReset sync_search on resume.  The effect is to retry syncing all out-of-sync\nregions when a mirror is resumed, including ones that previously failed.\n\nSigned-off-by: Jonathan E Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: dm-devel@redhat.com\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f3ee6b2f621fec7bc8bfe43fb465e938c37c8d20",
      "tree": "3d790014bbd3280fc7b0232dc212f4b34f06092f",
      "parents": [
        "31c93a0c29bf96efd806ccf4ee81cacf04f255de"
      ],
      "author": {
        "name": "Jonathan E Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Fri Dec 08 02:41:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:29:09 2006 -0800"
      },
      "message": "[PATCH] dm: log: rename complete_resync_work\n\nThe complete_resync_work function only provides the ability to change an\nout-of-sync region to in-sync.  This patch enhances the function to allow us\nto change the status from in-sync to out-of-sync as well, something that is\nneeded when a mirror write to one of the devices or an initial resync on a\ngiven region fails.\n\nSigned-off-by: Jonathan E Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: dm-devel@redhat.com\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "72d9486169a2a8353e022813185ba2f32d7dde69",
      "tree": "2fe6c382feb3f21d829abf543c54be486007557c",
      "parents": [
        "5c6bd75d06db512515a3781aa97e42df2faf0815"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 26 00:27:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:36 2006 -0700"
      },
      "message": "[PATCH] dm: improve error message consistency\n\nTidy device-mapper error messages to include context information\nautomatically.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8a835f11bce68ed990533e49b5dedb00bee46d71",
      "tree": "8311b7c5b722fdf1a2b1c7267098ca0c05bd9a54",
      "parents": [
        "29121bd0b00ebb9524971a583fea4a2f7afe8041"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 26 00:27:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:35 2006 -0700"
      },
      "message": "[PATCH] dm mirror log: sync_count fix\n\nWhen a mirror is reduced in size, clear the part of the bitmap that is no\nlonger used.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "29121bd0b00ebb9524971a583fea4a2f7afe8041",
      "tree": "499be8e6dea167fd9a17ccce11467d6bdd1c40dc",
      "parents": [
        "b7cca195c4cc051210f3e60a859b779ca833a2e4"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 26 00:27:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:35 2006 -0700"
      },
      "message": "[PATCH] dm mirror log: bitset_size fix\n\nFix the \u0027sizeof\u0027 in the region log bitmap size calculation: it\u0027s uint32_t, not\nunsigned long - this breaks on some archs.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b7cca195c4cc051210f3e60a859b779ca833a2e4",
      "tree": "f9d7f2cc386c90214eaec2617715365708118bdc",
      "parents": [
        "702ca6f0be9ef95087ee2c9f31e6517492554483"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Jun 26 00:27:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:35 2006 -0700"
      },
      "message": "[PATCH] dm mirror log: refactor context\n\nRefactor the code that creates the core and disk log contexts to avoid the\nrepeated allocation of clean_bits introduced by the last patch.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "702ca6f0be9ef95087ee2c9f31e6517492554483",
      "tree": "e59b9a1e71e68a9f0230d12a10931b60da1ac9c4",
      "parents": [
        "143535396c7ebd9395a931a000b3963f457712b8"
      ],
      "author": {
        "name": "Kevin Corry",
        "email": "kevcorry@us.ibm.com",
        "time": "Mon Jun 26 00:27:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:35 2006 -0700"
      },
      "message": "[PATCH] dm mirror log: sector size fix\n\nOn-disk logs for dm-mirror devices are currently hard-coded to use 512 byte\nhard-sector-sizes.  This patch fixes dm-log so it will work with devices with\nnon-512-byte hard-sector-sizes.\n\nTo maintain full compatibility, instead of moving the clean-bits bitset to a\nbitset, and enlarges the disk-header buffer to encompass both the header and\nthe bitset.  The I/O routines for the bitset are removed, and the I/O routines\nfor the disk-header now also read/write the bitset.\n\nSigned-off-by: Kevin Corry \u003ckevcorry@us.ibm.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1113a7e92e483074c6235da59460759e33b9b144",
      "tree": "632a2eded0668e9ce925ccae721feaf387364cff",
      "parents": [
        "35849c75d7750a254119c1a4b88c90156919df2a"
      ],
      "author": {
        "name": "Stefan Bader",
        "email": "shbader@de.ibm.com",
        "time": "Thu Feb 02 14:28:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Feb 02 15:07:13 2006 -0800"
      },
      "message": "[PATCH] device-mapper log bitset: fix big endian find_next_zero_bit\n\nThis is a fix to the device-mapper-log-bitset-fix-endian patch that\nswitched to ext2_* versions of the set and clear bit functions.  The\nfind_next_zero_bit function also has to be the ext2 one.  Otherwise the\nmirror target tries to recover non-existent regions beyond the end of\ndevice.\n\nSigned-off-by: Stefan Bader \u003cshbader@de.ibm.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a4fc4717fc55a3bcd3cfdafa285b7af164b83051",
      "tree": "bce42a0cc5a6675ab50fb6b525e4418b66863fdf",
      "parents": [
        "aa14edeb994f8f7e223d02ad14780bf2fa719f6d"
      ],
      "author": {
        "name": "Patrick Caulfield",
        "email": "pcaulfie@redhat.com",
        "time": "Wed Feb 01 03:04:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 08:53:10 2006 -0800"
      },
      "message": "[PATCH] device-mapper log bitset: fix endian\n\nClean up the code responsible for the on-disk mirror logs by using the\nset_le_bit test_le_bit functions of ext2.  That makes the BE machines keep the\nbitmap internally in LE order - it does mean you can\u0027t use any other type of\noperations on the bitmap words but that looks to be OK in this instance.  The\nefficiency tradeoff is very minimal as you would expect for something that\next2 uses.\n\nThis allows us to remove bits_to_core(), bits_to_disk() and log-\u003edisk_bits.\n\nAlso increment the mirror log disk version transparently to avoid sharing with\nolder kernels that suffered from the 64-bit BE bug.\n\nSigned-off-by: Patrick Caulfield \u003cpcaulfie@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ac81b2ee45eb811fdb0aa1cfb71d468d944d00ce",
      "tree": "68ec667534f7669e60aadc09115f67fb0caf5fbe",
      "parents": [
        "9d3520a339d62f942085e9888f66905eb8b350bd"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "djwong@us.ibm.com",
        "time": "Fri Jan 06 00:20:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:34:01 2006 -0800"
      },
      "message": "[PATCH] make dm-mirror not issue invalid resync requests\n\nI\u0027ve been attempting to set up a (Host)RAID mirror with dm_mirror on\n2.6.14.3, and I\u0027ve been having a strange little problem.  The configuration\nin question is a set of 9GB SCSI disks that have 17942584 sectors.  I set\nup the dm_mirror table as such:\n\n0 17942528 mirror core 2 2048 nosync 2 8:48 0 8:64 0\n\nIf I\u0027m not mistaken, this sets up a 9GB RAID1 mriror with 1MB stripes\nacross both SCSI disks.  The sector count of the dm device is less than the\nsize of the disks, so we shouldn\u0027t fall off the end.  However, I always get\nthe messages like this in dmesg when I set up the dm table:\n\nattempt to access beyond end of device\nsdd: rw\u003d0, want\u003d17958656, limit\u003d17942584\n\nClearly, something is trying to read sectors past the end of the drive.  I\ntraced it down to the __rh_recovery_prepare function in dm-raid1.c, which\ngets called when we\u0027re putting the mirror set together.  This function\ncalls the dirty region log\u0027s get_resync_work function to see if there\u0027s any\nresync that needs to be done, and queues up any areas that are out of sync.\n The log\u0027s get_resync_work function is actually a pointer to the\ncore_get_resync_work function in dm-log.c.\n\nThe core_get_resync_work function queries a bitset lc-\u003esync_bits to find\nout if there are any regions that are out of date (i.e.  the bit is 0),\nwhich is where the problem occurs.  If every bit in lc-\u003esync_bits is 1\n(which is the case when we\u0027ve just configured a new RAID1 with the nosync\noption), the find_next_zero_bit does NOT return the size parameter\n(lc-\u003eregion_count in this case), it returns the size parameter rounded up\nto the nearest multiple of 32!  I don\u0027t know if this is intentional, but\ni386 and x86_64 both exhibit this behavior.\n\nIn any case, the statement \"if (*region \u003d\u003d lc-\u003eregion_count)\" looks like\nit\u0027s supposed to catch the case where are no regions to resync and\nreturn 0.  Since find_next_zero_bit apparently has a habit of returning\na value that\u0027s larger than lc-\u003eregion_count, the enclosed patch changes\nthe equality test to a greater-than test so that we don\u0027t try to resync\nareas outside of the RAID1 region.  Seeing as the HostRAID metadata\nlives just past the end of the RAID1 data, mucking around in that area\nis not a good idea.\n\nI suppose another way to fix this would be to amend find_next_zero_bit so\nthat it doesn\u0027t return values larger than \"size\", but I don\u0027t know if\nthere\u0027s a reason for the current behavior.\n\nSigned-Off-By: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nAcked-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0e56822d30184d0da35a6ecc51f38c4ceb457a80",
      "tree": "a9ee18ce0e724f16dde3c5c97af67fb3a92701f7",
      "parents": [
        "c4cc66351a24da5feec298be2da59a85f68dd3ea"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Mon Nov 21 21:32:34 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Nov 22 09:14:31 2005 -0800"
      },
      "message": "[PATCH] device-mapper: mirror log bitset fix\n\nThe linux bitset operators (test_bit, set_bit etc) work on arrays of \"unsigned\nlong\".  dm-log uses such bitsets but treats them as arrays of uint32_t, only\nallocating and zeroing a multiple of 4 bytes (as \u0027clean_bits\u0027 is a uint32_t).\n\nThe patch below fixes this problem.\n\nThe problem is specific to 64-bit big endian machines such as s390x or ppc-64\nand can prevent pvmove terminating.\n\nIn the simplest case, if \"region_count\" were (say) 30, then\nbitset_size (below) would be 4 and bitset_uint32_count would be 1.\nThus the memory for this butset, after allocation and zeroing would\nbe\n   0 0 0 0 X X X X\nOn a bigendian 64bit machine, bit 0 for this bitset is in the 8th\nbyte! (and every bit that dm-log would use would be in the X area).\n\n   0 0 0 0 X X X X\n                 ^\n                 here\n\nwhich hasn\u0027t been cleared properly.\n\nAs the dm-raid1 code only syncs and counts regions which have a 0 in the\n\u0027sync_bits\u0027 bitset, and only finishes when it has counted high enough, a large\nnumber of 1\u0027s among those \u0027X\u0027s will cause the sync to not complete.\n\nIt is worth noting that the code uses the same bitsets for in-memory and\non-disk logs.  As these bitsets are host-endian and host-sized, this means\nthat they cannot safely be moved between computers with\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
