)]}'
{
  "log": [
    {
      "commit": "787453c2397edcc3261efebb661739acd8c38547",
      "tree": "41855815ebfb6332485ac1ca30b43308c66da0e0",
      "parents": [
        "fd9d49cac46f5758d513ccf831b599dd4412546f"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:43 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:40 2005 -0800"
      },
      "message": "[PATCH] md: complete conversion of md to use kthreads\n\nThere are a few loose ends following the conversion of md to use kthreads:\n\n- Some fields in mdk_thread_t that aren\u0027t needed (kthreads does it\u0027s own\n  completion and manages it\u0027s own name).\n\n- thread-\u003erun is now never NULL, so no need to check\n\n- Some tests for signal_pending that aren\u0027t needed (As we don\u0027t use signals\n  to stop threads any more)\n\n- Some flush_signals are not needed\n\n- Some waits are interruptible and don\u0027t need to be.\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": "bd926c63b7a6843d3ce2728396c0891e54fce5c4",
      "tree": "38f7083a733e9b31efe69616c5fa3448c74c1320",
      "parents": [
        "b2d444d7ad975d555bb919601bcdc0e58975a40e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:32 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: make md on-disk bitmaps not host-endian\n\nCurrent bitmaps use set_bit et.al and so are host-endian, which means\nnot-portable.  Oops.\n\nDefine a new version number (4) for which bitmaps are little-endian.\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": "b2d444d7ad975d555bb919601bcdc0e58975a40e",
      "tree": "963a29258af95f05dd28d9de0180ac9ef533aeed",
      "parents": [
        "ba22dcbf106338a5c46d6979f9b19564faae3d49"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:31 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: convert \u0027faulty\u0027 and \u0027in_sync\u0027 fields to bits in \u0027flags\u0027 field\n\nThis has the advantage of removing the confusion caused by \u0027rdev_t\u0027 and\n\u0027mddev_t\u0027 both having \u0027in_sync\u0027 fields.\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": "ba22dcbf106338a5c46d6979f9b19564faae3d49",
      "tree": "4caae4532cda0412d2446eca8b036d4e0df447f8",
      "parents": [
        "007583c9253fed363a0bd71b039e9b40a0f6855e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:31 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: improvements to raid5 handling of read errors\n\nTwo refinements to the \u0027attempt-overwrite-on-read-error\u0027 mechanism.\n1/ If the array is read-only, don\u0027t attempt an over-write.\n2/ If there are more than max_nr_stripes read errors on a device with\n   no success, fail the drive.  This will make sure a dead\n   drive will be eventually kicked even when we aren\u0027t trying\n   to rewrite (which would normally kick a dead drive more quickly.\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": "007583c9253fed363a0bd71b039e9b40a0f6855e",
      "tree": "f47d3fd94830ae2c09d7d821e8a57ba46ecb13bc",
      "parents": [
        "31399d9e56abeec4d819f07eefc97f30b5d5ed75"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:30 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: change raid5 sysfs attribute to not create a new directory\n\nThere isn\u0027t really a need for raid5 attributes to be an a subdirectory,\nso this patch moves them from\n  /sys/block/mdX/md/raid5/attribute\nto\n  /sys/block/mdX/md/attribute\n\nThis suggests that all md personalities should co-operate about\nnamespace usage, but that shouldn\u0027t be a problem.\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": "9d88883e68f404d5581bd391713ceef470ea53a9",
      "tree": "09217a737ca91fb1d105df601741a61e141d4946",
      "parents": [
        "24dd469d728dae07f40c5d79ea6dedd38cdf1a30"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:26 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:37 2005 -0800"
      },
      "message": "[PATCH] md: teach raid5 the difference between \u0027check\u0027 and \u0027repair\u0027.\n\nWith this, raid5 can be asked to check parity without repairing it.  It also\nkeeps a count of the number of incorrect parity blocks found (mismatches) and\nreports them through sysfs.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "24dd469d728dae07f40c5d79ea6dedd38cdf1a30",
      "tree": "3975aaeaa6c1cd77a2d4b06184ad3bd0175a44a5",
      "parents": [
        "3f294f4fb6f2ba887b717674da26c21f3d57f3fc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:26 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:37 2005 -0800"
      },
      "message": "[PATCH] md: allow a manual resync with md\n\nYou can trigger a \u0027check\u0027 with\n  echo check \u003e /sys/block/mdX/md/scan_mode\nor a check-and-repair errors with\n  echo repair \u003e /sys/block/mdX/md/scan_mode\n\nand read the current state from the same file.\n\nNote: personalities need to know the different between \u0027check\u0027 and \u0027repair\u0027,\nbut don\u0027t yet.  Until they do, \u0027check\u0027 will be the same as \u0027repair\u0027 and will\njust do a normal resync pass.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3f294f4fb6f2ba887b717674da26c21f3d57f3fc",
      "tree": "fd73f58a4d5c7261994127b0c46f04e33ee26d66",
      "parents": [
        "86e6ffdd243a06663713e637ee683fb27dce8e0c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:25 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:37 2005 -0800"
      },
      "message": "[PATCH] md: add kobject/sysfs support to raid5\n\n/sys/block/mdX/md/raid5/\ncontains raid5-related attributes.\nCurrently\n  stripe_cache_size\nis number of entries in stripe cache, and is settable.\n  stripe_cache_active\nis number of active entries, and in only readable.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "86e6ffdd243a06663713e637ee683fb27dce8e0c",
      "tree": "d6bc5f26aff6b1a506ad04d8d605d92cfd19162f",
      "parents": [
        "eae1701fbd264cfc7efbaf7cd4cd999760070e27"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:24 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:37 2005 -0800"
      },
      "message": "[PATCH] md: extend md sysfs support to component devices.\n\nEach device in an md array how has a corresponding\n  /sys/block/mdX/md/devNN/\ndirectory which can contain attributes.  Currently there is only \u0027state\u0027 which\nsummarises the state, nd \u0027super\u0027 which has a copy of the superblock, and\n\u0027block\u0027 which is a symlink to the block device.\n\nAlso, /sys/block/mdX/md/rdNN represents slot \u0027NN\u0027 in the array, and is a\nsymlink to the relevant \u0027devNN\u0027.  Obviously spare devices do not have a slot\nin the array, and so don\u0027t have such a symlink.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eae1701fbd264cfc7efbaf7cd4cd999760070e27",
      "tree": "6605cca37d4c605217b7accffe7f94f81d37f0dd",
      "parents": [
        "4e5314b56a7ea11c7a5f2b8418992b2f49648a25"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:23 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:36 2005 -0800"
      },
      "message": "[PATCH] md: initial sysfs support for md\n\nStart using kobjects in mddevs, and provide a couple of simple attributes\n(level and disks).  Attributes live in\n  /sys/block/mdX/md/attr-name\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e5314b56a7ea11c7a5f2b8418992b2f49648a25",
      "tree": "58b0c604f4f4e55523d2c93971f79d80e406b9ce",
      "parents": [
        "703ebe86a999861e833be4015aaf552837e9613a"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:22 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:36 2005 -0800"
      },
      "message": "[PATCH] md: better handling of readerrors with raid5.\n\nThis patch changes the behaviour of raid5 when it gets a read error.\nInstead of just failing the device, it tried to find out what should have\nbeen there, and writes it over the bad block.  For some media-errors, this\nhas a reasonable chance of fixing the error.  If the write succeeds, and a\nsubsequent read succeeds as well, raid5 decided the address is OK and\nconitnues.\n\nInstead of failing a drive on read-error, we attempt to re-write the block,\nand then re-read.  If that all works, we allow the device to remain in the\narray.\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": "72626685dc66d455742a7f215a0535c551628b9e",
      "tree": "91e19a61a5a3b782007132b6b2e353e8936dd656",
      "parents": [
        "0002b2718dd04da67c21f8a7830de8d95a9b0345"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:12 2005 -0700"
      },
      "message": "[PATCH] md: add write-intent-bitmap support to raid5\n\nMost awkward part of this is delaying write requests until bitmap updates have\nbeen flushed.\n\nTo achieve this, we have a sequence number (seq_flush) which is incremented\neach time the raid5 is unplugged.\n\nIf the raid thread notices that this has changed, it flushes bitmap changes,\nand assigned the value of seq_flush to seq_write.\n\nWhen a write request arrives, it is given the number from seq_write, and that\nwrite request may not complete until seq_flush is larger than the saved seq\nnumber.\n\nWe have a new queue for storing stripes which are waiting for a bitmap flush\nand an extra flag for stripes to record if the write was \u0027degraded\u0027 and so\nshould not clear the a bit in the bitmap.\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": "0002b2718dd04da67c21f8a7830de8d95a9b0345",
      "tree": "c84f916df71293e0e15643a8a07d9508d1404395",
      "parents": [
        "773f7834425e83144c95fbbc553ced3c2b74b828"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:12 2005 -0700"
      },
      "message": "[PATCH] md: limit size of sb read/written to appropriate amount\n\nversion-1 superblocks are not (normally) 4K long, and can be of variable size.\n Writing the full 4K can cause corruption (but only in non-default\nconfigurations).\n\nWith this patch the super-block-flavour can choose a size to read, and set a\nsize to write based on what it finds.\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": "773f7834425e83144c95fbbc553ced3c2b74b828",
      "tree": "0552618b3a63395e2a69c69f177c7bdef92576a9",
      "parents": [
        "ab904d634625ef8dc590240b7ee06c7b724e636b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:12 2005 -0700"
      },
      "message": "[PATCH] md: remove old cruft from md_k.h header file\n\nThese inlines haven\u0027t been used for ages, they should go.\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": "71c0805cb48462c99fbe0e5fcc6c12d7b9929c09",
      "tree": "a6234c60b036ba05807bf649ffa7cf56eda13574",
      "parents": [
        "7b1e35f6d666693e8f376ce02242efca3ec09aaf"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:51 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:11 2005 -0700"
      },
      "message": "[PATCH] md: allow md to load a superblock with feature-bit \u00271\u0027 set\n\nAs this is used to flag an internal bitmap.\n\nAlso, introduce symbolic names for feature bits.\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": "15945fee6f09bff1f86b1a735b5888dc59cf38e3",
      "tree": "ed2f66ceccfa30867035e7ba7be46159e97e4e4d",
      "parents": [
        "4b6d287f627b5fb6a49f78f9e81649ff98c62bb7"
      ],
      "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: support md/linear array with components greater than 2 terabytes.\n\nlinear currently uses division by the size of the smallest componenet device\nto find which device a request goes to.  If that smallest device is larger\nthan 2 terabytes, then the division will not work on some systems.\n\nSo we introduce a pre-shift, and take care not to make the hash table too\nlarge, much like the code in raid0.\n\nAlso get rid of conf-\u003enr_zones, which is not needed.\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": "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": "8ddf9efe6708f3674f0ddfeb6425fd27bea109a2",
      "tree": "90862c8fa9f04cf98423b3da1b2c5d1f01a7310d",
      "parents": [
        "36fa30636fb84b209210299684e1be66d9e58217"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:45 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:10 2005 -0700"
      },
      "message": "[PATCH] md: support write-mostly device in raid1\n\nThis allows a device in a raid1 to be marked as \"write mostly\".  Read requests\nwill only be sent if there is no other option.\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": "36fa30636fb84b209210299684e1be66d9e58217",
      "tree": "28a7473238932f1e7ade1a5a5ec67a113b6d6205",
      "parents": [
        "6a07997fc34ac15a1c5dc650285d79b7604a2276"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:45 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:10 2005 -0700"
      },
      "message": "[PATCH] md: all hot-add and hot-remove of md intent logging bitmaps\n\nBoth file-bitmaps and superblock bitmaps are supported.\n\nIf you add a bitmap file on the array device, you lose.\n\nThis introduces a \u0027default_bitmap_offset\u0027 field in mddev, as the ioctl used\nfor adding a superblock bitmap doesn\u0027t have room for giving an offset.  Later,\nthis value will be setable via sysfs.\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": "6b8b3e8a8b3e62b4209eaa36697e3c9df457e196",
      "tree": "8b537e5b358cbe93cd8e8ea54a9281d56a7ce205",
      "parents": [
        "e3b9703e27aab3839dcdb76b00d98428b67d25b0"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Aug 04 12:53:35 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 04 13:00:54 2005 -0700"
      },
      "message": "[PATCH] md: make sure md bitmap updates are flushed when array is stopped.\n\nThe recent change to never ignore the bitmap, revealed that the bitmap isn\u0027t\nbegin flushed properly when an array is stopped.\n\nWe call bitmap_daemon_work three times as there is a three-stage pipeline for\nflushing updates to the bitmap file.\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": "6a806c510de490318846b53bbfec463d02ca274b",
      "tree": "7018abfd9db7856708bc2c578f48c30eab8855b1",
      "parents": [
        "a1287ba1ba810aae1f8b81e32560d5d3bf3ff9f0"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Jul 15 03:56:35 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 15 09:54:51 2005 -0700"
      },
      "message": "[PATCH] md/raid1: clear bitmap when fullsync completes\n\nWe need to be careful differentiating between a resync of a complete array,\nin which we can clear the bitmap, and a resync of a degraded array, in\nwhich we cannot.\n\nThis patch cleans all that up.\n\nCc: 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": "39730960d94306d7be414e8d54f4e5c071af1278",
      "tree": "e12516ecea53d782f845717f53ffa304be69aa37",
      "parents": [
        "7bfa19f2748000d646dbdf8f48258cfe1d257b52"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:47 2005 -0700"
      },
      "message": "[PATCH] Two small fixes for md verion-1 superblocks.\n\n1/ Must typecast int to (sector_t) before inverting or we\n might not invert enough bits.\n\n2/ When \"bitmap_offset\" was added to mdp_superblock_1, we didn\u0027t increase\n   the count of words-used (96 to 100).\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": "7bfa19f2748000d646dbdf8f48258cfe1d257b52",
      "tree": "2f7e6b0a0cba4ac01d7809224023a7dc73b94840",
      "parents": [
        "a654b9d8f851f4ca02649d5825cbe6c608adb10c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:47 2005 -0700"
      },
      "message": "[PATCH] md: allow md to update multiple superblocks in parallel.\n\ncurrently, md updates all superblocks (one on each device) in series.  It\nwaits for one write to complete before starting the next.  This isn\u0027t a big\nproblem as superblock updates don\u0027t happen that often.\n\nHowever it is neater to do it in parallel, and if the drives in the array have\ngone to \"sleep\" after a period of idleness, then waking them is parallel is\nfaster (and someone else should be worrying about power drain).\n\nFuther, we will need parallel superblock updates for a future patch which\nkeeps the intent-logging bitmap near the superblock.\n\nAlso remove the silly code that retired superblock updates 100 times.  This\nsimply never made sense.\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": "a654b9d8f851f4ca02649d5825cbe6c608adb10c",
      "tree": "747301647f619a9f1dd48f4d6be96b5e35d2484c",
      "parents": [
        "3d310eb7b3df1252e8595d059d982b0a9825a137"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:47 2005 -0700"
      },
      "message": "[PATCH] md: allow md intent bitmap to be stored near the superblock.\n\nThis provides an alternate to storing the bitmap in a separate file.  The\nbitmap can be stored at a given offset from the superblock.  Obviously the\ncreator of the array must make sure this doesn\u0027t intersect with data....\nAfter is good for version-0.90 superblocks.\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": "3d310eb7b3df1252e8595d059d982b0a9825a137",
      "tree": "9bca5e7eaa437d60010c1745b9aeb9592439d482",
      "parents": [
        "41158c7eb22312cfaa256744e1553bb4042ff085"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:46 2005 -0700"
      },
      "message": "[PATCH] md: fix deadlock due to md thread processing delayed requests.\n\nBefore completing a \u0027write\u0027 the md superblock might need to be updated.\nThis is best done by the md_thread.\n\nThe current code schedules this up and queues the write request for later\nhandling by the md_thread.\n\nHowever some personalities (Raid5/raid6) will deadlock if the md_thread\ntries to submit requests to its own array.\n\nSo this patch changes things so the processes submitting the request waits\nfor the superblock to be written and then submits the request itself.\n\nThis fixes a recently-created deadlock in raid5/raid6\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": "41158c7eb22312cfaa256744e1553bb4042ff085",
      "tree": "21c28e0630d66fc32d758993299a78088a846562",
      "parents": [
        "289e99e8ed8f36e386bf7de49947311c17ae1482"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:46 2005 -0700"
      },
      "message": "[PATCH] md: optimise reconstruction when re-adding a recently failed drive.\n\nWhen an array is degraded, bit in the intent-bitmap are never cleared.  So if\na recently failed drive is re-added, we only need to reconstruct the block\nthat are still reflected in the bitmap.\n\nThis patch adds support for this re-adding.\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": "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": "77ad4bc706fe6c52ab953f31c287a6af712d080c",
      "tree": "6823261d0e111a93c5190ebb1f2ecd8c4905a559",
      "parents": [
        "bfb39fba4e8cdda091f9ebee29fbb8331c4bb605"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:45 2005 -0700"
      },
      "message": "[PATCH] md: enable the bitmap write-back daemon and wait for it.\n\nCurrently we don\u0027t wait for updates to the bitmap to be flushed to disk\nproperly.  The infrastructure all there, but it isn\u0027t being used....\n\nA separate kernel thread (bitmap_writeback_daemon) is needed to wait for each\npage as we cannot get callbacks when a page write completes.\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": "32a7627cf3a35396a8e834faf34e38ae9f3b1309",
      "tree": "3fe7764f5d8e39d835a397e1099358d924b02981",
      "parents": [
        "57afd89f98a990747445f01c458ecae64263b2f8"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:43 2005 -0700"
      },
      "message": "[PATCH] md: optimised resync using Bitmap based intent logging\n\nWith this patch, the intent to write to some block in the array can be logged\nto a bitmap file.  Each bit represents some number of sectors and is set\nbefore any update happens, and only cleared when all writes relating to all\nsectors are complete.\n\nAfter an unclean shutdown, information in this bitmap can be used to optimise\nresync - only sectors which could be out-of-sync need to be updated.\n\nAlso if a drive is removed and then added back into an array, the recovery can\nmake use of the bitmap to optimise reconstruction.  This is not implemented in\nthis patch.\n\nCurrently the bitmap is stored in a file which must (obviously) be stored on a\nseparate device.\n\nThe patch only provided infrastructure.  It does not update any personalities\nto bitmap intent logging.\n\nMd arrays can still be used with no bitmap file.  This patch has minimal\nimpact on such arrays.\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": "57afd89f98a990747445f01c458ecae64263b2f8",
      "tree": "cab9f5941f32299bc97936e111f6552ebcee9cf6",
      "parents": [
        "06d91a5fe0b50c9060e70bdf7786f8a3c66249db"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:43 2005 -0700"
      },
      "message": "[PATCH] md: improve the interface to sync_request\n\n1/ change the return value (which is number-of-sectors synced)\n from \u0027int\u0027 to \u0027sector_t\u0027.\n The number of sectors is usually easily small enough to fit\n in an int, but if resync needs to abort, it may want to return\n the total number of remaining sectors, which could be large.\n Also errors cannot be returned as negative numbers now, so use\n 0 instead\n2/ Add a \u0027skipped\u0027 return parameter to allow the array to report\n that it skipped the sectors.  This allows md to take this into account\n in the speed calculations.\n Currently there is no important skipping, but the bitmap-based-resync\n that is coming will use this.\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": "06d91a5fe0b50c9060e70bdf7786f8a3c66249db",
      "tree": "95a8b9228534cebb12eb31c1cc9cc0c45f685410",
      "parents": [
        "fca4d848f0e6fafdc2b25f8a0cf1e76935f13ac2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:43 2005 -0700"
      },
      "message": "[PATCH] md: improve locking on \u0027safemode\u0027 and move superblock writes\n\nWhen md marks the superblock dirty before a write, it calls\ngeneric_make_request (to write the superblock) from within\ngeneric_make_request (to write the first dirty block), which could cause\nproblems later.\n\nWith this patch, the superblock write is always done by the helper thread, and\nwrite request are delayed until that write completes.\n\nAlso, the locking around marking the array dirty and writing the superblock is\nimproved to avoid possible races.\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"
    }
  ]
}
