)]}'
{
  "log": [
    {
      "commit": "5f6e3c836508926e50cebe17ad87f59666a7fb47",
      "tree": "b485fa971b0c17bc16fb81fd5cb8bc5646ce0188",
      "parents": [
        "76fd020937f2d09f76a4cd8dbae1f3bec640ff0b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 11 01:22:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:26 2006 -0700"
      },
      "message": "[PATCH] md: use BUILD_BUG_ON\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-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": "5842730de179405d80649231faa0b3f254477434",
      "tree": "b7597063929ad3e0536d22077bde53b6d5ad13d4",
      "parents": [
        "ec5a19dd935eb3793e1f6ed491e8035b3d7b1df9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Oct 06 00:44:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 06 08:53:41 2006 -0700"
      },
      "message": "[PATCH] md: fix bug where new drives added to an md array sometimes don\u0027t sync properly\n\nThis fixes a bug introduced in 2.6.18.\n\nIf a drive is added to a raid1 using older tools (mdadm-1.x or raidtools)\nthen it will be included in the array without any resync happening.\n\nIt has been submitted for 2.6.18.1.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "52e5f9d1cf0b10b24317037dcd1c9be38ca7011c",
      "tree": "a0646ee04b91d5d195075dc4ad8d38cf603179d8",
      "parents": [
        "70d63ccc71fe1a413ce82b88aa175b1dcf28654e"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Tue Oct 03 23:33:23 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 03 23:33:23 2006 +0200"
      },
      "message": "BUG_ON cleanup for drivers/md/\n\nThis changes two if() BUG(); usages to BUG_ON(); so people\ncan disable it safely.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "3a0f5bbb1a36ed113065099d3dc69a66e1c8d567",
      "tree": "0a8e6aa5c069aa41e57cbe820f0876abea4e8876",
      "parents": [
        "d19c2ee0b8d1cd83f8bc0f1f5e94e6b6ec71ea10"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:16:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:19 2006 -0700"
      },
      "message": "[PATCH] md: add error reporting to superblock write failure\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": "a638b2dc951c4cafea31b34a1db1c3d94809649e",
      "tree": "73c1c2135a117290308b5807b6ede21389e3264c",
      "parents": [
        "14f50b49fdab8f4c9fc87b55d3631e3bf1ffd385"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Tue Oct 03 01:16:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: use ffz instead of find_first_set to convert multiplier to shift\n\nfind_first_set doesn\u0027t find the least-significant bit on bigendian machines,\nso it is really wrong to use it.\n\nffs is closer, but takes an \u0027int\u0027 and we have a \u0027unsigned long\u0027.  So use\nffz(~X) to convert a chunksize into a chunkshift.\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": "14f50b49fdab8f4c9fc87b55d3631e3bf1ffd385",
      "tree": "6b49b12654e39ace73401521fbb9f0448e899ba5",
      "parents": [
        "e8703fe1f5cdcff686f7eb0a46487b5a04a9324a"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:16:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: remove \u0027experimental\u0027 classification from raid5 reshape\n\nI have had enough success reports not to believe that this is safe for 2.6.19.\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": "e8703fe1f5cdcff686f7eb0a46487b5a04a9324a",
      "tree": "3b52bfa6ee57d59e059fd0e8d8504dbd3ee073b4",
      "parents": [
        "d33a56d3639eba077489c937943a32ef6237b1b8"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: remove MAX_MD_DEVS which is an arbitrary limit\n\nOnce upon a time we needed to fixed limit to the number of md devices,\nprobably because we preallocated some array.  This need no longer exists, but\nwe still have an arbitrary limit.\n\nSo remove MAX_MD_DEVS and allow as many devices as we can fit into the \u0027minor\u0027\npart of a device number.\n\nAlso remove some useless noise at init time (which reports MAX_MD_DEVS) and\nremove MD_THREAD_NAME_MAX which hasn\u0027t been used for a while.\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": "61df9d91e986f1314af482e7ea5f2312a6cd0d14",
      "tree": "c8e21e589e75354e41089eaeb5fe0e2cb04d20d1",
      "parents": [
        "f022b2fddd97795bc9333ffb6862eacfa95c6a95"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: make messages about resync/recovery etc more specific\n\nIt is possible to request a \u0027check\u0027 of an md/raid array where the whole array\nis read and consistancies are reported.\n\nThis uses the same mechanisms as \u0027resync\u0027 and so reports in the kernel logs\nthat a resync is being started.  This understandably confuses/worries people.\n\nAlso the text in /proc/mdstat suggests a \u0027resync\u0027 is happen when it is just a\ncheck.\n\nThis patch changes those messages to be more specific about what is happening.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f022b2fddd97795bc9333ffb6862eacfa95c6a95",
      "tree": "93615a8cbc489a1adb3cca7a3bf7c0e67625e4be",
      "parents": [
        "0d12922823408b26f83b15cae4a4feff4bd22f28"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: add a -\u003econgested_fn function for raid5/6\n\nThis is very different from other raid levels and all requests go through a\n\u0027stripe cache\u0027, and it has congestion management already.\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": "0d12922823408b26f83b15cae4a4feff4bd22f28",
      "tree": "a3509f442e6fc75ca9304757ffa3dce4918ef55e",
      "parents": [
        "26be34dc3a46be983352dd89683db374b0cb73fa"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: define -\u003econgested_fn for raid1, raid10, and multipath\n\nraid1, raid10 and multipath don\u0027t report their \u0027congested\u0027 status through\nbdi_*_congested, but should.\n\nThis patch adds the appropriate functions which just check the \u0027congested\u0027\nstatus of all active members (with appropriate locking).\n\nraid1 read_balance should be modified to prefer devices where\nbdi_read_congested returns false.  Then we could use the \u0027\u0026\u0027 branch rather\nthan the \u0027|\u0027 branch.  However that should would need some benchmarking first\nto make sure it is actually a good idea.\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": "26be34dc3a46be983352dd89683db374b0cb73fa",
      "tree": "296ed9d019ac56d4a6ea0909f1cf11bdfd08a3e5",
      "parents": [
        "c04be0aa82ff535e3676ab3e573957bdeef41879"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: define backing_dev_info.congested_fn for raid0 and linear\n\nEach backing_dev needs to be able to report whether it is congested, either by\nmodulating BDI_*_congested in -\u003estate, or by defining a -\u003econgested_fn.\nmd/raid did neither of these.  This patch add a congested_fn which simply\nchecks all component devices to see if they are congested.\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": "c04be0aa82ff535e3676ab3e573957bdeef41879",
      "tree": "8481ab270218bed246eb02b3ba04a4b84d4e90d0",
      "parents": [
        "11ce99e625fe2718ad2682bfdd99070b337e6252"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:18 2006 -0700"
      },
      "message": "[PATCH] md: Improve locking around error handling\n\nThe error handling routines don\u0027t use proper locking, and so two concurrent\nerrors could trigger a problem.\n\nSo:\n  - use test-and-set and test-and-clear to synchonise\n    the In_sync bits with the -\u003edegraded count\n  - use the spinlock to protect updates to the\n    degraded count (could use an atomic_t but that\n    would be a bigger change in code, and isn\u0027t\n    really justified)\n  - remove un-necessary locking in raid5\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": "11ce99e625fe2718ad2682bfdd99070b337e6252",
      "tree": "48e40104a058f27e9cd717c42edcf6738fef2372",
      "parents": [
        "867868fb557eb2a2120b80779468fa372584ddb0"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: Remove working_disks from raid1 state data\n\nIt is equivalent to conf-\u003eraid_disks - conf-\u003emddev-\u003edegraded.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "867868fb557eb2a2120b80779468fa372584ddb0",
      "tree": "feb35d5c59cf4d22a14ee04d285c132429e88b06",
      "parents": [
        "2d2063ceae73660d5142f4754d50a75b655fd1f9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: Factor out part of raid1d into a separate function\n\nraid1d has toooo many nested block, so take the fix_read_error functionality\nout into a separate function.\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": "2d2063ceae73660d5142f4754d50a75b655fd1f9",
      "tree": "fc0e810ec5e7fa01ab53fca93043d68813d9de7f",
      "parents": [
        "9b1d1dac181d8c1b9492e05cee660a985d035a06"
      ],
      "author": {
        "name": "Coywolf Qi Hunt",
        "email": "qiyong@freeforge.net",
        "time": "Tue Oct 03 01:15:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: remove unnecessary variable x in stripe_to_pdidx()\n\nSigned-off-by: Coywolf Qi Hunt \u003cqiyong@freeforge.net\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": "9b1d1dac181d8c1b9492e05cee660a985d035a06",
      "tree": "af12b1eaac4e0f7f3528ec26a223faeabed35845",
      "parents": [
        "76186dd8b73d2b7b9b4c8629b89c845e97009801"
      ],
      "author": {
        "name": "Paul Clements",
        "email": "paul.clements@steeleye.com",
        "time": "Tue Oct 03 01:15:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: new sysfs interface for setting bits in the write-intent-bitmap\n\nAdd a new sysfs interface that allows the bitmap of an array to be dirtied.\nThe interface is write-only, and is used as follows:\n\necho \"1000\" \u003e /sys/block/md2/md/bitmap\n\n(dirty the bit for chunk 1000 [offset 0] in the in-memory and on-disk\nbitmaps of array md2)\n\necho \"1000-2000\" \u003e /sys/block/md1/md/bitmap\n\n(dirty the bits for chunks 1000-2000 in md1\u0027s bitmap)\n\nThis is useful, for example, in cluster environments where you may need to\ncombine two disjoint bitmaps into one (following a server failure, after a\nsecondary server has taken over the array).  By combining the bitmaps on\nthe two servers, a full resync can be avoided (This was discussed on the\nlist back on March 18, 2005, \"[PATCH 1/2] md bitmap bug fixes\" thread).\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": "76186dd8b73d2b7b9b4c8629b89c845e97009801",
      "tree": "1f1c2fe5530de65fa149faa3e6b2969044e7b0a8",
      "parents": [
        "02c2de8cc835885bdff51a8bfd6c0b659b969f50"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: remove \u0027working_disks\u0027 from raid10 state\n\nIt isn\u0027t needed as mddev-\u003edegraded contains equivalent info.\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": "02c2de8cc835885bdff51a8bfd6c0b659b969f50",
      "tree": "3c3b3adf01e4ec4139888d681eca5becb3374fda",
      "parents": [
        "850b2b420cd5b363ed4cf48a8816d656c8b5251b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: remove the working_disks and failed_disks from raid5 state data.\n\nThey are not needed.  conf-\u003efailed_disks is the same as mddev-\u003edegraded and\nconf-\u003eworking_disks is conf-\u003eraid_disks - mddev-\u003edegraded.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "850b2b420cd5b363ed4cf48a8816d656c8b5251b",
      "tree": "b63aa37b3fb7dfb7a0b674d5a2ebe9da13cc7405",
      "parents": [
        "6814d5368d68341ec6b5e4ecd10ea5947130775a"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: replace magic numbers in sb_dirty with well defined bit flags\n\nInstead of magic numbers (0,1,2,3) in sb_dirty, we have\nsome flags instead:\nMD_CHANGE_DEVS\n   Some device state has changed requiring superblock update\n   on all devices.\nMD_CHANGE_CLEAN\n   The array has transitions from \u0027clean\u0027 to \u0027dirty\u0027 or back,\n   requiring a superblock update on active devices, but possibly\n   not on spares\nMD_CHANGE_PENDING\n   A superblock update is underway.\n\nWe wait for an update to complete by waiting for all flags to be clear.  A\nflag can be set at any time, even during an update, without risk that the\nchange will be lost.\n\nStop exporting md_update_sb - isn\u0027t needed.\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": "6814d5368d68341ec6b5e4ecd10ea5947130775a",
      "tree": "07440216f8f1b94429eee8f79469e0b800505251",
      "parents": [
        "b5c124af69119c1b5c1e728bd2e7b5b1fad9b7be"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Oct 03 01:15:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:17 2006 -0700"
      },
      "message": "[PATCH] md: factor out part of raid10d into a separate function.\n\nraid10d has toooo many nested block, so take the fix_read_error functionality\nout into a separate function.\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": "fbedac04fa11d7f9f9f425c7ec253f55becaae57",
      "tree": "700b49b6ea0da293d07a6a32cc154347e134686f",
      "parents": [
        "999d816851c3e080412a19558f111d01852d2f04"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 03 01:15:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:16 2006 -0700"
      },
      "message": "[PATCH] md: the scheduled removal of the START_ARRAY ioctl for md\n\nThis patch contains the scheduled removal of the START_ARRAY ioctl for md.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\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": "999d816851c3e080412a19558f111d01852d2f04",
      "tree": "8b75a8e97d6fa7c41e81169e9b2ba5f7806e23a9",
      "parents": [
        "3cb4021453a69585e458ec2177677c0c1300dccf"
      ],
      "author": {
        "name": "Bryn Reeves",
        "email": "breeves@redhat.com",
        "time": "Tue Oct 03 01:15:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:16 2006 -0700"
      },
      "message": "[PATCH] dm table: add target flush\n\nThis patch adds support for a per-target dm_flush_fn method.  This is needed\nto allow dm-loop to invalidate page cache mappings in response to BLKFLSBUF\nioctl commands.\n\nSigned-off-by: Bryn Reeves \u003cbreeves@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3cb4021453a69585e458ec2177677c0c1300dccf",
      "tree": "cc2394e0eb52d6bed2fbc523641499714d6159c4",
      "parents": [
        "9faf400f7e51e56ec76b2fc481c3191c01cb3a57"
      ],
      "author": {
        "name": "Bryn Reeves",
        "email": "breeves@redhat.com",
        "time": "Tue Oct 03 01:15:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:16 2006 -0700"
      },
      "message": "[PATCH] dm: extract device limit setting\n\nSeparate the setting of device I/O limits from dm_get_device().  dm-loop will\nuse this.\n\nSigned-off-by: Bryn Reeves \u003cbreeves@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9faf400f7e51e56ec76b2fc481c3191c01cb3a57",
      "tree": "dcc853af8b188b2eb59be84dac424698e561057b",
      "parents": [
        "6a24c71843de1354d3bcc2ce47fd0b3bee936399"
      ],
      "author": {
        "name": "Stefan Bader",
        "email": "Stefan.Bader@de.ibm.com",
        "time": "Tue Oct 03 01:15:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:16 2006 -0700"
      },
      "message": "[PATCH] dm: use private biosets\n\nI found a problem within device-mapper that occurs in low-mem situations.  It\nwas found using a mirror target but I think in theory it would hit any setup\nthat stacks device-mapper devices (like LVM on top of multipath).\n\nSince device-mapper core uses the common fs_bioset in clone_bio(), and a\nprivate, but still global, bio_set in split_bvec() it is possible that the\nfilesystem and the first level target successfully get bios but the lower\nlevel target doesn\u0027t because there is no more memory and the pool was drained\nby upper layers.  So the remapping will be stuck forever.  To solve this\ndevice-mapper core needs to use a private bio_set for each device.\n\nSigned-off-by: Stefan Bader \u003cStefan.Bader@de.ibm.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a24c71843de1354d3bcc2ce47fd0b3bee936399",
      "tree": "7a826dd50061ca086e6ed05d6b7a9247c0e2c095",
      "parents": [
        "23541d2d288cdb54f417ba1001dacc7f3ea10a97"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:16 2006 -0700"
      },
      "message": "[PATCH] dm crypt: use private biosets\n\nIn the low memory situation dm-crypt needs to use a private mempool of bios to\navoid blocking.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "23541d2d288cdb54f417ba1001dacc7f3ea10a97",
      "tree": "c338a829548fd1baa730acf6e466f8bfd4bef474",
      "parents": [
        "93e605c237a61f5a0ea37b12353392f01d596628"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:16 2006 -0700"
      },
      "message": "[PATCH] dm crypt: move io to workqueue\n\nThis patch is designed to help dm-crypt comply with the\nnew constraints imposed by the following patch in -mm:\n  md-dm-reduce-stack-usage-with-stacked-block-devices.patch\n\nUnder low memory the existing implementation relies upon waiting for I/O\nsubmitted recursively to generic_make_request() completing before the original\ngeneric_make_request() call can return.\n\nThis patch moves the I/O submission to a workqueue so the original\ngeneric_make_request() can return immediately.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "93e605c237a61f5a0ea37b12353392f01d596628",
      "tree": "c3e9932a19b95c9a4e4fb41527dc4c3c40c24057",
      "parents": [
        "8b004457168995f2ae2a35327f885183a9e74141"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm crypt: restructure write processing\n\nRestructure the dm-crypt write processing in preparation for workqueue changes\nin the next patches.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8b004457168995f2ae2a35327f885183a9e74141",
      "tree": "d67d966133d61d2fed58f42a5efae1a2cb3c66ce",
      "parents": [
        "e48d4bbf9697f4fee4f4e48c5e2586b332809519"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm crypt: restructure for workqueue change\n\nRestructure part of the dm-crypt code in preparation for workqueue changes.\n\nUse \u0027base_bio\u0027 or \u0027clone\u0027 variable names consistently throughout.  No\nfunctional changes are included in this patch.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e48d4bbf9697f4fee4f4e48c5e2586b332809519",
      "tree": "eef2172f5730c17ace6ddb9a1cf6a4f5062176ae",
      "parents": [
        "8757b7764f13e336f3c0eb1f634440d4ee4c3a67"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm crypt: add key msg\n\nAdd the facility to wipe the encryption key from memory (for example while a\nlaptop is suspended) and reinstate it later (when the laptop gets resumed).\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8757b7764f13e336f3c0eb1f634440d4ee4c3a67",
      "tree": "c91b00ace6ee438a9e447bce311808a698e9d487",
      "parents": [
        "cc1092019ce3d9b3e85a285b41e852ff94a6b590"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm table: add target preresume\n\nThis patch adds a target preresume hook.\n\nIt is called before the targets are resumed and if it returns an error the\nresume gets cancelled.\n\nThe crypt target will use this to indicate that it is unable to process I/O\nbecause no encryption key has been supplied.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cc1092019ce3d9b3e85a285b41e852ff94a6b590",
      "tree": "c9ca9dca870249b66671335a2152fac7b4ed0cc5",
      "parents": [
        "8560ed6fa8d43537af558514fa48f670b3349f08"
      ],
      "author": {
        "name": "Bryn Reeves",
        "email": "breeves@redhat.com",
        "time": "Tue Oct 03 01:15:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm: add debug macro\n\nAdd CONFIG_DM_DEBUG and DMDEBUG() macro.\n\nSigned-off-by: Bryn Reeves \u003cbreeves@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8560ed6fa8d43537af558514fa48f670b3349f08",
      "tree": "e5efdfbba841c3f4c4a485ba4e39a3117c75acdc",
      "parents": [
        "e69fae561f422f7f9dbda19f448633aa6564663e"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Tue Oct 03 01:15:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm: add uevent change event on resume\n\nDevice-mapper devices are not accessible until a \u0027resume\u0027 ioctl has been\nissued.  For userspace to find out when this happens we need to generate an\nuevent for udev to take appropriate action.\n\nAs discussed at OLS we should send \u0027change\u0027 events for \u0027resume\u0027.  We can think\nof no useful purpose served by also having \u0027suspend\u0027 events.\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-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": "e69fae561f422f7f9dbda19f448633aa6564663e",
      "tree": "68ca8eb346741c3199549de38adc9fafd5db6c35",
      "parents": [
        "28f16c2039b4eefdc09c99b12f310afb44de5536"
      ],
      "author": {
        "name": "Micha³ Miros³aw",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Oct 03 01:15:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm mpath: use kzalloc\n\nUse kzalloc() instead of kmalloc() + memset().\n\nSigned-off-by: Micha³ Miros³aw \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "28f16c2039b4eefdc09c99b12f310afb44de5536",
      "tree": "485dd0517e033d68cecafb4e7d5cb7b7bb86c63a",
      "parents": [
        "e52b8f6dbe18c879ad2b5013f991ec9e46813043"
      ],
      "author": {
        "name": "Micha³ Miros³aw",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Oct 03 01:15:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm mpath: tidy ctr\n\nAfter initialising m-\u003eti, there\u0027s no need to pass it in subsequent calls to\nstatic functions used for parsing parameters.\n\nSigned-off-by: Micha³ Miros³aw \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e52b8f6dbe18c879ad2b5013f991ec9e46813043",
      "tree": "56fe2bf95b2ca00a66e639a5d060067f09c07e65",
      "parents": [
        "695368ac3302174531429a90d55c3f7f9b83906e"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Tue Oct 03 01:15:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm mirror: remove trailing space from table\n\nRemove trailing space from \u0027dmsetup table\u0027 output.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "695368ac3302174531429a90d55c3f7f9b83906e",
      "tree": "515457b78ec2bf95dab7f5b614284ccecda8afbd",
      "parents": [
        "4b832e8de22726206eb886f6dbff47a0f3fe5168"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Oct 03 01:15:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:15 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: fix freeing pending exception\n\nIf a snapshot became invalid while there are outstanding pending_exceptions,\nwhen pending_complete() processes each one it forgets to remove the\ncorresponding exception from its exception table before freeing it.\n\nFix this by moving the \u0027out:\u0027 label up one statement so that\nremove_exception() is always called.  Then __invalidate_exception() no longer\nneeds to call it and its \u0027pe\u0027 argument become superfluous.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b832e8de22726206eb886f6dbff47a0f3fe5168",
      "tree": "279cf60137cc08f4f4ae17f04940d69d68262b10",
      "parents": [
        "ca3a931fd33b841cbcc5932f8eac7c43e0909242"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Oct 03 01:15:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: tidy pe ref counting\n\nRename sibling_count to ref_count and introduce get and put functions.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca3a931fd33b841cbcc5932f8eac7c43e0909242",
      "tree": "bc8aa7ace1a5e528cbfabc01b17a2016c55bc448",
      "parents": [
        "9d493fa8c943ed4ec6e42b7ebfd8f0b7657d54f8"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Oct 03 01:15:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: add workqueue\n\nAdd a workqueue so that I/O can be queued up to be flushed from a separate\nthread (e.g.  if local interrupts are disabled).\n\nA new per-snapshot spinlock pe_lock is introduced to protect queued_bios.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9d493fa8c943ed4ec6e42b7ebfd8f0b7657d54f8",
      "tree": "8d7cac80b09a73058fd491563737a77db47df7de",
      "parents": [
        "ba40a2aa6e6f3d084cf35c8b872fc9f18f91231f"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Oct 03 01:15:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: tidy pending_complete\n\nThis patch rearranges the pending_complete() code so that the functional\nchanges in subsequent patches are clearer.\n\nBy consolidating the error and the non-error paths, we can move\nerror_snapshot_bios() and __flush_bios() in line.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba40a2aa6e6f3d084cf35c8b872fc9f18f91231f",
      "tree": "d32ec4949a0a9721e8955e7f0e98130019d95849",
      "parents": [
        "927ffe7c9a156e259aae31c07dd76072c459ec57"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Oct 03 01:15:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: tidy snapshot_map\n\nThis patch rearranges the snapshot_map code so that the functional changes in\nsubsequent patches are clearer.\n\nThe only functional change is to replace the existing read lock with a write\nlock which the next patch needs.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "927ffe7c9a156e259aae31c07dd76072c459ec57",
      "tree": "1353a603c32d2bd23331abbac917a0b0574ff6ea",
      "parents": [
        "e4ff496db72473949ddfe29a37471969d2f1d4ee"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Tue Oct 03 01:15:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: fix metadata writing when suspending\n\nWhen suspending a device-mapper device, dm_suspend() sleeps until all\nnecessary I/O is completed.  This state is triggered by a callback from\npersistent_commit().  But some I/O can still be issued *after* the callback\n(to prepare the next metadata area for use if the current one is full).  This\npatch delays the callback until after that I/O is complete.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4ff496db72473949ddfe29a37471969d2f1d4ee",
      "tree": "fdc7b0b6fa8ab68b5741e412ce3d0682afc22260",
      "parents": [
        "f9cea4f70734f743e0beb55552a9794fa5032645"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Tue Oct 03 01:15:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: make read and write exception functions void\n\nread_exception() and write_exception() only return an error if supplied with\nan out-of-range index.  If this ever happens it\u0027s the result of a bug in the\ncalling code so we handle this with an assertion and remove the error handling\nin the callers.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f9cea4f70734f743e0beb55552a9794fa5032645",
      "tree": "7227221bc8913aedfa0f222c365137f549125efc",
      "parents": [
        "4c7e3bf44d0ae227ea1ee87c2197212e65d043d7"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Tue Oct 03 01:15:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: fix metadata error handling\n\nFix the error handling when store.read_metadata is called: the error should be\nreturned immediately.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c7e3bf44d0ae227ea1ee87c2197212e65d043d7",
      "tree": "658140b966d78f4709de10cd03e0bfdade6bc13e",
      "parents": [
        "92c060a692a0c3482cdfcaf346cb2f7572368895"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Tue Oct 03 01:15:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: allow zero chunk_size\n\nThe chunk size of snapshots cannot be changed so it is redundant to require it\nas a parameter when activating an existing snapshot.  Allow a value of zero in\nthis case and ignore it.  For a new snapshot, use a default value if zero is\nspecified.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92c060a692a0c3482cdfcaf346cb2f7572368895",
      "tree": "7d0c16f4fffff713fbf0fdd5612f1961556f8ac0",
      "parents": [
        "e3f6ac6123be6f4ba14d71af0da0e8d3d39c33ed"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm snapshot: fix invalidation ENOMEM\n\nFix ENOMEM error sign.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e3f6ac6123be6f4ba14d71af0da0e8d3d39c33ed",
      "tree": "7b3924ea9e382e090ac31ed87b7d99ca9ca9cd70",
      "parents": [
        "e90dae1f58d475b71bcc4eebf6d4fd5217ed85c7"
      ],
      "author": {
        "name": "Ishai Rabinovitz",
        "email": "ishai@mellanox.co.il",
        "time": "Tue Oct 03 01:15:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:14 2006 -0700"
      },
      "message": "[PATCH] dm: fix alloc_dev error path\n\nWhile reading the code I found a bug in the error path in alloc_dev in dm.c\n\nWhen blk_alloc_queue fails there is no call to free_minor.\n\nThis patch fixes the problem.\n\nSigned-off-by: Ishai Rabinovitz \u003cishai@mellanox.co.il\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e90dae1f58d475b71bcc4eebf6d4fd5217ed85c7",
      "tree": "7131716d3889636fce72009f64cd6f65ed7e324c",
      "parents": [
        "7006f6eca874cd44d37ccb8cfeb8bed04e3bff22"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:13 2006 -0700"
      },
      "message": "[PATCH] dm: support ioctls on mapped devices: fix with fake file\n\nThe new ioctl code passes the wrong file pointer to the underlying device.\nNo file pointer is available so make a temporary fake one.\n\nioctl_by_bdev() does set_fs(KERNEL_DS) so it\u0027s for ioctls originating\nwithin the kernel and unsuitable here.  We are processing ioctls that\noriginated in userspace and mapping them to different devices.  Fixing the\nexisting callers that pass a NULL file struct and consolidating the\nfake_file users are separate matters to solve in later patches.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7006f6eca874cd44d37ccb8cfeb8bed04e3bff22",
      "tree": "2e0827157e770e62493dea144e5d9ef73091e554",
      "parents": [
        "9af4aa30b713a58e5952045f52c41a6e3baa2fdc"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Oct 03 01:15:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:13 2006 -0700"
      },
      "message": "[PATCH] dm: export blkdev_driver_ioctl\n\nExport blkdev_driver_ioctl for device-mapper.\n\nIf we get as far as the device-mapper ioctl handler, we know the ioctl is not\na standard block layer BLK* one, so we don\u0027t need to check for them a second\ntime and can call blkdev_driver_ioctl() directly.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9af4aa30b713a58e5952045f52c41a6e3baa2fdc",
      "tree": "87702659749a6db94ec32a829867e080b419bc82",
      "parents": [
        "ab17ffa440cb54ca64111fa4922ba12496fcc8af"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:13 2006 -0700"
      },
      "message": "[PATCH] dm mpath: support ioctls\n\nWhen an ioctl is performed on a multipath device simply pass it on to the\nunderlying block device through current_path.  If current path is not yet\nselected, select it.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab17ffa440cb54ca64111fa4922ba12496fcc8af",
      "tree": "eda3d4c68dc6790374988772bda5fd9ba6d87651",
      "parents": [
        "aa129a2247b164173d45da8ad43cca5de9211403"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:13 2006 -0700"
      },
      "message": "[PATCH] dm linear: support ioctls\n\nWhen an ioctl is performed on a device with a linear target, simply pass it on\nto the underlying block device.\n\nNote that the ioctl will pass through the filtering in blkdev_ioctl() twice.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aa129a2247b164173d45da8ad43cca5de9211403",
      "tree": "8adecb4d15d49b0a1fd4b459a24dff22a961d71c",
      "parents": [
        "70abac6e4f4bfb05a8198e22225f9e066239c7a2"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Oct 03 01:15:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:13 2006 -0700"
      },
      "message": "[PATCH] dm: support ioctls on mapped devices\n\nExtend the core device-mapper infrastructure to accept arbitrary ioctls on a\nmapped device provided that it has exactly one target and it is capable of\nsupporting ioctls.\n\n[We can\u0027t use unlocked_ioctl because we need \u0027inode\u0027: \u0027file\u0027 might be NULL.\nIs it worth changing this?]\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n\nArnd Bergmann \u003carnd@arndb.de\u003e wrote:\n\n\u003e Am Wednesday 21 June 2006 21:31 schrieb Alasdair G Kergon:\n\u003e \u003e static struct block_device_operations dm_blk_dops \u003d {\n\u003e \u003e .open \u003d dm_blk_open,\n\u003e \u003e .release \u003d dm_blk_close,\n\u003e \u003e +.ioctl \u003d dm_blk_ioctl,\n\u003e \u003e .getgeo \u003d dm_blk_getgeo,\n\u003e \u003e .owner \u003d THIS_MODULE\n\u003e\n\u003e I guess this also needs a -\u003ecompat_ioctl method, otherwise it won\u0027t\n\u003e work for ioctl numbers that have a compat_ioctl implementation in the\n\u003e low-level device driver.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9361401eb7619c033e2394e4f9f6d410d6719ac7",
      "tree": "04b94a71f2366988c17740d1c16cfbdec41d5d2e",
      "parents": [
        "d366e40a1cabd453be6e2609caa7e12f9ca17b1f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Sep 30 20:45:40 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:31 2006 +0200"
      },
      "message": "[PATCH] BLOCK: Make it possible to disable the block layer [try #6]\n\nMake it possible to disable the block layer.  Not all embedded devices require\nit, some can make do with just JFFS2, NFS, ramfs, etc - none of which require\nthe block layer to be present.\n\nThis patch does the following:\n\n (*) Introduces CONFIG_BLOCK to disable the block layer, buffering and blockdev\n     support.\n\n (*) Adds dependencies on CONFIG_BLOCK to any configuration item that controls\n     an item that uses the block layer.  This includes:\n\n     (*) Block I/O tracing.\n\n     (*) Disk partition code.\n\n     (*) All filesystems that are block based, eg: Ext3, ReiserFS, ISOFS.\n\n     (*) The SCSI layer.  As far as I can tell, even SCSI chardevs use the\n     \t block layer to do scheduling.  Some drivers that use SCSI facilities -\n     \t such as USB storage - end up disabled indirectly from this.\n\n     (*) Various block-based device drivers, such as IDE and the old CDROM\n     \t drivers.\n\n     (*) MTD blockdev handling and FTL.\n\n     (*) JFFS - which uses set_bdev_super(), something it could avoid doing by\n     \t taking a leaf out of JFFS2\u0027s book.\n\n (*) Makes most of the contents of linux/blkdev.h, linux/buffer_head.h and\n     linux/elevator.h contingent on CONFIG_BLOCK being set.  sector_div() is,\n     however, still used in places, and so is still available.\n\n (*) Also made contingent are the contents of linux/mpage.h, linux/genhd.h and\n     parts of linux/fs.h.\n\n (*) Makes a number of files in fs/ contingent on CONFIG_BLOCK.\n\n (*) Makes mm/bounce.c (bounce buffering) contingent on CONFIG_BLOCK.\n\n (*) set_page_dirty() doesn\u0027t call __set_page_dirty_buffers() if CONFIG_BLOCK\n     is not enabled.\n\n (*) fs/no-block.c is created to hold out-of-line stubs and things that are\n     required when CONFIG_BLOCK is not set:\n\n     (*) Default blockdev file operations (to give error ENODEV on opening).\n\n (*) Makes some /proc changes:\n\n     (*) /proc/devices does not list any blockdevs.\n\n     (*) /proc/diskstats and /proc/partitions are contingent on CONFIG_BLOCK.\n\n (*) Makes some compat ioctl handling contingent on CONFIG_BLOCK.\n\n (*) If CONFIG_BLOCK is not defined, makes sys_quotactl() return -ENODEV if\n     given command other than Q_SYNC or if a special device is specified.\n\n (*) In init/do_mounts.c, no reference is made to the blockdev routines if\n     CONFIG_BLOCK is not defined.  This does not prohibit NFS roots or JFFS2.\n\n (*) The bdflush, ioprio_set and ioprio_get syscalls can now be absent (return\n     error ENOSYS by way of cond_syscall if so).\n\n (*) The seclvl_bd_claim() and seclvl_bd_release() security calls do nothing if\n     CONFIG_BLOCK is not set, since they can\u0027t then happen.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "4aff5e2333c9a1609662f2091f55c3f6fffdad36",
      "tree": "b73d8c2b7c1bdc03d3313c108da7dfc95ee95525",
      "parents": [
        "77ed74da26f50fa28471571ee7a2251b77526d84"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Aug 10 08:44:47 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:23:37 2006 +0200"
      },
      "message": "[PATCH] Split struct request -\u003eflags into two parts\n\nRight now -\u003eflags is a bit of a mess: some are request types, and\nothers are just modifiers. Clean this up by splitting it into\n-\u003ecmd_type and -\u003ecmd_flags. This allows introduction of generic\nLinux block message types, useful for sending generic Linux commands\nto block devices.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "3c164bd8153c4644a22dc2101b003c67cd2a0d0a",
      "tree": "c6b3f7a3d0f2d3850ce1c8c7e040053f548ebe9b",
      "parents": [
        "3ad819c61f5f8347f39cdcbe652b3c60ec615888"
      ],
      "author": {
        "name": "Rik Snel",
        "email": "rsnel@cube.dyndns.org",
        "time": "Sat Sep 02 18:17:33 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:46:27 2006 +1000"
      },
      "message": "[BLOCK] dm-crypt: trivial comment improvements\n\nJust some minor comment nits.\n\n- little-endian is better than low-endian\n- and since it is called essiv everywere it should also be essiv\n  in the comments (and not ess_iv)\n\nSigned-off-by: Rik Snel \u003crsnel@cube.dyndns.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "35058687912aa2f0b4554383cc10be4e0683b9a4",
      "tree": "3e18d13aef6682553887076c1e9872e91e6fc5c4",
      "parents": [
        "dc64ddf4918f0da52df10d83c2a5941a547c2035"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Aug 24 19:10:20 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:46:21 2006 +1000"
      },
      "message": "[CRYPTO] users: Use crypto_hash interface instead of crypto_digest\n\nThis patch converts all remaining crypto_digest users to use the new\ncrypto_hash interface.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "d1806f6a97a536b043fe50e6d8a25b061755cf50",
      "tree": "0df6a3772783600f58fa0c5e709c650d1f832610",
      "parents": [
        "69affe7fc52c14e4b81408a2076e9e58ba4af60a"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Aug 22 20:29:17 2006 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Sep 21 11:46:13 2006 +1000"
      },
      "message": "[BLOCK] dm-crypt: Use block ciphers where applicable\n\nThis patch converts dm-crypt to use the new block cipher type where\napplicable.  It also changes simple cipher operations to use the new\nencrypt_one/decrypt_one interface.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "ddac7c7e3a0fe9cfdcef0de24476b8d69f8cf3e7",
      "tree": "b75845fa2424284342869566b3ed5233abecde92",
      "parents": [
        "df9ecaba3f152d1ea79f2a5e0b87505e03f47590"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Aug 31 21:27:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 01 11:39:08 2006 -0700"
      },
      "message": "[PATCH] md: Fix issues with referencing rdev in md/raid1\n\nWe need to be careful when referencing mirrors[i].rdev.  It can disappear\nunder us at various times.\n\nSo:\n  fix a couple of problem places.\n  comment a couple of non-problem places\n  move an \u0027atomic_add\u0027 which deferences rdev down a little\n    way to some where where it is sure to not be NULL.\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": "6394cca54894f6a9bcf927ab78d28985944298ff",
      "tree": "8b8376691f329c3bcc491fd2d0425c4e6278c5e3",
      "parents": [
        "84692195969b83f0ba57dc33ecf73e6c124dd186"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Aug 27 01:23:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 27 11:01:31 2006 -0700"
      },
      "message": "[PATCH] md: fix recent breakage of md/raid1 array checking\n\nA recent patch broke the ability to do a user-request check of a raid1.\nThis patch fixes the breakage and also moves a comment that was dislocated\nby the same 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": "84692195969b83f0ba57dc33ecf73e6c124dd186",
      "tree": "6ef3e71914c83cf66330f5c0cf6cf2edebb0404a",
      "parents": [
        "45f17e0c2ae05c133a348452690de0e5fa863293"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Aug 27 01:23:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 27 11:01:31 2006 -0700"
      },
      "message": "[PATCH] md: avoid backward event updates in md superblock when degraded.\n\nIf we\n  - shut down a clean array,\n  - restart with one (or more) drive(s) missing\n  - make some changes\n  - pause, so that they array gets marked \u0027clean\u0027,\nthe event count on the superblock of included drives\nwill be the same as that of the removed drives.\nSo adding the removed drive back in will cause it\nto be included with no resync.\n\nTo avoid this, we only update the eventcount backwards when the array\nis not degraded.  In this case there can (should) be no non-connected\ndrives that we can get confused with, and this is the particular case\nwhere updating-backwards is valuable.\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": "c06aad854fdb9da38fcc22dccfe9d72919453e43",
      "tree": "a27fc99fe974cc5df08393c5b16b4499b07aa3e5",
      "parents": [
        "9a654518e1b774b8e8f74a819fd12a931e7672c9"
      ],
      "author": {
        "name": "Daniel Kobras",
        "email": "kobras@linux.de",
        "time": "Sun Aug 27 01:23:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 27 11:01:28 2006 -0700"
      },
      "message": "[PATCH] dm: Fix deadlock under high i/o load in raid1 setup.\n\nOn an nForce4-equipped machine with two SATA disk in raid1 setup using dmraid,\nwe experienced frequent deadlock of the system under high i/o load.  \u0027cat\n/dev/zero \u003e ~/zero\u0027 was the most reliable way to reproduce them: Randomly\nafter a few GB, \u0027cp\u0027 would be left in \u0027D\u0027 state along with kjournald and\nkmirrord.  The functions cp and kjournald were blocked in did vary, but\nkmirrord\u0027s wchan always pointed to \u0027mempool_alloc()\u0027.  We\u0027ve seen this pattern\non 2.6.15 and 2.6.17 kernels.  http://lkml.org/lkml/2005/4/20/142 indicates\nthat this problem has been around even before.\n\nSo much for the facts, here\u0027s my interpretation: mempool_alloc() first tries\nto atomically allocate the requested memory, or falls back to hand out\npreallocated chunks from the mempool.  If both fail, it puts the calling\nprocess (kmirrord in this case) on a private waitqueue until somebody refills\nthe pool.  Where the only \u0027somebody\u0027 is kmirrord itself, so we have a\ndeadlock.\n\nI worked around this problem by falling back to a (blocking) kmalloc when\nbefore kmirrord would have ended up on the waitqueue.  This defeats part of\nthe benefits of using the mempool, but at least keeps the system running.  And\nit could be done with a two-line change.  Note that mempool_alloc() clears the\nGFP_NOIO flag internally, and only uses it to decide whether to wait or return\nan error if immediate allocation fails, so the attached patch doesn\u0027t change\nbehaviour in the non-deadlocking case.  Path is against current git\n(2.6.18-rc4), but should apply to earlier versions as well.  I\u0027ve tested on\n2.6.15, where this patch makes the difference between random lockup and a\nstable system.\n\nSigned-off-by: Daniel Kobras \u003ckobras@linux.de\u003e\nAcked-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "485311a23c72c87332f9a55ce25e650e40ae3fc7",
      "tree": "5c70793c578d4c4f70b7cebef68bc71febb1c1f8",
      "parents": [
        "657b3010d8f8a72195dfcbe63040127d596f0b14"
      ],
      "author": {
        "name": "Michal Miroslaw",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Sun Aug 13 23:24:20 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 14 12:54:29 2006 -0700"
      },
      "message": "[PATCH] dm: BUG/OOPS fix\n\nFix BUG I tripped on while testing failover and multipathing.\n\nBUG shows up on error path in multipath_ctr() when parse_priority_group()\nfails after returning at least once without error.  The fix is to\ninitialize m-\u003eti early - just after alloc()ing it.\n\nBUG: unable to handle kernel NULL pointer dereference at virtual address 00000000\n printing eip:\nc027c3d2\n*pde \u003d 00000000\nOops: 0000 [#3]\nModules linked in: qla2xxx ext3 jbd mbcache sg ide_cd cdrom floppy\nCPU:    0\nEIP:    0060:[\u003cc027c3d2\u003e]    Not tainted VLI\nEFLAGS: 00010202   (2.6.17.3 #1)\nEIP is at dm_put_device+0xf/0x3b\neax: 00000001   ebx: ee4fcac0   ecx: 00000000   edx: ee4fcac0\nesi: ee4fc4e0   edi: ee4fc4e0   ebp: 00000000   esp: c5db3e78\nds: 007b   es: 007b   ss: 0068\nProcess multipathd (pid: 15912, threadinfo\u003dc5db2000 task\u003def485a90)\nStack: ec4eda40 c02816bd ee4fc4c0 00000000 f7e89498 f883e0bc c02816f6 f7e89480\n       f7e8948c c0281801 ffffffea f7e89480 f883e080 c0281ffe 00000001 00000000\n       00000004 dfe9cab8 f7a693c0 f883e080 f883e0c0 ca4b99c0 c027c6ee 01400000\nCall Trace:\n \u003cc02816bd\u003e free_pgpaths+0x31/0x45  \u003cc02816f6\u003e free_priority_group+0x25/0x2e\n \u003cc0281801\u003e free_multipath+0x35/0x67  \u003cc0281ffe\u003e multipath_ctr+0x123/0x12d\n \u003cc027c6ee\u003e dm_table_add_target+0x11e/0x18b  \u003cc027e5b4\u003e populate_table+0x8a/0xaf\n \u003cc027e62b\u003e table_load+0x52/0xf9  \u003cc027ec23\u003e ctl_ioctl+0xca/0xfc\n \u003cc027e5d9\u003e table_load+0x0/0xf9  \u003cc0152146\u003e do_ioctl+0x3e/0x43\n \u003cc0152360\u003e vfs_ioctl+0x16c/0x178  \u003cc01523b4\u003e sys_ioctl+0x48/0x60\n \u003cc01029b3\u003e syscall_call+0x7/0xb\nCode: 97 f0 00 00 00 89 c1 83 c9 01 80 e2 01 0f 44 c1 88 43 14 8b 04 24 59 5b 5e 5f 5d c3 53 89 c1 89 d3 ff 4a 08 0f 94 c0 84 c0 74 2a \u003c8b\u003e 01 8b 10 89 d8 e8 f6 fb ff ff 8b 03 8b 53 04 89 50 04 89 02\nEIP: [\u003cc027c3d2\u003e] dm_put_device+0xf/0x3b SS:ESP 0068:c5db3e78\n\nSigned-off-by: Michal Miroslaw \u003cmirq-linux@rere.qmqm.pl\u003e\nAcked-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f9abd1ace43d6186268856dbec2ebf411218d6ca",
      "tree": "63ab66465c56e8e9fcbbf765f135838171fdd77d",
      "parents": [
        "af2bc7d222c2700ccda060184d7bced7d7cb9fc2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sat Aug 05 12:14:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 06 08:57:46 2006 -0700"
      },
      "message": "[PATCH] md: Fix a bug that recently crept into md/linear\n\nA recent patch that allowed linear arrays to be reconfigured on-line\nallowed in a bug which results in divide by zero - not all\nmddev-\u003earray_size were converted to conf-\u003earray_size.\n\nThis patch finished the conversion and fixed the bug.\n\nThe offending patch was commit 7c7546ccf6463edbeee8d9aac6de7be1cd80d08a.\n\nThanks to Simon Kirby \u003csim@netnation.com\u003e for the bug report.\n\nCc: Simon Kirby \u003csim@netnation.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": "d0a0a5ee7a0094231a11cfe3f86d2d8f5f994e01",
      "tree": "a6118e5bf43a4e60d9e555e74bac31e764e17aef",
      "parents": [
        "d69504325978c461b51b03cca49626026970307b"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Jul 10 04:44:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:17 2006 -0700"
      },
      "message": "[PATCH] md: fix oops in error-handling\n\nDuring early MD setup (superblock reading), we don\u0027t have a personality yet.\nBut the error-handling code tries to dereference mddev-\u003epers.  Fix.\n\nAcked-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": "d69504325978c461b51b03cca49626026970307b",
      "tree": "73ea1d68d5d3cca777cb6ea9828c5757b4cd6df8",
      "parents": [
        "67463acb646904d76a8e237cc31eaa87872f30cc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:17 2006 -0700"
      },
      "message": "[PATCH] md: include sector number in messages about corrected read errors\n\nThis is generally useful, but particularly helps see if it is the same sector\nthat always needs correcting, or different ones.\n\n[akpm@osdl.org: fix printk warnings]\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": "67463acb646904d76a8e237cc31eaa87872f30cc",
      "tree": "4ccf373165581ed898328ca03365abfdd7d23a04",
      "parents": [
        "80ca3a44f563a763fa872390dcb393f2d82027bf"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:19 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:17 2006 -0700"
      },
      "message": "[PATCH] md: require CAP_SYS_ADMIN for (re-)configuring md devices via sysfs\n\nThe ioctl requires CAP_SYS_ADMIN, so sysfs should too.  Note that we don\u0027t\nrequire CAP_SYS_ADMIN for reading attributes even though the ioctl does.\nThere is no reason to limit the read access, and much of the information is\nalready available via /proc/mdstat\n\nCc: Chris Wright \u003cchrisw@sous-sol.org\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": "80ca3a44f563a763fa872390dcb393f2d82027bf",
      "tree": "f11e4756575cf2d85ae4d3bba17634eaa933a475",
      "parents": [
        "5e3db645f890660ce8774a18bcd418570298937e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:17 2006 -0700"
      },
      "message": "[PATCH] md: unify usage of symbolic names for perms\n\nSome places we use number (0660) someplaces names (S_IRUGO).  Change all\nnumbers to be names, and change 0655 to be what it should be.\n\nAlso make some formatting more consistent.\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": "5e3db645f890660ce8774a18bcd418570298937e",
      "tree": "a6664a8c864e40c69c7be4da6e1ff984f11873c5",
      "parents": [
        "ae3c20ccf84c88d45616f12122f781a900118f09"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:17 2006 -0700"
      },
      "message": "[PATCH] md: fix usage of wrong variable in raid1\n\nThough it rarely matters, we should be using \u0027s\u0027 rather than r1_bio-\u003esector\nhere.\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": "ae3c20ccf84c88d45616f12122f781a900118f09",
      "tree": "19d2f11d8a4766182402316632d32bd66d518c55",
      "parents": [
        "7c785b7a18dc30572a49c6b75efd384269735d14"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:17 2006 -0700"
      },
      "message": "[PATCH] md: fix some small races in bitmap plugging in raid5\n\nThe comment gives more details, but I didn\u0027t quite have the sequencing write,\nso there was room for races to leave bits unset in the on-disk bitmap for\nshort periods of time.\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": "7c785b7a18dc30572a49c6b75efd384269735d14",
      "tree": "de115f4692b1be55ae3ad93a2719edc5b5688a37",
      "parents": [
        "ff4e8d9a9f46e3a7f89d14ade52fe5d53a82c022"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:16 2006 -0700"
      },
      "message": "[PATCH] md: fix a plug/unplug race in raid5\n\nWhen a device is unplugged, requests are moved from one or two (depending on\nwhether a bitmap is in use) queues to the main request queue.\n\nSo whenever requests are put on either of those queues, we should make sure\nthe raid5 array is \u0027plugged\u0027.  However we don\u0027t.  We currently plug the raid5\nqueue just before putting requests on queues, so there is room for a race.  If\nsomething unplugs the queue at just the wrong time, requests will be left on\nthe queue and nothing will want to unplug them.  Normally something else will\nplug and unplug the queue fairly soon, but there is a risk that nothing will.\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": "ff4e8d9a9f46e3a7f89d14ade52fe5d53a82c022",
      "tree": "e15fc4d8af0045a3947e3a25844773c6ee50289a",
      "parents": [
        "0b8c9de05c2a860fe6b02fedcb48763bcee648b3"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:16 2006 -0700"
      },
      "message": "[PATCH] md: fix resync speed calculation for restarted resyncs\n\nWe introduced \u0027io_sectors\u0027 recently so we could count the sectors that causes\nio during resync separate from sectors which didn\u0027t cause IO - there can be a\ndifference if a bitmap is being used to accelerate resync.\n\nHowever when a speed is reported, we find the number of sectors processed\nrecently by subtracting an oldish io_sectors count from a current\n\u0027curr_resync\u0027 count.  This is wrong because curr_resync counts all sectors,\nnot just io sectors.\n\nSo, add a field to mddev to store the curren io_sectors separately from\ncurr_resync, and use that in the calculations.\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": "0b8c9de05c2a860fe6b02fedcb48763bcee648b3",
      "tree": "893228041dfcc44a216a6887e75c2424e0a8bca9",
      "parents": [
        "31b65a0d3894566191b91fbadd122c354a363b5d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:16 2006 -0700"
      },
      "message": "[PATCH] md: delay starting md threads until array is completely setup\n\nWhen an array is started we start one or two threads (two if there is a\nreshape or recovery that needs to be completed).\n\nWe currently start these *before* the array is completely set up and in\nparticular before queue-\u003equeuedata is set.  If the thread actually starts\nvery quickly on another CPU, we can end up dereferencing queue-\u003equeuedata\nand oops.\n\nThis patch also makes sure we don\u0027t try to start a recovery if a reshape is\nbeing restarted.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "31b65a0d3894566191b91fbadd122c354a363b5d",
      "tree": "42836c0798c1a85d7bf1551a22293476cb70601e",
      "parents": [
        "f4370781d83cd2e52eb515e4663155e8091e4d4e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:16 2006 -0700"
      },
      "message": "[PATCH] md: set desc_nr correctly for version-1 superblocks\n\nThis has to be done in -\u003eload_super, not -\u003evalidate_super\n\nWithout this, hot-adding devices to an array doesn\u0027t always\nwork right - though there is a work around in mdadm-2.5.2 to\nmake this less of an issue.\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": "f4370781d83cd2e52eb515e4663155e8091e4d4e",
      "tree": "bb10a0abec68746204cac32dc4839c1b41df3d41",
      "parents": [
        "894673ee6122a3ce1958e1fe096901ba5356a96b"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jul 10 04:44:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 10 13:24:16 2006 -0700"
      },
      "message": "[PATCH] md: possible fix for unplug problem\n\nI have reports of a problem with raid5 which turns out to be because the raid5\ndevice gets stuck in a \u0027plugged\u0027 state.  This shouldn\u0027t be able to happen as\n3msec after it gets plugged it should get unplugged.  However it happens\nnone-the-less.  This patch fixes the problem and is a reasonable thing to do,\nthough it might hurt performance slightly in some cases.\n\nUntil I can find the real problem, we should probably have this workaround in\nplace.\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": "663d440eaa496db903cc58be04b9b602ba45e43b",
      "tree": "8af6967e175693f1c163a106a1d84be7a1bd0bfc",
      "parents": [
        "2b2d5493e10051694ae3a57ea6a153e3cb4d4488"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:10 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate blkdev nesting\n\nTeach special (recursive) locking code to the lock validator.\n\nEffects on non-lockdep kernels:\n\n- the introduction of the following function variants:\n\n  extern struct block_device *open_partition_by_devnum(dev_t, unsigned);\n\n  extern int blkdev_put_partition(struct block_device *);\n\n  static int\n  blkdev_get_whole(struct block_device *bdev, mode_t mode, unsigned flags);\n\n which on non-lockdep are the same as open_by_devnum(), blkdev_put()\n and blkdev_get().\n\n- a subclass parameter to do_open(). [unused on non-lockdep]\n\n- a subclass parameter to __blkdev_put(), which is a new internal\n  function for the main blkdev_put*() functions. [parameter unused\n  on non-lockdep kernels, except for two sanity check WARN_ON()s]\n\nthese functions carry no semantical difference - they only express\nobject dependencies towards the lockdep subsystem.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: 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": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "602cada851b28c5792339786efe872fbdc1f5d41",
      "tree": "233d474b74d6038b5bb54a07ad91dd1bb10b0218",
      "parents": [
        "82991c6f2c361acc17279b8124d9bf1878973435",
        "fee68d1cc0d9bd863e51c16cdcd707737b16bb38"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 14:19:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 14:19:21 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6: (22 commits)\n  [PATCH] devfs: Remove it from the feature_removal.txt file\n  [PATCH] devfs: Last little devfs cleanups throughout the kernel tree.\n  [PATCH] devfs: Rename TTY_DRIVER_NO_DEVFS to TTY_DRIVER_DYNAMIC_DEV\n  [PATCH] devfs: Remove the tty_driver devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the line_driver devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the videodevice devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the miscdevice devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree\n  [PATCH] devfs: Remove devfs_remove() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_cdev() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_bdev() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_symlink() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree\n  [PATCH] devfs: Remove devfs_*_tape() functions from the kernel tree\n  [PATCH] devfs: Remove devfs support from the sound subsystem\n  [PATCH] devfs: Remove devfs support from the ide subsystem.\n  [PATCH] devfs: Remove devfs support from the serial subsystem\n  [PATCH] devfs: Remove devfs from the init code\n  [PATCH] devfs: Remove devfs from the partition code\n  ...\n"
    },
    {
      "commit": "cfb9e32f2ff32ef5265c1c80fe68dd1a7f03a604",
      "tree": "b5b2ea1f75a87cd7837d645faf661206785e12e4",
      "parents": [
        "d81931d9a2ec3e2e2cd8238b72f20c5fe44ccc7b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Jun 29 02:24:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:21 2006 -0700"
      },
      "message": "[PATCH] drivers/md/raid5.c: remove an unused variable\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "890fbae2818a045350b8d1e3bda61ceb88ff1d17",
      "tree": "cf57a61841780ed1ab6bffa3ea0bf7d8cdd999d0",
      "parents": [
        "331b831983f9d706f4a40d08a996d5c2c7a6ea7b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:09 2006 -0700"
      },
      "message": "[PATCH] devfs: Last little devfs cleanups throughout the kernel tree.\n\nJust removes a few unused #defines and fixes some comments due to\ndevfs now being gone.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ce7b0f46bbf4bff8daab2dd3d878b9e72a623d09",
      "tree": "7a860cf52fbf1ff768197702af60a8329d296dff",
      "parents": [
        "96192ff1a9d0c6ef365d21667080259d83ea2f5b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n\nAnd remove the now unneeded number field.\nAlso fixes all drivers that set these fields.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "96192ff1a9d0c6ef365d21667080259d83ea2f5b",
      "tree": "b13caa3bedb3cde8bd1beecfc3c76bac894df42a",
      "parents": [
        "ff23eca3e8f613034e0d20ff86f6a89b62f5a14e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the miscdevice devfs_name field as it\u0027s no longer needed\n\nAlso fixes all drivers that set this field.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ff23eca3e8f613034e0d20ff86f6a89b62f5a14e",
      "tree": "826285f5daa660001d38cac6baaf34411fd40131",
      "parents": [
        "8ab5e4c15b53e147c08031a959d9f776823dbe73"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree\n\nAlso fixes up all files that #include it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8ab5e4c15b53e147c08031a959d9f776823dbe73",
      "tree": "b851d4c1fdbd396379279e4475f7f778a667a208",
      "parents": [
        "7c69ef79741910883d5543caafa06aca3ebadbd1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:07 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove devfs_remove() function from the kernel tree\n\nRemoves the devfs_remove() function and all callers of it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "1a715c5cf917326a285533d1116d725f5f2593c2",
      "tree": "23833b5463940023bd4074a3a465c245adaff9fa",
      "parents": [
        "79021a625c36162d24c852bbbdb04f0c1cb32db3"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:06 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove devfs_mk_bdev() function from the kernel tree\n\nRemoves the devfs_mk_bdev() function and all callers of it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "95dc112a5770dc670a1b45a3d9ee346fdd2b2697",
      "tree": "899cd99bdc928ade94ddc7b003b0de7d275cac48",
      "parents": [
        "0e6c62da7cd929b0389fc4a7e41464bb738647dc"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:06 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree\n\nRemoves the devfs_mk_dir() function and all callers of it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "05381954243de2348def8e338ca23fb40a0a721d",
      "tree": "de3341922d1329cde035e7cd111c0ec6e9289199",
      "parents": [
        "f655675b3fe09c4d0506d357527fe07544623009"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jun 26 00:28:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:40 2006 -0700"
      },
      "message": "[PATCH] drivers/md/md.c: make code static\n\nMake needlessly global code static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: 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": "f655675b3fe09c4d0506d357527fe07544623009",
      "tree": "969a798b6ba25b88f08b0f9cfe1aed323be81d3e",
      "parents": [
        "a94213b1fa7b26dcc271bf4b4f9eebf1f1af33a2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:28:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:40 2006 -0700"
      },
      "message": "[PATCH] md: Allow the write_mostly flag to be set via sysfs\n\nIt appears in /sys/mdX/md/dev-YYY/state\nand can be set or cleared by writing \u0027writemostly\u0027 or \u0027-writemostly\u0027\nrespectively.\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": "a94213b1fa7b26dcc271bf4b4f9eebf1f1af33a2",
      "tree": "4954e6e461e2edf25bb63e9b286bfaea7a07a84a",
      "parents": [
        "d4dbd0250ea1d24bb3d2d13559432fa069d795e2"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:28:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:40 2006 -0700"
      },
      "message": "[PATCH] md: Allow resync_start to be set and queried via sysfs\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": "d4dbd0250ea1d24bb3d2d13559432fa069d795e2",
      "tree": "060ec90679ea9d7a535146a35b0e9a8c9d940252",
      "parents": [
        "45dc2de1e53a29f898b81326b8a16e6192d52e4e"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Allow raid \u0027layout\u0027 to be read and set via sysfs\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": "45dc2de1e53a29f898b81326b8a16e6192d52e4e",
      "tree": "a1076950eef59cbe525435522d83757390f23c42",
      "parents": [
        "9e653b6342c94016f5cc9937061ef99e9c4b4045"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Allow rdev state to be set via sysfs\n\nThe md/dev-XXX/state file can now be written:\n\n \"faulty\" simulates an error on the device\n \"remove\" removes the device from the array (if it is not busy)\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": "9e653b6342c94016f5cc9937061ef99e9c4b4045",
      "tree": "ec6d984d1c6142a59a70308af511c3244276a8e5",
      "parents": [
        "42543769142d2375f2b5f8fc9cac999f84bd4c4c"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Set/get state of array via sysfs\n\nThis allows the state of an md/array to be directly controlled via sysfs and\nadds the ability to stop and array without tearing it down.\n\nArray states/settings:\n\n clear\n     No devices, no size, no level\n     Equivalent to STOP_ARRAY ioctl\n inactive\n     May have some settings, but array is not active\n        all IO results in error\n     When written, doesn\u0027t tear down array, but just stops it\n suspended (not supported yet)\n     All IO requests will block. The array can be reconfigured.\n     Writing this, if accepted, will block until array is quiescent\n readonly\n     no resync can happen.  no superblocks get written.\n     write requests fail\n read-auto\n     like readonly, but behaves like \u0027clean\u0027 on a write request.\n\n clean - no pending writes, but otherwise active.\n     When written to inactive array, starts without resync\n     If a write request arrives then\n       if metadata is known, mark \u0027dirty\u0027 and switch to \u0027active\u0027.\n       if not known, block and switch to write-pending\n     If written to an active array that has pending writes, then fails.\n active\n     fully active: IO and resync can be happening.\n     When written to inactive array, starts with resync\n\n write-pending (not supported yet)\n     clean, but writes are blocked waiting for \u0027active\u0027 to be written.\n\n active-idle\n     like active, but no writes have been seen for a while (100msec).\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": "42543769142d2375f2b5f8fc9cac999f84bd4c4c",
      "tree": "404606c37da872639111c5b641f07fff2ded1dff",
      "parents": [
        "07d84d109d8beedd68df9da2e4e9f25c8217e7fb"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Don\u0027t write dirty/clean update to spares - leave them alone\n\n- record the \u0027event\u0027 count on each individual device (they\n  might sometimes be slightly different now)\n- add a new value for \u0027sb_dirty\u0027: \u00273\u0027 means that the super\n  block only needs to be updated to record a clean\u003c-\u003edirty\n  transition.\n- Prefer odd event numbers for dirty states and even numbers\n  for clean states\n- Using all the above, don\u0027t update the superblock on\n  a spare device if the update is just doing a clean-dirty\n  transition.  To accomodate this, a transition from\n  dirty back to clean might now decrement the events counter\n  if nothing else has changed.\n\nThe net effect of this is that spare drives will not see any IO requests\nduring normal running of the array, so they can go to sleep if that is what\nthey want to do.\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": "07d84d109d8beedd68df9da2e4e9f25c8217e7fb",
      "tree": "09b4749cb2ff1759c076c362891a28ceda2b8520",
      "parents": [
        "3285edf152cefff482f95ceb90b1bd46ac169df1"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Allow re-add to work on array without bitmaps\n\nWhen an array has a bitmap, a device can be removed and re-added and only\nblocks changes since the removal (as recorded in the bitmap) will be resynced.\n\nIt should be possible to do a similar thing to arrays without bitmaps.  i.e.\nif a device is removed and re-added and *no* changes have been made in the\ninterim, then the add should not require a resync.\n\nThis patch allows that option.  This means that when assembling an array one\ndevice at a time (e.g.  during device discovery) the array can be enabled\nread-only as soon as enough devices are available, but extra devices can still\nbe added without causing a resync.\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": "3285edf152cefff482f95ceb90b1bd46ac169df1",
      "tree": "88dd6e57f6405d71c621f136d236e1dde599e5a7",
      "parents": [
        "b3cc9ec76ba44d010f4c820c4608b91aaf28a0b9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Fix bug that stops raid5 resync from happening\n\nAs data_disks is *less* than raid_disks, the current test here is obviously\nwrong.  And as the difference is already available in conf-\u003emax_degraded, it\nmakes much more sense to use that.\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": "b3cc9ec76ba44d010f4c820c4608b91aaf28a0b9",
      "tree": "69fc8168c27c616a1a9830c5b992a4221aad7afc",
      "parents": [
        "4d2554d045497d1be3204cf67385f966f01cc9bd"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Mon Jun 26 00:27:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Fix Kconfig error\n\nRAID5 recently changed to RAID456\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": "4d2554d045497d1be3204cf67385f966f01cc9bd",
      "tree": "2dcef5c96d3435eb6d8671e3696d6fe71e19efef",
      "parents": [
        "8838832830d2c6c28ae2db93188ae90652eb7fc2"
      ],
      "author": {
        "name": "Justin Piszcz",
        "email": "jpiszcz@lucidpixels.com",
        "time": "Mon Jun 26 00:27:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: md Kconfig speeling feex\n\nI was experimenting with Linux SW raid today and found a spelling error when\nreading the help menus...  (and fly spell found more).\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": "8838832830d2c6c28ae2db93188ae90652eb7fc2",
      "tree": "d17a7027161352ea1893236dc6ea5bd309f6ceb4",
      "parents": [
        "ce25c31bdd3b39266debd86a7732007e05983a67"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:39 2006 -0700"
      },
      "message": "[PATCH] md: Calculate correct array size for raid10 in new offset mode\n\nThe size calculation made assumtion which the new offset mode didn\u0027t\nfollow.  This gets the size right in all cases.\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": "ce25c31bdd3b39266debd86a7732007e05983a67",
      "tree": "1afafa2a68eb71b702db0a24aff2feb52b9f56c7",
      "parents": [
        "d785a06a0b9d0cd86b3cc1bf8e236e62af7b47ed"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:38 2006 -0700"
      },
      "message": "[PATCH] md: Change md/bitmap file handling to use bmap to file blocks-fix\n\nFix problems with new bmap based access to bitmap files.\n\n1/ When not using a file based bitmap, attach a NULL list of buffers\n   to each page so the common free_buffer routine can cope.\n2/ Use submit_bh to read as well as write, rather than vfs_read.\n   This makes read and write more symetric.\n3/ sync the file before reading, to ensure that the page cache has no\n   dirty pages that might get written out later.\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": "d785a06a0b9d0cd86b3cc1bf8e236e62af7b47ed",
      "tree": "7a238aedb0facb5c207a0477296e78b9ef7d551b",
      "parents": [
        "acc55e220166a5ad898e66ad6153fd62eaaac76d"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:38 2006 -0700"
      },
      "message": "[PATCH] md/bitmap: change md/bitmap file handling to use bmap to file blocks\n\nIf md is asked to store a bitmap in a file, it tries to hold onto the page\ncache pages for that file, manipulate them directly, and call a cocktail of\noperations to write the file out.  I don\u0027t believe this is a supportable\napproach.\n\nThis patch changes the approach to use the same approach as swap files.  i.e.\nbmap is used to enumerate all the block address of parts of the file and we\nwrite directly to those blocks of the device.\n\nswapfile only uses parts of the file that provide a full pages at contiguous\naddresses.  We don\u0027t have that luxury so we have to cope with pages that are\nnon-contiguous in storage.  To handle this we attach buffers to each page, and\nstore the addresses in those buffers.\n\nWith this approach the pagecache may contain data which is inconsistent with\nwhat is on disk.  To alleviate the problems this can cause, md invalidates the\npagecache when releasing the file.  If the file is to be examined while the\narray is active (a non-critical but occasionally useful function), O_DIRECT io\nmust be used.  And new version of mdadm will have support for this.\n\nThis approach simplifies a lot of code:\n - we no longer need to keep a list of pages which we need to wait for,\n   as the b_endio function can keep track of how many outstanding\n   writes there are.  This saves a mempool.\n - -EAGAIN returns from write_page are no longer possible (not sure if\n    they ever were actually).\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": "acc55e220166a5ad898e66ad6153fd62eaaac76d",
      "tree": "c342dcd3303f01d97c5fe7718af9daf22ec086d2",
      "parents": [
        "0cdd02cabd86b5d547f882005e23a93929f0ace9"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:38 2006 -0700"
      },
      "message": "[PATCH] md/bitmap: tidy up i_writecount handling in md/bitmap\n\nmd/bitmap modifies i_writecount of a bitmap file to make sure that no-one else\nwrites to it.  The reverting of the change is sometimes done twice, and there\nis one error path where it is omitted.\n\nThis patch tidies that up.\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": "0cdd02cabd86b5d547f882005e23a93929f0ace9",
      "tree": "f6b54f8c58d96ca239d8a0923025eef69fdd91ff",
      "parents": [
        "a647e4bc5ce697e25ff50d2e22de68a581b1ed38"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Jun 26 00:27:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:38 2006 -0700"
      },
      "message": "[PATCH] md/bitmap: remove dead code from md/bitmap\n\nbitmap_active is never called, and the BITMAP_ACTIVE flag is never users or\ntested, so discard them both.\n\nAlso remove some out-of-date \u0027todo\u0027 comments.\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"
    }
  ],
  "next": "a647e4bc5ce697e25ff50d2e22de68a581b1ed38"
}
