)]}'
{
  "log": [
    {
      "commit": "709ae4879ae33628ded276ce7da8cd5acfec476b",
      "tree": "db9714769f0b7d9b764eaf26ca51185519ae07bc",
      "parents": [
        "6eef4b21ffc9207b78fdd718154f5b004644b97d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Dec 14 12:49:51 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Dec 14 12:51:41 2009 +1100"
      },
      "message": "md/raid1: add takeover support for raid5-\u003eraid1\n\nA 2-device raid5 array can now be converted to raid1.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "070ec55d07157a3041f92654135c3c6e2eaaf901",
      "tree": "10f24d859e669ba4a671204ce4176a2b43fdaae5",
      "parents": [
        "a6b3deafe0c50e3e873e8ed5cc8abfcb25c05eff"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Jun 16 16:54:21 2009 +1000"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Jun 16 16:54:21 2009 +1000"
      },
      "message": "md: remove mddev_to_conf \"helper\" macro\n\nHaving a macro just to cast a void* isn\u0027t really helpful.\nI would must rather see that we are simply de-referencing -\u003eprivate,\nthan have to know what the macro does.\n\nSo open code the macro everywhere and remove the pointless cast.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "bff61975b3d6c18ee31457cc5b4d73042f44915f",
      "tree": "3aff48088b35172e74f56ae54f0b53e76a0c2150",
      "parents": [
        "92022950c6b1bb3da90b2976b20271cdfd98b8a3"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "message": "md: move lots of #include lines out of .h files and into .c\n\nThis makes the includes more explicit, and is preparation for moving\nmd_k.h to drivers/md/md.h\n\nRemove include/raid/md.h as its only remaining use was to #include\nother files.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "ef740c372dfd80e706dbf955d4e4aedda6c0c148",
      "tree": "8d9ef9db346ee1ba319a125c9de83cdde049510d",
      "parents": [
        "2a40a8aed083d988df6822bb9b1b08fb7ce21e1d"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Mar 31 14:27:03 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:27:03 2009 +1100"
      },
      "message": "md: move headers out of include/linux/raid/\n\nMove the headers with the local structures for the disciplines and\nbitmap.h into drivers/md/ so that they are more easily grepable for\nhacking and not far away.  md.h is left where it is for now as there\nare some uses from the outside.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "11ce99e625fe2718ad2682bfdd99070b337e6252",
      "tree": "48e40104a058f27e9cd717c42edcf6738fef2372",
      "parents": [
        "867868fb557eb2a2120b80779468fa372584ddb0"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: Remove working_disks from raid1 state data\n\nIt is equivalent to conf-\u003eraid_disks - conf-\u003emddev-\u003edegraded.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9e71f9c848e669f003b1319da52f03cb8e7d7403",
      "tree": "3c873cce6b2d5da5237be20fe98124e8f4968d4d",
      "parents": [
        "e9028b0ff2bad1954568604dc17725692c8524d6"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Mar 23 02:59:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:03 2006 -0800"
      },
      "message": "[PATCH] DM: Fix bug: BIO_RW_BARRIER requests to md/raid1 hang.\n\nBoth R1BIO_Barrier and R1BIO_Returned are 4 !!!!\n\nThis means that barrier requests don\u0027t get returned (i.e.  b_endio called)\nbecause it looks like they already have been.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cf30a473a02901fe4db37abc0b0fa26dd5ba3f72",
      "tree": "3fa967963e174913826943f0f98e63c60032d07d",
      "parents": [
        "69382e85371c232df71524137a806b9c210ec021"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Jan 06 00:20:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:34:04 2006 -0800"
      },
      "message": "[PATCH] md: handle errors when read-only\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ddaf22abaa831763e75775e6d4c7693504237997",
      "tree": "4f6ba4cb056f8c7cea82c7d548769b879d0fb405",
      "parents": [
        "d69762e98456b71167865db9e33e732a28dd36ab"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Jan 06 00:20:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:34:03 2006 -0800"
      },
      "message": "[PATCH] md: attempt to auto-correct read errors in raid1\n\nOn a read-error we suspend the array, then synchronously read the block from\nother arrays until we find one where we can read it.  Then we try writing the\ngood data back everywhere and make sure it works.  If any write or subsequent\nread fails, only then do we fail the device out of the array.\n\nTo be able to suspend the array, we need to also keep track of how many\nrequests are queued for handling by raid1d.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "17999be4aa408e7ff3b9d32c735649676567a3cd",
      "tree": "14f9fd4ef0299f16274ce2980baef7b96f111bea",
      "parents": [
        "ac81b2ee45eb811fdb0aa1cfb71d468d944d00ce"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Jan 06 00:20:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:34:01 2006 -0800"
      },
      "message": "[PATCH] md: improve raid1 \"IO Barrier\" concept\n\nraid1 needs to put up a barrier to new requests while it does resync or other\nbackground recovery.  The code for this is currently open-coded, slighty\nobscure by its use of two waitqueues, and not documented.\n\nThis patch gathers all the related code into 4 functions, and includes a\ncomment which (hopefully) explains what is happening.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a9701a30470856408d08657eb1bd7ae29a146190",
      "tree": "eb6ea8c82fdc1b50bf56abadeee63a935034cf27",
      "parents": [
        "bd926c63b7a6843d3ce2728396c0891e54fce5c4"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:34 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: support BIO_RW_BARRIER for md/raid1\n\nWe can only accept BARRIER requests if all slaves handle\nbarriers, and that can, of course, change with time....\n\nSo we keep track of whether the whole array seems safe for barriers,\nand also whether each individual rdev handles barriers.\n\nWe initially assumes barriers are OK.\n\nWhen writing the superblock we try a barrier, and if that fails, we flag\nthings for no-barriers.  This will usually clear the flags fairly quickly.\n\nIf writing the superblock finds that BIO_RW_BARRIER is -ENOTSUPP, we need to\nresubmit, so introduce function \"md_super_wait\" which waits for requests to\nfinish, and retries ENOTSUPP requests without the barrier flag.\n\nWhen writing the real raid1, write requests which were BIO_RW_BARRIER but\nwhich aresn\u0027t supported need to be retried.  So raid1d is enhanced to do this,\nand when any bio write completes (i.e.  no retry needed) we remove it from the\nr1bio, so that devices needing retry are easy to find.\n\nWe should hardly ever get -ENOTSUPP errors when writing data to the raid.\nIt should only happen if:\n  1/ the device used to support BARRIER, but now doesn\u0027t.  Few devices\n     change like this, though raid1 can!\nor\n  2/ the array has no persistent superblock, so there was no opportunity to\n     pre-test for barriers when writing the superblock.\n\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b6d287f627b5fb6a49f78f9e81649ff98c62bb7",
      "tree": "7b6cbc6a997e25a7fb6185da7129e539c4ffda8b",
      "parents": [
        "8ddf9efe6708f3674f0ddfeb6425fd27bea109a2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:10 2005 -0700"
      },
      "message": "[PATCH] md: add write-behind support for md/raid1\n\nIf a device is flagged \u0027WriteMostly\u0027 and the array has a bitmap, and the\nbitmap superblock indicates that write_behind is allowed, then write_behind is\nenabled for WriteMostly devices.\n\nWrite requests will be acknowledges as complete to the caller (via b_end_io)\nwhen all non-WriteMostly devices have completed the write, but will not be\ncleared from the bitmap until all devices complete.\n\nThis requires memory allocation to make a local copy of the data being\nwritten.  If there is insufficient memory, then we fall-back on normal write\nsemantics.\n\nSigned-Off-By: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "191ea9b2c7cc3ebbe0678834ab710d7d95ad3f9a",
      "tree": "25ccd0d191742f4e25f37784370520d254aacc12",
      "parents": [
        "aa3163f81654fa057039258e32a6811147bf0c14"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:46 2005 -0700"
      },
      "message": "[PATCH] md: raid1 support for bitmap intent logging\n\nSigned-off-by: Neil Brown \u003cneilb@cse.unsw.edu.au\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"
    }
  ]
}
