)]}'
{
  "log": [
    {
      "commit": "c0e485216de80046dd0d448b7cd530dbfc31402f",
      "tree": "069326485a1919936231a5a4d64d6adb8105d3a2",
      "parents": [
        "34ef75f09f09611b62ae11ae36c3c7b0a6a8a9cb"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Nov 18 01:11:01 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Nov 18 07:49:46 2005 -0800"
      },
      "message": "[PATCH] md: fix is_mddev_idle calculation now that disk/sector accounting happens when request completes\n\nmd needs to monitor the rate of requests to its devices when doing\nresync/recovery so that it can back-off when there is non-resync IO.  It\ndoes this by comparing resync IO, which it counts, with total IO which is\ntaken from disk_stats.\n\ndisk_stats were recently changed to account sectors when a request\ncompletes instead of when it is queued.  This upsets md\u0027s calculations.\n\nWe could do the sync_io accounting at the end of requests too, but that has\nproblems.  If an underlying device is an md array, the accounting will\nstill be done when the request is submitted.  This could be changed for\nsome raid levels, but it cannot be changed for raid0 or linear without\nsubstantial code changes.\n\nSo instead, we increase the error that is_mddev_idle allows, up to the\nmaximum amount of resync IO that can be in flight at any time.  The\ncalculation is current fragile as each personality as different limits for\nin-flight resync.  This should be fixed up.\n\nFor now, this simple patch fixes the problem.\n\nIncreasing the error margin decreases the sensitivity to non-resync IO.  To\npartially compensate for this, the time to wait when non-resync IO is\ndetected is increased so that less steady IO is required to keep the resync\nat bay.\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": "93588e2284b6be1873cc0bb7fbf0947bdbf72830",
      "tree": "685a5b21312c6d057f1db37d75085944db646cb9",
      "parents": [
        "e8a0033451f7972169b2f375be34d9d805ad8687"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 15 00:09:12 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Nov 15 08:59:19 2005 -0800"
      },
      "message": "[PATCH] md: make md threads interruptible again\n\nDespite the fact that md threads don\u0027t need to be signalled, and won\u0027t\nrespond to signals anyway, we need to have an \u0027interruptible\u0027 wait, else\nthey stay in \u0027D\u0027 state and add to the load average.\n\n(akpm: the signal_pending() test is unneeded - we\u0027ll fix that up in the next\nround.  For now, leave it there because that\u0027s how the code used 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": "e8a0033451f7972169b2f375be34d9d805ad8687",
      "tree": "5b6f56750e4b829b75e0cecbf36d85bf0ec29432",
      "parents": [
        "1887b93529410633b5529a7c2d304897dbed5b3e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 15 00:09:11 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Nov 15 08:59:19 2005 -0800"
      },
      "message": "[PATCH] md: mark START_ARRAY deprecated with a date\n\nThis was marked deprecated \"after 2.6\" back in the 2.5 days.  But now it\nseems there isn\u0027t going to be any \"after 2.6\", and we deprecate by date\nnow.  So set a date.\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": "bb636547b02411ca5eef87b1d030ea3fc090a717",
      "tree": "f6abbad4e7283d5d327646859ad0af1f9ee43aa8",
      "parents": [
        "7eec314d7512d5281742263cff3853b43df431db"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:45 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:40 2005 -0800"
      },
      "message": "[PATCH] md: document sysfs usage of md, and make a couple of small refinements\n\nDocument in Documentation/md.txt the files that now appear in sysfs, and make\na couple of small refinements to exactly when \u0027level\u0027 and \u0027raid_disks\u0027 are\nempty, to make it match the documentation.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7eec314d7512d5281742263cff3853b43df431db",
      "tree": "3d74f5950b6d9fede5ddc617f0a7ab03eeee0dd3",
      "parents": [
        "787453c2397edcc3261efebb661739acd8c38547"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:44 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:40 2005 -0800"
      },
      "message": "[PATCH] md: improve \u0027scan_mode\u0027 and rename it to \u0027sync_action\u0027\n\nThe current sync_action for an array can be one of\n\n   idle  - nothing happening\n   resync - reduncancy being recalcualted\n   recover - missing device being recoverred to spare\n   check   - user initiated check of redundancy\n   repair  - like resync but user-initiated and ignores\n             bitmap optimisation.\n\nEach of these strings can also be written to the \u0027sync_action\u0027 file to cause\nthat action to happen (if appropriate).\n\nWhile \u0027sync\u0027 is not technically correct, as a recovery is *not* a \u0027sync\u0027, I\nthink it is the most servicable word here.  Also \u0027action\u0027 is a strong word\nthan \u0027mode\u0027.\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": "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": "fd9d49cac46f5758d513ccf831b599dd4412546f",
      "tree": "980dcde5398f3d0f2724637dd499f922551328d3",
      "parents": [
        "8e1b39d623359e5ef7983a2bd0fb676be45cba31"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:42 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:39 2005 -0800"
      },
      "message": "[PATCH] md: ignore auto-readonly flag for arrays where it isn\u0027t meaningful\n\nThe \u0027auto-readonly\u0027 flag (which suppresses resync and superblock updates until\nthe first write) is not meaningful for personalities that don\u0027t support resync\nor superblock writes (raid0, linear, etc).\n\nSo clear the setting early to avoid it confusing anything - e.g.  appearing in\n/proc/mdstat\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": "8e1b39d623359e5ef7983a2bd0fb676be45cba31",
      "tree": "554e7654fbd3aac78bc1f538474100a73de3fdd7",
      "parents": [
        "411036fa1924f5e5b0f7f9d04ae5d8cdc72fb839"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:41 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:39 2005 -0800"
      },
      "message": "[PATCH] md: only try to print recovery/resync status for personalities that support recovery\n\nThe introduction of \u0027resync\u003dPENDING\u0027 (for read-only devices) caused that\nmessage to appear for non-syncable arrays like raid0 and linear.  Simplest\nthing is to not try to print any resync info unless the personality clearly\nsupports it.\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": "411036fa1924f5e5b0f7f9d04ae5d8cdc72fb839",
      "tree": "d63b4380ce3e6fc55a9ea272512ca430f840fe22",
      "parents": [
        "96de1e663cda65ba9275afb1bc007f34e5068ba1"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:40 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:39 2005 -0800"
      },
      "message": "[PATCH] md: split off some md attributes in sysfs to a separate group\n\nSome, but not all, md array support data redundancy and hence support checking\nand restoring that redundancy (resync, rebuild).\n\nSome attributes apply specifically to functions involving this redundancy, and\nso should only appear for md arrays for which they are meaningful.  i.e.  they\nshould not appear for raid0, linear, multpath, faulty.\n\nThis patch separates these into a distinct group and creates the group only if\nthe personality supports sync_request.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "96de1e663cda65ba9275afb1bc007f34e5068ba1",
      "tree": "b927dda4f0f2d2669658f5974a848d9f701f330b",
      "parents": [
        "3855ad9f398de88a3290f7dd799633c4b73903ea"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:39 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:39 2005 -0800"
      },
      "message": "[PATCH] md: fix some locking and module refcounting issues with md\u0027s use of sysfs\n\n1/ I really should be using the __ATTR macros for defining attributes, so\n   that the .owner field get set properly, otherwise modules can be removed\n   while sysfs files are open.  This also involves some name changes of _show\n   routines.\n\n2/ Always lock the mddev (against reconfiguration) for all sysfs attribute\n   access.  This easily avoid certain races and is completely consistant with\n   other interfaces (ioctl and /proc/mdstat both always lock against\n   reconfiguration).\n\n3/ raid5 attributes must check that the \u0027conf\u0027 structure actually exists\n   (the array could have been stopped while an attribute file was open).\n\n4/ A missing \u0027kfree\u0027 from when the raid5_conf_t was converted to have a\n   kobject embedded, and then converted back again.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f637b9f9fc195e4f4635faf495fd8b462c21b411",
      "tree": "bcd71dc2e3c0a2fd97c5973d6a29010c3eab1990",
      "parents": [
        "f91de92ed6bfb70a3ff607558c910c7bf34d45e9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:37 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:39 2005 -0800"
      },
      "message": "[PATCH] md: make sure /block link in /sys/.../md/ goes to correct devices\n\nIf a block_device is a partition, then it\u0027s kobject is\n  bdev-\u003ebd_part-\u003ekobj\notherwise (if it is a full device), the kobject is\n  bdev-\u003ebd_disk-\u003ekobj\n\nAs md wants back-links to the correct object (whether partition or not), we\nneed to respect this difference...  (Thus current code shows a link to the\nwhole device, whether we are using a partition or not, which is wrong).\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f91de92ed6bfb70a3ff607558c910c7bf34d45e9",
      "tree": "7891da2296aba0302b48220bdd291acc0e92e810",
      "parents": [
        "19133a4298223422742db7b5f940e8c54c6a1846"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:36 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: allow md arrays to be started read-only (module parameter).\n\nWhen an md array is started, the superblock will be written, and resync may\ncommense.  This is not good if you want to be completely read-only as, for\nexample, when preparing to resume from a suspend-to-disk image.\n\nSo introduce a module parameter \"start_ro\" which can be set\nto \u00271\u0027 at boot, at module load, or via\n  /sys/module/md_mod/parameters/start_ro\n\nWhen this is set, new arrays get an \u0027auto-ro\u0027 mode, which disables all\ninternal io (superblock updates, resync, recovery) and is automatically\nswitched to \u0027rw\u0027 when the first write request arrives.\n\nThe array can be set to true \u0027ro\u0027 mode using \u0027mdadm -r\u0027 before the first\nwrite request, or resync can be started without a write using \u0027mdadm -w\u0027.\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": "19133a4298223422742db7b5f940e8c54c6a1846",
      "tree": "ed11c4567ba37843d865308f1f399f4d2ab28fbe",
      "parents": [
        "a9701a30470856408d08657eb1bd7ae29a146190"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:35 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:38 2005 -0800"
      },
      "message": "[PATCH] md: Remove attempt to use dynamic names in sysfs for component devices on an MD array.\n\nWith version-0.90 superblock, component devices on an md device to not have\nany stable name related to the array -(version-1 assigns a fixed index when\na device is added to an array, and this remains despit any hot-swap).\n\nThe intial code for making these devices appear in sysfs used dynamic\nnames, which would change whenever a hot-spare was swapped for a failed or\nmissing device.  This turns out not to be practical in sysfs for a number\nof reasons.\n\nThis patch changes then naming of component devices to be based on the\nresult of \u0027bdevname\u0027.  This is stable and should be unique.\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": "31399d9e56abeec4d819f07eefc97f30b5d5ed75",
      "tree": "841dee4a780a213519ca7bfbb5ba1ed1bf025c2c",
      "parents": [
        "9c79197761b4c181a143dc6a6044f4e47d44bdcc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:29 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:37 2005 -0800"
      },
      "message": "[PATCH] md: minor MD fixes\n\n1/ Use reduce stack usage, because \u0027gcc\u0027 apparently doesn\u0027t overlay\n   different variables  that are in separate scopes...\n\n2/ Use test_bit instead of ( .. \u0026 1\u003c\u003c ..) which in this case is buggy.\n\nThanks to Andrew Morton\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": "9c79197761b4c181a143dc6a6044f4e47d44bdcc",
      "tree": "2b0f75aac9cab625f5e5b27ae5e4f30d2838c486",
      "parents": [
        "d6065f7bf8bec170c9c56524a250093ce73ca5d9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Nov 08 21:39:28 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:56:37 2005 -0800"
      },
      "message": "[PATCH] md: fix ref-counting problems with kobjects in md\n\nThanks Greg.\n\nCc:  Greg KH \u003cgreg@kroah.com\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": "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": "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": "a362357b6cd62643d4dda3b152639303d78473da",
      "tree": "fe4ce823e638ded151edcb142f28a240860f0d33",
      "parents": [
        "d72d904a5367ad4ca3f2c9a2ce8c3a68f0b28bf0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Nov 01 09:26:16 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Nov 01 09:26:16 2005 +0100"
      },
      "message": "[BLOCK] Unify the seperate read/write io stat fields into arrays\n\nInstead of having -\u003eread_sectors and -\u003ewrite_sectors, combine the two\ninto -\u003esectors[2] and similar for the other fields. This saves a branch\nseveral places in the io path, since we don\u0027t have to care for what the\nactual io direction is. On my x86-64 box, that\u0027s 200 bytes less text in\njust the core (not counting the various drivers).\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "8712e553562bbbed9b3a99370f08e9bc25908a76",
      "tree": "be13964a0701d19f9363a91ed5a130ed10ed4016",
      "parents": [
        "6693e74a16ef563960764bd963f1048392135c3c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Oct 26 01:58:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 26 10:39:42 2005 -0700"
      },
      "message": "[PATCH] md: make sure mdthreads will always respond to kthread_stop\n\nThere are still a couple of cases where md threads (the resync/recovery\nthread) is not interruptible since the change to use kthreads.  All places\nthere it tests \"signal_pending\", it should also test kthread_should_stop,\nas with this patch.\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": "6985c43f39b3d799999c390099c56ebbee27d4f4",
      "tree": "7db2cc566d9257afca01deb135e2e0f0347333e8",
      "parents": [
        "4a9949d7ac9e2bc51939f27b184be6e1bd99004e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Wed Oct 19 21:23:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 19 23:04:30 2005 -0700"
      },
      "message": "[PATCH] Three one-liners in md.c\n\nThe main problem fixes is that in certain situations stopping md arrays may\ntake longer than you expect, or may require multiple attempts.  This would\nonly happen when resync/recovery is happening.\n\nThis patch fixes three vaguely related bugs.\n\n1/ The recent change to use kthreads got the setting of the\n   process name wrong.  This fixes it.\n2/ The recent change to use kthreads lost the ability for\n   md threads to be signalled with SIG_KILL.  This restores that.\n3/ There is a long standing bug in that if:\n    - An array needs recovery (onto a hot-spare) and\n    - The recovery is being blocked because some other array being\n       recovered shares a physical device and\n    - The recovery thread is killed with SIG_KILL\n   Then the recovery will appear to have completed with no IO being\n   done, which can cause data corruption.\n   This patch makes sure that incomplete recovery will be treated as\n   incomplete.\n\nNote that any kernel affected by bug 2 will not suffer the problem of bug\n3, as the signal can never be delivered.  Thus the current 2.6.14-rc\nkernels are not susceptible to data corruption.  Note also that if arrays\nare shutdown (with \"mdadm -S\" or \"raidstop\") then the problem doesn\u0027t\noccur.  It only happens if a SIGKILL is independently delivered as done by\n\u0027init\u0027 when shutting down.\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": "338cec3253a6d43d02e5e96abc327197565efcc8",
      "tree": "e56af7e1117f7ec47a4e854476103c22aa9fc1bc",
      "parents": [
        "f9101210e7aa72daf92722d451a2f7e3af5f781f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Sep 10 00:26:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:30 2005 -0700"
      },
      "message": "[PATCH] merge some from Rusty\u0027s trivial patches\n\nThis patch contains the most trivial from Rusty\u0027s trivial patches:\n- spelling fixes\n- remove duplicate includes\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "611815651b2640449bda928079160b9263efac1c",
      "tree": "1f4edcddee9e5c238bc51e94a65d204bbaf1fafc",
      "parents": [
        "188c18fd7982d220f4dea234cbb5cc6c75d0f512"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Sep 09 16:24:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:14 2005 -0700"
      },
      "message": "[PATCH] md: really get sb_size setting right in all cases\n\nThere was another case where sb_size wasn\u0027t being set, so instead do the\nsensible thing and set if when filling in the content of a superblock.  That\nensures that whenever we write a superblock, the sb_size MUST be set.\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": "188c18fd7982d220f4dea234cbb5cc6c75d0f512",
      "tree": "90eb6739ad6e0c823595e3f68964e64899d252e0",
      "parents": [
        "b325a32e5732d7aef70ca3c58acb3953ed20f66c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Sep 09 16:24:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:14 2005 -0700"
      },
      "message": "[PATCH] md: make sure the new \u0027sb_size\u0027 is set properly device added without pre-existing superblock.\n\nThere are two ways to add devices to an md/raid array.\n\n  It can have superblock written to it, and then given to the md driver,\n  which will read the superblock (the new way)\n\nor\n\n  md can be told (through SET_ARRAY_INFO) the shape of the array, and\n  the told about individual drives, and md will create the required\n  superblock (the old way).\n\nThe newly introduced sb_size was only set for drives being added the\nnew way, not the old ways.  Oops :-(\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": "b325a32e5732d7aef70ca3c58acb3953ed20f66c",
      "tree": "5ac799ede4268c49dcec604074ed148104717c09",
      "parents": [
        "1cd6bf19bbe8098153d7a478d8fc551edbea9305"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Sep 09 16:24:00 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:14 2005 -0700"
      },
      "message": "[PATCH] md: report spare drives in /proc/mdstat\n\nJust like failed drives have (F), so spare drives now have (S).\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": "1cd6bf19bbe8098153d7a478d8fc551edbea9305",
      "tree": "35f662b0a07a14c76ef7b48e06c8b20b63d00488",
      "parents": [
        "720a3dc39b030e273bc955641f2517874fd38fc5"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Sep 09 16:24:00 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:14 2005 -0700"
      },
      "message": "[PATCH] md: add information about superblock version to /proc/mdstat\n\nLeave it unchanged if the original (0.90) is used, incase it might be a\ncompatability 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": "720a3dc39b030e273bc955641f2517874fd38fc5",
      "tree": "565ecf6b7bf498661f613410d00c004a1e1cb1c2",
      "parents": [
        "53e87fbb5dc887766229eef3ba8bd8ab8853b066"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Sep 09 16:23:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:13 2005 -0700"
      },
      "message": "[PATCH] md: use queue_hardsect_size instead of block_size for md superblock size calc.\n\nDoh.  I want the physical hard-sector-size, not the current block size...\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": "53e87fbb5dc887766229eef3ba8bd8ab8853b066",
      "tree": "6fec888a271f42a9adb4c0d091219cad1f617233",
      "parents": [
        "500af87abb81098da47474c81f29ea315a056dc5"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Sep 09 16:23:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:13 2005 -0700"
      },
      "message": "[PATCH] md: choose better default offset for bitmap.\n\nOn reflection, a better default location for hot-adding bitmaps with version-1\nsuperblocks is immediately after the superblock.  There might not be much room\nthere, but there is usually atleast 3k, and that is a good start.\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": "a6fb0934f923f889055152cb0b033674f627460b",
      "tree": "4f33272ba325ed31dbd7c1fa76cfe4ac12939c44",
      "parents": [
        "934ce7c840992a771ffc478b132092db9c935c42"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:13 2005 -0700"
      },
      "message": "[PATCH] md: use kthread infrastructure in md\n\nSwitch MD to use the kthread infrastructure, to simplify the code and get rid\nof tasklist_lock abuse in md_unregister_thread.\n\nAlso don\u0027t flush signals in md_thread, as the called thread will always do\nthat.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\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": "934ce7c840992a771ffc478b132092db9c935c42",
      "tree": "7eeacbe7d20ec9eaf80eca793dbb45a0670b18ef",
      "parents": [
        "72626685dc66d455742a7f215a0535c551628b9e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:12 2005 -0700"
      },
      "message": "[PATCH] md: write-intent bitmap support for raid6\n\nThis is a direct port of the raid5 patch.\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": "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": "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": "7b1e35f6d666693e8f376ce02242efca3ec09aaf",
      "tree": "c471a526b69594ce1bd7daa44ab50c51a0c6bfcf",
      "parents": [
        "3178b0dbdf67322f6506582e494bdf553cc85c32"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:11 2005 -0700"
      },
      "message": "[PATCH] md: allow hot-adding devices to arrays with non-persistant superblocks.\n\nIt is possibly (and occasionally useful) to have a raid1 without persistent\nsuperblocks.  The code in add_new_disk for adding a device to such an array\nalways tries to read a superblock.\n\nThis will obviously fail.\n\nSo do the appropriate test and call md_import_device with\nappropriate args.\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": "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": "1923b99a0f4748aa6be0b9b9523ce224a3449b17",
      "tree": "708b1546c179e7d6fc31213528d32f4ab4ff13a8",
      "parents": [
        "844e8d904a7c1446e3f040683b4a0645c3eb168f"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Sep 09 16:23:43 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 16:39:09 2005 -0700"
      },
      "message": "[PATCH] md: don\u0027t allow new md/bitmap file to be set if one already exists\n\n... otherwise we loose a reference and can never free the 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": "87162a28acceda05dadf10a8333183f6d2b55265",
      "tree": "138d822bbec7623c523db96bae43bc2c4f4a0fda",
      "parents": [
        "01703597ead8194b46932ba2bcda897e872e91e0"
      ],
      "author": {
        "name": "viro@ZenIV.linux.org.uk",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Fri Sep 09 20:36:43 2005 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 14:05:54 2005 -0700"
      },
      "message": "[PATCH] trivial __user annotations (md)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "657390d25d4241705cb4fc5b3b4ba5b30575dc17",
      "tree": "35b09cbecef683302adaddb9e8f7047462e7a848",
      "parents": [
        "72008652dae7d10fa668d7b2ada3bddff7403d86"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Aug 26 18:34:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Aug 26 19:37:13 2005 -0700"
      },
      "message": "[PATCH] md: clear the \u0027recovery\u0027 flags when starting an md array.\n\nIt\u0027s possible for this to still have flags in it and a previous instance\nhas been stopped, and that confused the new array using the same mddev.\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": "72008652dae7d10fa668d7b2ada3bddff7403d86",
      "tree": "23660dd9234016c927b8c135c9e48b685cb16207",
      "parents": [
        "e1bcfcaa0b3bec2a67b22c565a0bf508ea90db1d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Fri Aug 26 18:34:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Aug 26 19:37:12 2005 -0700"
      },
      "message": "[PATCH] md: create a MODULE_ALIAS for md corresponding to its block major number.\n\nI just discovered this is needed for module auto-loading.\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": "005eca5e74b222db4360f8938140eb843d283325",
      "tree": "8a8865c1c260de81d13e322ab4259833b4918e15",
      "parents": [
        "4c5640cb5f5a6fd780d99397eca028b575cb1206"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Mon Aug 22 13:11:08 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Aug 23 11:44:30 2005 -0700"
      },
      "message": "[PATCH] md: make sure resync gets started when array starts.\n\nWe weren\u0027t actually waking up the md thread after setting\nMD_RECOVERY_NEEDED when assembling an array, so it is possible to lose a\nrace and not actually start resync.\n\nSo add a call to md_wakeup_thread, and while we are at it, remove all the\n\"if (mddev-\u003ethread)\" guards as md_wake_thread does its own checking.\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": "9223214e8d757663f366133ba5f9b58aa6b28efb",
      "tree": "b3977e067dbf3b2679c16f77c9e9025c7f71f26f",
      "parents": [
        "60d7603a18a5c07252e7aa0b0e2424315195d4dc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Aug 18 11:24:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 18 12:53:57 2005 -0700"
      },
      "message": "[PATCH] md: make sure mddev-\u003ebitmap_offset gets cleared between array instantiations.\n\n... otherwise we might try to load a bitmap from an array which hasn\u0027t one.\n\nThe bug is that if you create an array with an internal bitmap, shut it down,\nand then create an array with the same md device, the md drive will assume it\nshould have a bitmap too.  As the array can be created with a different md\ndevice, it is mostly an inconvenience.  I\u0027m pretty sure there is no risk of\ndata corruption.\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": "aa1595e9f3d0d731bcfc6c2680d5483b78f663dc",
      "tree": "df42ce619d60ded32718e299ca471c8578e735b9",
      "parents": [
        "efd8be2a4280f334be9309fa4ca1fb8f4e29475d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Aug 04 12:53:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 04 13:00:54 2005 -0700"
      },
      "message": "[PATCH] md: make \u0027md\u0027 and alias for \u0027md-mod\u0027\n\nUntil the bitmap code was added,\n\n   modprobe md\n\nwould load the md module.  But now the md module is called \u0027md-mod\u0027, so we\nreally need an alias for backwards comparability.\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": "efd8be2a4280f334be9309fa4ca1fb8f4e29475d",
      "tree": "8837ffe6f2949fcefcbb67bb8af6332d1a9783e9",
      "parents": [
        "4dcef52400fa6b9eb2de589300ae0151a1c65b3b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Thu Aug 04 12:53:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 04 13:00:54 2005 -0700"
      },
      "message": "[PATCH] md: remove a stray debugging printk.\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": "77933d7276ee8fa0e2947641941a6f7a100a327b",
      "tree": "e3a42724642410f5257c794a71b34642092eedd5",
      "parents": [
        "03e259a9cdbd0583e71468293aaa1ccadbdaeff1"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl@dif.dk",
        "time": "Wed Jul 27 11:46:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:20 2005 -0700"
      },
      "message": "[PATCH] clean up inline static vs static inline\n\n`gcc -W\u0027 likes to complain if the static keyword is not at the beginning of\nthe declaration.  This patch fixes all remaining occurrences of \"inline\nstatic\" up with \"static inline\" in the entire kernel tree (140 occurrences in\n47 files).\n\nWhile making this change I came across a few lines with trailing whitespace\nthat I also fixed up, I have also added or removed a blank line or two here\nand there, but there are no functional changes in the patch.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8b58edf3acf0dcc186b8330939000ecf709368a",
      "tree": "d28b413c34ef9c673c242504496a4053d059ace8",
      "parents": [
        "314b6a4d80a7a5217c86ffdca926b6f406da0e0e"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Mon Jun 27 22:29:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 14:53:41 2005 -0700"
      },
      "message": "[PATCH] md: bio leak fix\n\ninsert a missing bio_put when writting the md superblock.\n\nWithout this we have a steady growth in the \"bio\" slab.\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": "3e1d1d28d99dabe63c64f7f40f1ca1d646de1f73",
      "tree": "d1e7c1e2e8902072042aefc3a7976b271cf76021",
      "parents": [
        "b3e112bcc19abd8e9657dca34a87316786e096f3"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "christoph@lameter.com",
        "time": "Fri Jun 24 23:13:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 17:10:13 2005 -0700"
      },
      "message": "[PATCH] Cleanup patch for process freezing\n\n1. Establish a simple API for process freezing defined in linux/include/sched.h:\n\n   frozen(process)\t\tCheck for frozen process\n   freezing(process)\t\tCheck if a process is being frozen\n   freeze(process)\t\tTell a process to freeze (go to refrigerator)\n   thaw_process(process)\tRestart process\n   frozen_process(process)\tProcess is frozen now\n\n2. Remove all references to PF_FREEZE and PF_FROZEN from all\n   kernel sources except sched.h\n\n3. Fix numerous locations where try_to_freeze is manually done by a driver\n\n4. Remove the argument that is no longer necessary from two function calls.\n\n5. Some whitespace cleanup\n\n6. Clear potential race in refrigerator (provides an open window of PF_FREEZE\n   cleared before setting PF_FROZEN, recalc_sigpending does not check\n   PF_FROZEN).\n\nThis patch does not address the problem of freeze_processes() violating the rule\nthat a task may only modify its own flags by setting PF_FREEZE. This is not clean\nin an SMP environment. freeze(process) is therefore not SMP safe!\n\nSigned-off-by: Christoph Lameter \u003cchristoph@lameter.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "990a8baf568ca1d0ae65e59783ff821794118d07",
      "tree": "1fe187b2f119f7a9d96d56380b211f9ddb9f8390",
      "parents": [
        "8a5e9cf1d6626586ff08e49f400a006a9f0c3275"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl-lkml@dif.dk",
        "time": "Tue Jun 21 17:17:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:48 2005 -0700"
      },
      "message": "[PATCH] md: remove unneeded NULL checks before kfree\n\nThis patch removes some unneeded checks of pointers being NULL before\ncalling kfree() on them.  kfree() handles NULL pointers just fine, checking\nfirst is pointless.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\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": "5f40402d96cb21df912e5bbb3fffa5e1afc81e98",
      "tree": "9c2085ce7615898461fc9b61e9dd46aa7f6c7ce1",
      "parents": [
        "78d742d876bdf7263d0d966fbe9593559fd904a7"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:44 2005 -0700"
      },
      "message": "[PATCH] md: call bitmap_daemon_work regularly\n\nbitmap_daemon_work clears bits in the bitmap for blocks that haven\u0027t been\nwritten to for a while.  It needs to be called regularly to make sure the\nbitmap doesn\u0027t endup full of ones ....  but it wasn\u0027t.\n\nSo call it from the increasingly-inaptly-named md_check_recovery\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": "78d742d876bdf7263d0d966fbe9593559fd904a7",
      "tree": "00e700128a9ab1152958a53da1ee6ef48e358543",
      "parents": [
        "32a7627cf3a35396a8e834faf34e38ae9f3b1309"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:43 2005 -0700"
      },
      "message": "[PATCH] md: a couple of tidyups relating to the bitmap file.\n\n1/ When init from disk, it is a BUG if there is nowhere\n   to init from,\n2/ use seq_path to print path in /proc/mdstat\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": "fca4d848f0e6fafdc2b25f8a0cf1e76935f13ac2",
      "tree": "cabed019bfe5d00ddbe06e349f20cff78ab6f6bf",
      "parents": [
        "c361777fb9347a4d16b82272f7d3b234e94bef2d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:42 2005 -0700"
      },
      "message": "[PATCH] md: merge md_enter_safemode into md_check_recovery\n\nmd_enter_safemode checks if it is time to mark the md superblock as \u0027clean\u0027.\ni.e.  if all writes have completed and a suitable delay has passed.\n\nThis is currently called from md_handle_safemode which in-turn is called\n(almost) every time md_check_recovery is called, and from the end of\nmd_do_sync which causes the mddev-\u003ethread to run, which will always call\nmd_check_recovery as well.\n\nSo it doesn\u0027t need to be a separate function and fits quite well into\nmd_check_recovery.\n\nThe \"almost\" is because multipathd calls md_check_recovery but not\nmd_handle_safemode.  This is OK because the code from md_enter_safemode is a\nno-op if mddev-\u003esafemode \u003d\u003d 0, which it always is for a multipathd (providing\nwe don\u0027t allow it to be set to 2 on a signal...)\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": "c361777fb9347a4d16b82272f7d3b234e94bef2d",
      "tree": "077024cee566780ffefdc84dfa7de9cf3f9dbed4",
      "parents": [
        "6ea9c07c6c6d1c14d9757dd8470dc4c85bbe9f28"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Tue Jun 21 17:17:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:42 2005 -0700"
      },
      "message": "[PATCH] md: make sure recovery happens when add_new_disk is used for hot_add\n\nCurrently if add_new_disk is used to hot-add a drive to a degraded array,\nrecovery doesn\u0027t start ...  because we didn\u0027t tell it to.\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": "75c96f85845a6707b0f9916cb263cb3584f7d48f",
      "tree": "45a64d1c9bb71d7093db3a11e0f21465c2e3dec6",
      "parents": [
        "5e198d94dd0c3ec7f6138229e2e412c2c6268c38"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu May 05 16:16:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:47 2005 -0700"
      },
      "message": "[PATCH] make some things static\n\nThis patch makes some needlessly global identifiers static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Arjan van de Ven \u003carjanv@infradead.org\u003e\nAcked-by: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a757e64cfa400391041ed7953f0290c34a820c93",
      "tree": "73214a96945eb017e33c0f732ad0f1e8d10c2e8e",
      "parents": [
        "d28446fe2d87ea344c14741c39962dcc7aee5c78"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Sat Apr 16 15:26:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:26:42 2005 -0700"
      },
      "message": "[PATCH] md: remove a number of misleading calls to MD_BUG\n\nThe conditions that cause these calls to MD_BUG are not kernel bugs, just\noddities in what userspace is asking for.\n\nAlso convert analyze_sbs to return void, and the value it returned was\nalways 0.\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": "d28446fe2d87ea344c14741c39962dcc7aee5c78",
      "tree": "b41bec77e5e5123f8f5349eb01ced9ee8fd9a924",
      "parents": [
        "187a27845a9dc1c3da3995e24625ccf2e7a346aa"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Sat Apr 16 15:26:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:26:41 2005 -0700"
      },
      "message": "[PATCH] md: close a small race in md thread deregistration\n\nThere is a tiny race when de-registering an MD thread, in that the thread\ncould disappear before it is set a SIGKILL, causing send_sig to have\nproblems.  \n\nThis is most easily closed by holding tasklist_lock between enabling the\nthread to exit (setting -\u003erun to NULL) and telling it to exit.\n\n(akpm: ick.  Needs to use kthread API and stop using signals)\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": "baaa2c512dc1c47e3afeb9d558c5323c9240bd21",
      "tree": "b4a3fcd63090a3c5a5ba7e13c1c01897318eb948",
      "parents": [
        "8d38eadb7a97f265f7b3a9e8a30df358c3a546c8"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@cse.unsw.edu.au",
        "time": "Sat Apr 16 15:23:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:23:54 2005 -0700"
      },
      "message": "[PATCH] Avoid deadlock in sync_page_io by using GFP_NOIO\n\n..as sync_page_io can be called on the write-out path.\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"
    }
  ]
}
