)]}'
{
  "log": [
    {
      "commit": "334e94de9bea353156abd6f2242d3cc4a24562b0",
      "tree": "ff4a253e9e3bf487be03bf58727a7ea40a34ba87",
      "parents": [
        "e17a9489b4a686bb5e9615e1d375c67619cb99c5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 15:05:53 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:15 2006 -0500"
      },
      "message": "[PATCH] deal with rmmod/put_io_context() races\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e17a9489b4a686bb5e9615e1d375c67619cb99c5",
      "tree": "e6574d24ad8f16fefe7663c91cf19109e48f8c6c",
      "parents": [
        "25975f863b0fd42c58109e253e7a4c65d9fdaf48"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:21:20 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:12 2006 -0500"
      },
      "message": "[PATCH] stop elv_unregister() from rogering other iosched\u0027s data, fix locking\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "25975f863b0fd42c58109e253e7a4c65d9fdaf48",
      "tree": "98738124360c12c34b8820c3cc639dc275d1f4d0",
      "parents": [
        "d9ff41879364cfca7c15abc20ae398e35de3f883"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 12 13:45:25 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:09 2006 -0500"
      },
      "message": "[PATCH] stop cfq from pinning queue down\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d9ff41879364cfca7c15abc20ae398e35de3f883",
      "tree": "58b69841c145a000d06658feff5d846eea624399",
      "parents": [
        "a6a0763a60eef374d4f02f82a6ecb6a74f380fcb"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:51:22 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:07 2006 -0500"
      },
      "message": "[PATCH] make cfq_exit_queue() prune the cfq_io_context for that queue\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a6a0763a60eef374d4f02f82a6ecb6a74f380fcb",
      "tree": "ab6811f034eb2839ee07bc8e251b96a1aba313f7",
      "parents": [
        "12a057321529df2fb650ac5f34dfd7abcca667df"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:26:44 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:04 2006 -0500"
      },
      "message": "[PATCH] fix the exclusion for ioprio_set()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "12a057321529df2fb650ac5f34dfd7abcca667df",
      "tree": "b74a85a275cf97cebcd30aa544605081c80d7fb1",
      "parents": [
        "478a82b0edeea1cc82a5f79880b3a15923a678de"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:38:01 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:02 2006 -0500"
      },
      "message": "[PATCH] keep sync and async cfq_queue separate\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "478a82b0edeea1cc82a5f79880b3a15923a678de",
      "tree": "091c2ace634975c62c8236f209b24e4fded81ff4",
      "parents": [
        "7670876d2d194b2aecb54f397704838eee7d72ee"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:25:24 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:33:59 2006 -0500"
      },
      "message": "[PATCH] switch to use of -\u003ekey to get cfq_data by cfq_io_context\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7670876d2d194b2aecb54f397704838eee7d72ee",
      "tree": "4c1b29bba1b038a407870ab62b3dd70057c949e0",
      "parents": [
        "b0a6916bcc48f46996d54b8451591a2f2b7b2f64"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:22:53 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:33:56 2006 -0500"
      },
      "message": "[PATCH] stop leaking cfq_data in cfq_set_request()\n\nWe don\u0027t need to pin -\u003ekey down; -\u003ecfqq-\u003ecfqd will do that for us.\nIncidentally, that stops the leak we had - that reference was never\ndropped.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b0a6916bcc48f46996d54b8451591a2f2b7b2f64",
      "tree": "8b22d7d04a802092928a642628d2ede339a5287a",
      "parents": [
        "c981ff9f893b9ab229a809f8ad287ae43fc17a64"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 14 15:32:50 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:33:54 2006 -0500"
      },
      "message": "[PATCH] fix cfq hash lookups\n\nIf somebody does a hash lookup for cfq_queue while ioprio of an async queue\nis elevated, they shouldn\u0027t end up stuck with lowered ioprio when we go back.\nFix is to use -\u003eorg_ioprio{,class} in hash lookups.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c981ff9f893b9ab229a809f8ad287ae43fc17a64",
      "tree": "c0423d86a33f0f714fa192b4f964269889b12c3f",
      "parents": [
        "8669aafdb5a46a57366dd1540fc475544071a9c9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:51:29 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:33:51 2006 -0500"
      },
      "message": "[PATCH] fix locking in queue_requests_store()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8669aafdb5a46a57366dd1540fc475544071a9c9",
      "tree": "c30fc562aeb1b2c158844b4d30d5423414b719bc",
      "parents": [
        "afc847b7ddcf636e524cf5b0de644bd3a9419a8c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 13:50:00 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:33:49 2006 -0500"
      },
      "message": "[PATCH] fix double-free in blk_init_queue_node()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5ee1af9f519e6dc5a7d7912e87a1aaec857c8818",
      "tree": "736a82a84beb422b4b48d9fba6d0e9129ab1e1fd",
      "parents": [
        "f9262c12c0084ddba445a9a42e98994018e51400"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Mar 08 17:57:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 08 18:10:31 2006 -0800"
      },
      "message": "[PATCH] block: disable block layer bouncing for most memory on 64bit systems\n\nThe low level PCI DMA mapping functions should handle it in most cases.\n\nThis should fix problems with depleting the DMA zone early. The old\ncode used precious GFP_DMA memory in many cases where it was not needed.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b14e3b52fe5a2fb1dfa2f1f7dae4fd5f7d3fc47",
      "tree": "93a65fa0c9e5a10dea118a9594651264f08e58c6",
      "parents": [
        "a8b76b491510b7591c584838d0d7922f9ffe5c2c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Feb 28 09:35:11 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 28 00:38:02 2006 -0800"
      },
      "message": "[PATCH] cfq-iosched: slice expiry fixups\n\nDuring testing of SLES10, we encountered a hang in the CFQ io scheduler.\nTurns out the deferred slice expiry logic is buggy, so remove that for\nnow.  We could be left with an idle queue that would never wake up.  So\nkill that logic, always expire immediately.  Also fix a potential timer\nrace condition.\n\nPatch looks bigger than it is, because it moves a function.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b7ed1de0ae4edb3fd2c53fa3dd7e6f104beb6d00",
      "tree": "998cc8b411555c7225260b7f7cf8e03cb648f37f",
      "parents": [
        "328c2a8a39e1ba43a6e54e43fc752f7035779561",
        "01840f9c9d7ae366311302077ace6bc39169399b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 08 07:58:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 08 07:58:18 2006 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n"
    },
    {
      "commit": "30e9656cc340035e102fea46e1908689494b042d",
      "tree": "5fc623ccad5a1f5b09ebc4b7e8d7c6bec8e485ac",
      "parents": [
        "e5ea0a9fca5612808839dd4bcc41c46fc02451f9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Feb 08 01:01:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 08 07:52:58 2006 -0800"
      },
      "message": "[PATCH] block: implement elv_insert and use it (fix ordcolor flipping bug)\n\nq-\u003eordcolor must only be flipped on initial queueing of a hardbarrier\nrequest.\n\nConstructing ordered sequence and requeueing used to pass through\n__elv_add_request() which flips q-\u003eordcolor when it sees a barrier\nrequest.\n\nThis patch separates out elv_insert() from __elv_add_request() and uses\nelv_insert() when constructing ordered sequence and requeueing.\nelv_insert() inserts the given request at the specified position and\ndoes nothing else.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "01840f9c9d7ae366311302077ace6bc39169399b",
      "tree": "de26c62e94ab279e18b8278cb7d74f1d14290a0c",
      "parents": [
        "ac171c46667c1cb2ee9e22312291df6ed78e1b6e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Feb 03 08:37:08 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Wed Feb 08 10:07:13 2006 +0100"
      },
      "message": "[PATCH] blk: Fix SG_IO ioctl failure retry looping\n\nWhen issuing an SG_IO ioctl through sd that resulted in an unrecoverable\nerror, a nearly infinite retry loop was discovered. This is due to the\nfact that the block layer SG_IO code is not setting up rq-\u003eretries. This\npatch also fixes up the sg_scsi_ioctl path.\n\nSigned-off-by: Brian King \u003cbrking@us.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "238e7db9357bfe1ce3d6f7ac1e60e595e9d46b7b",
      "tree": "3688c8145e4bfa61a387137dafc966470569d2b8",
      "parents": [
        "9a7a67af8bb02106f0fb01dd9d237332f874be9a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Feb 04 23:27:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:51 2006 -0800"
      },
      "message": "[PATCH] block: request_queue-\u003eordcolor must not be flipped on SOFTBARRIER\n\nq-\u003eordcolor must not be flipped on SOFTBARRIER.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9a7a67af8bb02106f0fb01dd9d237332f874be9a",
      "tree": "6ad56122d38d118e6d53caa94a60037291294a25",
      "parents": [
        "88a2a4ac6b671a4b0dd5d2d762418904c05f4104"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sat Feb 04 23:27:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:51 2006 -0800"
      },
      "message": "[PATCH] fix ordering on requeued request drainage\n\nPreviously, if a fs request which was being drained failed and got\nrequeued, blk_do_ordered() didn\u0027t allow it to be reissued, which causes\nqueue stall.  This patch makes blk_do_ordered() use the sequence of each\nrequest to determine whether a request can be issued or not.  This fixes\nthe bug and simplifies code.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88a2a4ac6b671a4b0dd5d2d762418904c05f4104",
      "tree": "8c30052a0d7fadec37c785a42a71b28d0a9c5fcf",
      "parents": [
        "cef5076987dd545ac74f4efcf1c962be8eac34b0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sat Feb 04 23:27:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:51 2006 -0800"
      },
      "message": "[PATCH] percpu data: only iterate over possible CPUs\n\npercpu_data blindly allocates bootmem memory to store NR_CPUS instances of\ncpudata, instead of allocating memory only for possible cpus.\n\nAs a preparation for changing that, we need to convert various 0 -\u003e NR_CPUS\nloops to use for_each_cpu().\n\n(The above only applies to users of asm-generic/percpu.h.  powerpc has gone it\nalone and is presently only allocating memory for present CPUs, so it\u0027s\ncurrently corrupting memory).\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: William Irwin \u003cwli@holomorphy.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3eaf840e0b0046f56602c524c7ba58a82f5526c5",
      "tree": "de525d358029dd1744aa2570fe8b8f8add5f8dd1",
      "parents": [
        "12f03a49cf0ab5e8511911142d28699499a572c4"
      ],
      "author": {
        "name": "Jun\u0027ichi \"Nick\" Nomura",
        "email": "j-nomura@ce.jp.nec.com",
        "time": "Wed Feb 01 03:04:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 08:53:11 2006 -0800"
      },
      "message": "[PATCH] device-mapper disk statistics: timing\n\nRecord I/O timing statistics\n\nThe start time is added to struct dm_io, an existing structure allocated\nprivately internally within dm and attached to each incoming bio.\n\nWe export disk_round_stats() from block/ll_rw_blk.c instead of creating a\nprivate clone.\n\nSigned-off-by: Jun\u0027ichi \"Nick\" Nomura \u003cj-nomura@ce.jp.nec.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": "fddfdeafa8396f85c666bfc5e1e920eb535514cf",
      "tree": "72994a14d741bdb2ca60eeebb6531f95840cffbc",
      "parents": [
        "48bdc8ec4aa2ca04e339bf5c3a47677d8dd00bb6"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 31 15:24:34 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 31 15:24:34 2006 +0100"
      },
      "message": "[BLOCK] A few kerneldoc fixups\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "60481b12b8816d431308c3d974e341ab8c8c0bcf",
      "tree": "c6e0f1b6ccace3aaa96bf26563cf4faba114d2ec",
      "parents": [
        "248d5ca5ed5feb7f1a68d213c0ff89c604a97179"
      ],
      "author": {
        "name": "Tetsuo Takata",
        "email": "takatan.linux@gmail.com",
        "time": "Tue Jan 24 10:34:36 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 24 10:34:36 2006 +0100"
      },
      "message": "[BLOCK] ll_rw_blk: fix setting of -\u003eordered on init\n\nThis makes XFS barrier mounts succeed on my SCSI system.\n\nSigned-off-by: Tetsuo Takata \u003ctakatatt@intellilink.co.jp\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "248d5ca5ed5feb7f1a68d213c0ff89c604a97179",
      "tree": "bf05775c34c326d11ec7789ba71071755032783d",
      "parents": [
        "5f00397644e01adfbebafb5d0ebc01eba522709d"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Tue Jan 24 10:09:14 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 24 10:09:14 2006 +0100"
      },
      "message": "[BLOCK] elevator: allow default scheduler to potentially be modular\n\nJens has decided that allowing the default scheduler to be a module is\na bug, and should not be allowed under kconfig.  However, I find that\nscenario useful for debugging, and wish for the kernel to be able to\nhandle this situation without OOPSing, if I enable such an option in\nthe .config directly.  This patch dynamically checks for the presence\nof the compiled-in default, and falls back to no-op, emitting a\nsuitable error message, when the default is not available\n\nTested for a range of boot options on 2.6.16-rc1-mm2.\n\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "5f00397644e01adfbebafb5d0ebc01eba522709d",
      "tree": "30fa87541eb60d74a0c6476a624d827c1da4dbce",
      "parents": [
        "53e86061b5bd4aece9bbb6b00b30720200596ecb"
      ],
      "author": {
        "name": "Nate Diller",
        "email": "nate.diller@gmail.com",
        "time": "Tue Jan 24 10:07:58 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 24 10:07:58 2006 +0100"
      },
      "message": "[BLOCK] elevator: default choice selection\n\nMy previous default iosched patch did a poor job dealing with the\n\u0027elevator\u003d\u0027 boot-time option.  The old behavior falls back to the\ncompiled-in default if the requested one is not registered at boot\ntime.  This patch dynamically evaluates which default\nto use, and emits a suitable error message when the requested scheduler\nis not available.  It also does the \u0027as\u0027 -\u003e \u0027anticipatory\u0027 conversion\nbefore elevator registration, which along with a modified registration\nfunction, allows it to correctly indicate which default scheduler is\nin use.\n\nTested for a range of boot options on 2.6.16-rc1-mm2.\n\nSigned-off-by: Nate Diller \u003cnate.diller@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "53e86061b5bd4aece9bbb6b00b30720200596ecb",
      "tree": "962917a553ecfc1075060731038ae763fc9e34b5",
      "parents": [
        "2cb2e147a6d20bffd1d6b7a79be7301560f751c3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 17 11:09:27 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Tue Jan 24 10:06:19 2006 +0100"
      },
      "message": "[BLOCK] ll_rw_blk: use preempt-disabling disk_stat_add() in completion\n\nIt can legally be called with interrupts/preemption enabled.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "2cb2e147a6d20bffd1d6b7a79be7301560f751c3",
      "tree": "7b39f720574829823c9736f84bd51ae15acc330b",
      "parents": [
        "3ee68c4af3fd7228c1be63254b9f884614f9ebb2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 17 09:04:32 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Tue Jan 24 10:06:19 2006 +0100"
      },
      "message": "[BLOCK] ll_rw_blk: make max_sectors and max_hw_sectors unsigned ints\n\nIDE lba48 can support full 64k request size, which overflows the\nmax_hw_sectors variable.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "b7bfcf7cbd58d2a64aa46f3b4bec921e346e604f",
      "tree": "e81e63cf1d7af208dc3ea996a417b528a6a8c0e1",
      "parents": [
        "752a3b79630a290cbbe4731e7c61b75d4fbebc5c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 16 09:48:58 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 16 09:48:58 2006 +0100"
      },
      "message": "[BLOCK] elevator: if specified scheduler is not found, fall back to default\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "752a3b79630a290cbbe4731e7c61b75d4fbebc5c",
      "tree": "21d1a7494890dce0903bf9e45ca6ec5059b6d739",
      "parents": [
        "5a225791374dca35bba871a007c78a3d0b14b559"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Mon Jan 16 09:47:37 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 16 09:47:37 2006 +0100"
      },
      "message": "[BLOCK] elevator: Make elevator\u003das work again for anticipatory\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "7170be5f586b59bdcdab082778a5d9203ba7b667",
      "tree": "00d34a062c5bbab83315232078296567037bd3f4",
      "parents": [
        "faf3a98918aa5f14a29e0d246e194be58b9357f0"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@redhat.com",
        "time": "Sat Jan 14 13:20:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jan 14 18:25:19 2006 -0800"
      },
      "message": "[PATCH] convert /proc/devices to use seq_file interface\n\nA Christoph suggested that the /proc/devices file be converted to use the\nseq_file interface.  This patch does that.\n\nI\u0027ve obxerved one or two installation that had sufficiently large sans that\nthey overran the 4k limit on /proc/devices.\n\nSigned-off-by: Neil Horman \u003cnhorman@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1bc691d357c646700b9523d2aeca02847d3fb3f4",
      "tree": "430e13982f894c44e4a33dee188b3c718ec989ed",
      "parents": [
        "593195f9b2309693f27b402f34573f7920b82c3e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Jan 12 15:39:26 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:05:39 2006 -0800"
      },
      "message": "[PATCH] fix queue stalling while barrier sequencing\n\nIf ordered tag isn\u0027t supported, request ordering for barrier\nsequencing is performed by queue draining, which basically hangs the\nrequest queue until elv_completed_request() reports completion of all\nprevious fs requests.\n\nThe condition check in elv_completed_request() was only performed for\nfs requests.  If a special request is queued between the last\nto-be-drained request and the barrier sequence, draining is never\ncompleted and the queue is stalled forever.\n\nThis patch moves the end-of-draining condition check such that it\u0027s\nperformed for all requests.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c59ede7b78db329949d9cdcd7064e22d357560ef",
      "tree": "f9dc9d464fdad5bfd464d983e77c1af031389dda",
      "parents": [
        "e16885c5ad624a6efe1b1bf764e075d75f65a788"
      ],
      "author": {
        "name": "Randy.Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jan 11 12:17:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 18:42:13 2006 -0800"
      },
      "message": "[PATCH] move capable() to capability.h\n\n- Move capable() from sched.h to capability.h;\n\n- Use \u003clinux/capability.h\u003e where capable() is used\n\t(in include/, block/, ipc/, kernel/, a few drivers/,\n\tmm/, security/, \u0026 sound/;\n\tmany more drivers/ to go)\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2688f00dc0ceb9d9867434dffbd080411fc23b0",
      "tree": "433549c6a655ac879654ba82d312911677650380",
      "parents": [
        "356cebea1123804e4aa85b43ab39bbd0ac8e667c",
        "a9925a06ea52a44b4bf4a941342e8240eaf22417"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 09 09:26:40 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 09 09:26:40 2006 -0800"
      },
      "message": "Merge branch \u0027blk-softirq\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\nManual merge for trivial #include changes\n"
    },
    {
      "commit": "ff856bad67cb65cb4dc4ef88b808804fc4265782",
      "tree": "2db1e0be2be1e814cf8fe9bb8d3d7401fb24dd86",
      "parents": [
        "5367f2d67c7d0bf1faae90e6e7b4e2ac3c9b5e0f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 16:02:34 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 16:02:34 2006 +0100"
      },
      "message": "[BLOCK] ll_rw_blk: Enable out-of-order request completions through softirq\n\nRequest completion can be a quite heavy process, since it needs to\niterate through the entire request and complete the bio\u0027s it holds.\nThis patch adds blk_complete_request() which moves this processing\ninto a dedicated block softirq.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "356cebea1123804e4aa85b43ab39bbd0ac8e667c",
      "tree": "aac7a1421808628fcc12340ce3ad4514c681b297",
      "parents": [
        "5a57be8d100c67a033ec78f00d5a0cd387da72e9"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 15:30:20 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 15:30:20 2006 +0100"
      },
      "message": "[BLOCK] Kill blk_attempt_remerge()\n\nIt\u0027s a broken interface, it\u0027s done way too late. And apparently it triggers\nslab problems in recent kernels as well (most likely after the generic dispatch\ncode was merged). So kill it, ide-cd is the only user of it.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "5a57be8d100c67a033ec78f00d5a0cd387da72e9",
      "tree": "f83a6c107c1cb9faae1d287b93766cd5091d8d41",
      "parents": [
        "0ea60b5ad8c3630e8f44c443f173d841be7fc701"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 14:52:21 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 14:52:21 2006 +0100"
      },
      "message": "[BLOCK] scsi_ioctl: file can be NULL from ioctl_by_bdev()\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "769db45b73896a88d6b40e3e648dfc50a155ec93",
      "tree": "773ffec86ddf1ab3ddaf1de5959ec3b94807e395",
      "parents": [
        "1abee6d2d1b6366df96fce1d43eefd1819e1b055"
      ],
      "author": {
        "name": "Coywolf Qi Hunt",
        "email": "qiyong@fc-cn.com",
        "time": "Wed Dec 28 10:55:49 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Jan 09 14:44:15 2006 +0100"
      },
      "message": "make elv_try_merge() static, kill the dead declaration of\n\nelv_try_last_merge().\n\nSigned-off-by: Coywolf Qi Hunt \u003cqiyong@fc-cn.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "1abee6d2d1b6366df96fce1d43eefd1819e1b055",
      "tree": "90e65f2b1c4cc985609e709c715cd5e01514d364",
      "parents": [
        "5367f2d67c7d0bf1faae90e6e7b4e2ac3c9b5e0f"
      ],
      "author": {
        "name": "Nicolas Kaiser",
        "email": "nikai@nikai.net",
        "time": "Mon Nov 28 09:40:20 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Jan 09 14:44:15 2006 +0100"
      },
      "message": "[BLOCK][TRIVIAL] ll_rw_blk: header included twice\n\nlinux/blkdev.h included twice\n\nSigned-off-by: Nicolas Kaiser \u003cnikai@nikai.net\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "a885c8c4316e1c1d2d2c8755da3f3d14f852528d",
      "tree": "e4f4e7a7657c0944d11c259f8f17ffcd6b2da0f5",
      "parents": [
        "5b0ed2c64d8fdafb5fcfb3baabdd288628b1ff9b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Jan 08 01:02:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:54 2006 -0800"
      },
      "message": "[PATCH] Add block_device_operations.getgeo block device method\n\nHDIO_GETGEO is implemented in most block drivers, and all of them have to\nduplicate the code to copy the structure to userspace, as well as getting\nthe start sector.  This patch moves that to common code [1] and adds a\n-\u003egetgeo method to fill out the raw kernel hd_geometry structure.  For many\ndrivers this means -\u003eioctl can go away now.\n\n[1] the s390 block drivers are odd in this respect.  xpram sets -\u003estart\n    to 4 always which seems more than odd, and the dasd driver shifts\n    the start offset around, probably because of it\u0027s non-standard\n    sector size.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: \u003cmike.miller@hp.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\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": "d99cf9d679a520d67f81d805b7cb91c68e1847f0",
      "tree": "415aefe6d168df27c006fcc53b1ea5242eabaaea",
      "parents": [
        "7ed40918a386afc2e14a6d3da563ea6d13686c25",
        "e650c305ec3178818b317dad37a6d9c7fa8ba28d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 09:01:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 09:01:25 2006 -0800"
      },
      "message": "Merge branch \u0027post-2.6.15\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\nManual fixup for merge with Jens\u0027 \"Suspend support for libata\", commit\nID 9b847548663ef1039dd49f0eb4463d001e596bc3.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "347a8dc3b815f0c0fa62a1df075184ffe4cbdcf1",
      "tree": "a6ec76690127e87fe6efa42b6238caadd6c07e7b",
      "parents": [
        "9bbc8346fb21fad3f678220b067450e436e45dbf"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jan 06 00:19:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:53 2006 -0800"
      },
      "message": "[PATCH] s390: cleanup Kconfig\n\nSanitize some s390 Kconfig options.  We have ARCH_S390, ARCH_S390X,\nARCH_S390_31, 64BIT, S390_SUPPORT and COMPAT.  Replace these 6 options by\nS390, 64BIT and COMPAT.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "797e7dbbee0a91fa1349192f18ad5c454997d876",
      "tree": "c0d5974f469dd2d3d4f9b15d87d201b61e248f54",
      "parents": [
        "52d9e675361261a1eb1716b02222ec6177ec342b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:51:03 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:51:03 2006 +0100"
      },
      "message": "[BLOCK] reimplement handling of barrier request\n\nReimplement handling of barrier requests.\n\n* Flexible handling to deal with various capabilities of\n  target devices.\n* Retry support for falling back.\n* Tagged queues which don\u0027t support ordered tag can do ordered.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "52d9e675361261a1eb1716b02222ec6177ec342b",
      "tree": "a9ed62b6fe9b6622b7c42249e983136f38f75255",
      "parents": [
        "8ffdc6550c47f75ca4e6c9f30a2a89063e035cf2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:49:58 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:49:58 2006 +0100"
      },
      "message": "[BLOCK] ll_rw_blk: separate out bio init part from __make_request\n\nSeparate out bio initialization part from __make_request.  It\nwill be used by the following blk_ordered_reimpl.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "8ffdc6550c47f75ca4e6c9f30a2a89063e035cf2",
      "tree": "a478b9acef5c66242a964154f7ad3a0ea750ef0f",
      "parents": [
        "64100099ed22f71cce656c5c2caecf5c9cf255dc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:49:03 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:49:03 2006 +0100"
      },
      "message": "[BLOCK] add @uptodate to end_that_request_last() and @error to rq_end_io_fn()\n\nadd @uptodate argument to end_that_request_last() and @error\nto rq_end_io_fn().  there\u0027s no generic way to pass error code\nto request completion function, making generic error handling\nof non-fs request difficult (rq-\u003eerrors is driver-specific and\neach driver uses it differently).  this patch adds @uptodate\nto end_that_request_last() and @error to rq_end_io_fn().\n\nfor fs requests, this doesn\u0027t really matter, so just using the\nsame uptodate argument used in the last call to\nend_that_request_first() should suffice.  imho, this can also\nhelp the generic command-carrying request jens is working on.\n\nSigned-off-by: tejun heo \u003chtejun@gmail.com\u003e\nSigned-Off-By: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "64100099ed22f71cce656c5c2caecf5c9cf255dc",
      "tree": "f6ebf7c94ee2eeb080d25880ffca839ec39ec47e",
      "parents": [
        "80cfd548eed68cf90c5ae9cfcd6b02230cece756"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Fri Jan 06 09:46:02 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:46:02 2006 +0100"
      },
      "message": "[BLOCK] mark some block/ variables cons\n\nthe patch below marks various read-only variables in block/* as const,\nso that gcc can optimize the use of them; eg gcc will replace the use by\nthe value directly now and will even remove the memory usage of these.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "88ee5ef157202624de2b43b3512fdcb54fda1ab5",
      "tree": "a95cd472fb62eab2a6bd1c651ddf44c3f248868d",
      "parents": [
        "ef9be1d336378de279d4e37779f1b83cebadbcc0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sat Nov 12 11:09:12 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jan 06 09:39:04 2006 +0100"
      },
      "message": "[BLOCK] ll_rw_blk: fastpath get_request()\n\nOriginally from: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\n\nMove current_io_context out of the get_request fastpth.  Also try to\nstreamline a few other things in this area.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "ef9be1d336378de279d4e37779f1b83cebadbcc0",
      "tree": "decd8ee4c74ea8c30de9eca3a591bb0962ccd15f",
      "parents": [
        "9f155b9802bb7049cd0f216c3fe903b58620df11"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Nov 11 14:27:09 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jan 06 09:39:03 2006 +0100"
      },
      "message": "[BLOCK] as-iosched: update alias handling\n\nUnlike other ioscheds, as-iosched handles alias by chaing them using\nrq-\u003equeuelist.  As aliased requests are very rare in the first place,\nthis complicates merge/dispatch handling without meaningful\nperformance improvement.  This patch updates as-iosched to dump\naliased requests into dispatch queue as other ioscheds do.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "db9edfd7e339ca4113153d887e782dd05be5a9eb",
      "tree": "0a4ba12447a0cabc800adc7e9667d284777b0181",
      "parents": [
        "631b034724364b413e8a52e7c2e03a9d77e4c2b4",
        "fd586bacf439f36dea9b9bf6e6133ac87df2730c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 04 18:44:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 04 18:44:12 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\nTrivial manual merge fixup for usb_find_interface clashes.\n"
    },
    {
      "commit": "f61ea1b0c825a20a1826bb43a226387091934586",
      "tree": "fdedf0a2368f707e3fd5205db05bfcbac79606ec",
      "parents": [
        "d347da0deffa1d8f88f0d270eab040e4707c9916",
        "7b32b8e018d8f8cc94c808a5fa84a3f889441b91"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 04 16:30:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 04 16:30:12 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n"
    },
    {
      "commit": "312c004d36ce6c739512bac83b452f4c20ab1f62",
      "tree": "e61e8331680a0da29557fe21414d3b31e62c9293",
      "parents": [
        "5f123fbd80f4f788554636f02bf73e40f914e0d6"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@suse.de",
        "time": "Wed Nov 16 09:00:00 2005 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 16:18:08 2006 -0800"
      },
      "message": "[PATCH] driver core: replace \"hotplug\" by \"uevent\"\n\nLeave the overloaded \"hotplug\" word to susbsystems which are handling\nreal devices. The driver core does not \"plug\" anything, it just exports\nthe state to userspace and generates events.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f98d2dfd02183e016a6295f72140c60d691c9188",
      "tree": "d92ac89a1e5096f979bb93029b3f06e46973e7ca",
      "parents": [
        "931b11be325e0e866b64bac7cab64d51c7759371"
      ],
      "author": {
        "name": "Ben Collins",
        "email": "bcollins@ubuntu.com",
        "time": "Mon Dec 19 11:49:24 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Dec 19 16:47:50 2005 -0800"
      },
      "message": "[PATCH] block: Cleanup CDROMEJECT ioctl\n\nThis is just a basic cleanup. No change in functionality.\n\nSigned-off-by: Ben Collins \u003cbcollins@ubuntu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "defd94b75409b983f94548ea2f52ff5787ddb848",
      "tree": "0138b2dae748de88edaee4da23431f1a9dd347a1",
      "parents": [
        "8b05b773b6030de5b1bab1cbb0bf1ff8c34cdbe0"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Mon Dec 05 02:37:06 2005 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.(none)",
        "time": "Thu Dec 15 15:11:40 2005 -0800"
      },
      "message": "[SCSI] seperate max_sectors from max_hw_sectors\n\n- export __blk_put_request and blk_execute_rq_nowait\nneeded for async REQ_BLOCK_PC requests\n- seperate max_hw_sectors and max_sectors for block/scsi_ioctl.c and\nSG_IO bio.c helpers per Jens\u0027s last comments. Since block/scsi_ioctl.c SG_IO was\nalready testing against max_sectors and SCSI-ml was setting max_sectors and\nmax_hw_sectors to the same value this does not change any scsi SG_IO behavior. It only\nprepares ll_rw_blk.c, scsi_ioctl.c and bio.c for when SCSI-ml begins to set\na valid max_hw_sectors for all LLDs. Today if a LLD does not set it\nSCSI-ml sets it to a safe default and some LLDs set it to a artificial low\nvalue to overcome memory and feedback issues.\n\nNote: Since we now cap max_sectors to BLK_DEF_MAX_SECTORS, which is 1024,\ndrivers that used to call blk_queue_max_sectors with a large value of\nmax_sectors will now see the fs requests capped to BLK_DEF_MAX_SECTORS.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "6e39b69e7ea9205c5f80aeac3ef999ab8fb1a4cc",
      "tree": "abf6bf248970a249cc15e0c3df75ae42833be084",
      "parents": [
        "9e1fe9314cb5649b2dc73690f2cd8d0068e633d9"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Fri Nov 11 05:30:24 2005 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.(none)",
        "time": "Wed Dec 14 19:00:50 2005 -0800"
      },
      "message": "[SCSI] export blk layer functions needed for blk_execute_rq_nowait\n\nTo send async requests we need these two functions exported.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "8ad9ebb391e4cd75837ee608b9c33fcaceda0bc2",
      "tree": "bac5dc39477176652b07dea14052d6febc2708bc",
      "parents": [
        "f9e6bfa141c5bcf3402d98204b7b23b310be9ddb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Nov 21 19:49:41 2005 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 21 11:04:52 2005 -0800"
      },
      "message": "[PATCH] as-iosched: remove state assertion in as_add_request()\n\nKill the arq-\u003estate poison statement in as_add_request(), it can trigger\nfor perfectly valid code that just reuses a request after io completion\ninstead of freeing it and allocating a new one. We probably should\nintroduce a blk_init_request() to start from scratch, but for now just\nkill it as we will be removing the as specific poisoning soon.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eb97b73d75d5c9af7c78c05106de9e3fdc4455ab",
      "tree": "b5e87f732a72cb3cdff96f7116906ed6a2f9643e",
      "parents": [
        "811803c5572b296e0031e0099203de90d77c7bcf"
      ],
      "author": {
        "name": "Coywolf Qi Hunt",
        "email": "qiyong@fc-cn.com",
        "time": "Wed Nov 16 15:27:24 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Nov 18 21:59:31 2005 +0100"
      },
      "message": "[BLOCK] new block/ directory comment tidy\n\nSome leftover comments referring to drivers/block that are now block/.\nThey don\u0027t add any information we don\u0027t already have, so kill them.\n\nSigned-off-by: Coywolf Qi Hunt \u003cqiyong@fc-cn.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "3beb2077125d8457118140653e75efc998ac6630",
      "tree": "130dd33c810471790554d21eab32f5f859715fd7",
      "parents": [
        "5a7c47eefb31f6b4982add7473ef3e551b058ea4"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 18:22:36 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:57:05 2005 +0100"
      },
      "message": "[BLOCK] elevator: elv_latter/former_request update\n\nWith generic dispatch queue update, implicit former/latter request\nhandling using rq-\u003equeuelist.prev/next doesn\u0027t work as expected\nanymore.  Also, the only iosched dependent on this feature was\nnoop-iosched and it has been reimplemented to have its own\nlatter/former methods.  This patch removes implicit former/latter\nhandling.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "5a7c47eefb31f6b4982add7473ef3e551b058ea4",
      "tree": "6bff2f1ab58080d759c8788680e05359ba0d5f69",
      "parents": [
        "b740d98f5614e34b4cff2e1e67826f007c8d4f30"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 18:21:30 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:56:52 2005 +0100"
      },
      "message": "[BLOCK] noop-iosched: reimplementation of request dispatching\n\nThe original implementation directly used dispatch queue.  As new\ngeneric dispatch queue imposes stricter rules over ioscheds and\ndispatch queue usage, this direct use becomes somewhat problematic.\nThis patch reimplements noop-iosched such that it complies to generic\niosched model better.  Request merging with q-\u003elast_merge and\nrq-\u003equeuelist.prev/next work again now.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\n"
    },
    {
      "commit": "b740d98f5614e34b4cff2e1e67826f007c8d4f30",
      "tree": "50ff24c84b2ecfc2e8e518b1d9aecf3be2bc8ec5",
      "parents": [
        "be56123568072d223263a6a70a087d1e7faabb83"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 18:20:16 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:56:36 2005 +0100"
      },
      "message": "[BLOCK] cfq-iosched: fix slice_left calculation\n\nWhen cfq slice expires, remainder of slice is calculated and stored in\ncfqq-\u003eslice_left.  Current code calculates the opposite of remainder -\nhow many jiffies the cfqq has used past slice end.  This patch fixes\nthe bug.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "be56123568072d223263a6a70a087d1e7faabb83",
      "tree": "e6044bff3c9dba3392dfe1a4b172d87081d55334",
      "parents": [
        "15853af9f07673680439b224519c692f1352b959"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 08:55:01 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:56:21 2005 +0100"
      },
      "message": "[BLOCK] fix string handling in elv_iosched_store\n\nelv_iosched_store doesn\u0027t terminate string passed from userspace if\nit\u0027s too long.  Also, if the written length is zero (probably not\npossible), it accesses elevator_name[-1].  This patch fixes both bugs.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "15853af9f07673680439b224519c692f1352b959",
      "tree": "e6a8fc1cd34dec568883cd62102e1e626d9241d9",
      "parents": [
        "1b5ed5e1f1315e37380e55102f58bcae3344d2a7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 08:52:05 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:56:06 2005 +0100"
      },
      "message": "[BLOCK] Implement elv_drain_elevator for improved switch error detection\n\nThis patch adds request_queue-\u003enr_sorted which keeps the number of\nrequests in the iosched and implement elv_drain_elevator which\nperforms forced dispatching.  elv_drain_elevator checks whether\niosched actually dispatches all requests it has and prints error\nmessage if it doesn\u0027t.  As buggy forced dispatching can result in\nwrong barrier operations, I think this extra check is worthwhile.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "1b5ed5e1f1315e37380e55102f58bcae3344d2a7",
      "tree": "785dc9675e2f22b60017030063ba103740c72f16",
      "parents": [
        "407df2aa29a33fe16f6ee4bac8cdfa414783b9f1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 08:49:19 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:55:51 2005 +0100"
      },
      "message": "[BLOCK] cfq-iosched: cfq forced dispatching fix\n\ncfq forced dispatching might not return all requests on the queue.\nThis bug can hang elevator switchinig and corrupt request ordering\nduring flush sequence.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "407df2aa29a33fe16f6ee4bac8cdfa414783b9f1",
      "tree": "137e536d79e9fc777adc8c5bde842fea8b53d88a",
      "parents": [
        "47a004103d663bbba8c7c433a710a86f44351cf3"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Nov 10 08:48:21 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:55:37 2005 +0100"
      },
      "message": "[BLOCK] elevator: run queue in elevator_switch\n\nelevator_dispatch needs to run queue after forced dispatching;\notherwise, the queue might stall.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "47a004103d663bbba8c7c433a710a86f44351cf3",
      "tree": "91bf9479fa43e7a13b02b2f6b957373b5b28b5ef",
      "parents": [
        "cff3ba2204a0797b05150a4b2b7f40a55023d952"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Nov 09 13:38:47 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:55:21 2005 +0100"
      },
      "message": "[BLOCK] Document the READ/WRITE splitup of the disk stats\n\nUse the symbolic name where appropriate and add a comment to the\ndisk_stats structure.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "cff3ba2204a0797b05150a4b2b7f40a55023d952",
      "tree": "56d3527958ec1aee1f2c0b185134883095175012",
      "parents": [
        "b8ea2cb5120a92fe63053a2896be42abbb919a76"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Wed Nov 09 13:24:20 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:55:05 2005 +0100"
      },
      "message": "[BLOCK] elevator init fixes #2\n\nIn addition to the first patch, which is probably goodness, I found the\ncause of my panic - applying this patch fixes it and now I am booting.\nIf the chosen_elevator[] is not found, fall back to noop.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "b8ea2cb5120a92fe63053a2896be42abbb919a76",
      "tree": "edbe103c6c5c2fe971ee270d8b0e3ae7dab8af83",
      "parents": [
        "cd52d1ee9a92587b242d946a2300a3245d3b885a"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Wed Nov 09 13:23:01 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Nov 12 10:54:48 2005 +0100"
      },
      "message": "[BLOCK] elevator init fixes\n\nI got a panic in the elevator code, backtrace :\n\nUnable to handle kernel NULL pointer dereference at virtual address 00000060\n..\nEIP is at elevator_put+0x0/0x30 (null elevator_type passed)\n..\nelevator_init+0x38\nblk_init_queu_node+0xc9\nfloppy_init+0xdb\ndo_initcalls+0x23\ninit+0x10a\ninit+0x0\n\nClearly if the kmalloc here fails, e-\u003eelevator_type is not yet set; this\nappears to be the correct fix, but I think I probably hit the second case\ndue to a race condition.  Someone more familiar with the elevator code\nshould look at this more closely until I can determine if I can reproduce.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "333c47c847c90aaefde8b593054d9344106333b5",
      "tree": "a4aec7b18ffe8d8dd88e027e5e4d84b2d838fe8a",
      "parents": [
        "8f0cb147b2fb12427bf6abef7fed2b604557a41e",
        "c6ea2ba7b8acdb6c4a883b2d38607c8078dff4ee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 08:32:39 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 08:32:39 2005 -0800"
      },
      "message": "Merge branch \u0027block-dir\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n"
    },
    {
      "commit": "c6ea2ba7b8acdb6c4a883b2d38607c8078dff4ee",
      "tree": "d175d3c28c0ff28cee62a4073c48f96b029cacab",
      "parents": [
        "3a65dfe8c088143c7155cfd36a72f4b0ad2fc4b2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Nov 04 08:44:58 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Nov 04 08:44:58 2005 +0100"
      },
      "message": "[BLOCK] iosched: fix setting of default io scheduler\n\nWith the recent reorg of the io scheduler selection, it unfortunately\nbecame possible to select an io scheduler to be the default even if it\nwasn\u0027t builtin. Fix this by requiring the default scheduler to be\nbuiltin.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "3a65dfe8c088143c7155cfd36a72f4b0ad2fc4b2",
      "tree": "db930c9f71f94d3ee674f65e38c38e95ca97227e",
      "parents": [
        "0f3278d14f0255e4cd9e07ccefc33ff12d8bb59c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Nov 04 08:43:35 2005 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Nov 04 08:43:35 2005 +0100"
      },
      "message": "[BLOCK] Move all core block layer code to new block/ directory\n\ndrivers/block/ is right now a mix of core and driver parts. Lets move\nthe core parts to a new top level directory. Al will move the fs/\nrelated block parts to block/ next.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    }
  ]
}
