)]}'
{
  "log": [
    {
      "commit": "2d8f613160ed303f5fe310f21bba334a4b074fa5",
      "tree": "7e6878d6391919019b4904714cfe8fc0ef4709be",
      "parents": [
        "00a2b0f6dd2372842df73de72d51621b539fea44"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Aug 22 21:22:13 2006 +0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Aug 22 12:52:23 2006 -0700"
      },
      "message": "elv_unregister: fix possible crash on module unload\n\nAn exiting task or process which didn\u0027t do I/O yet have no io context,\nelv_unregister() should check it is not NULL.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "be33c3a67bb717508ab1eab0f2fa570fabcbc4d2",
      "tree": "a3ed181d91d97487b5918a8e8c4eab05166978f1",
      "parents": [
        "e014ff8d4285b81f0de0719d8eee72bc50bfd4be"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Aug 21 08:36:12 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Aug 21 10:02:54 2006 +0200"
      },
      "message": "[PATCH] cfq_cic_link: fix usage of wrong cfq_io_context\n\nObviously, cfq_cic_link() shouldn\u0027t free a just allocated cfq_io_context?\nThe dead key is from __cic, so drop that.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "9f83e45eb54fc7198dc59fc63255341851ba4c48",
      "tree": "3874581e08052b7f37f164110b3bd44ae5eff291",
      "parents": [
        "78bd4d484f81a611ef6ff02f909e576cb9aac7f2"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Aug 21 08:34:15 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Aug 21 08:34:15 2006 +0200"
      },
      "message": "[PATCH] Fix current_io_context() vs set_task_ioprio() race\n\nI know nothing about io scheduler, but I suspect set_task_ioprio() is not safe.\n\ncurrent_io_context() initializes \"struct io_context\", then sets -\u003eio_context.\nset_task_ioprio() running on another cpu may see the changes out of order, so\n-\u003eset_ioprio(ioc) may use io_context which was not initialized properly.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "44eb123126d289bac398cac0232309c228386671",
      "tree": "129504f649195d5cff96c4c94a345d459f770896",
      "parents": [
        "ad01b1ca797e5898cd40bb32cf0dc8c85aa9f7e8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jul 25 15:05:21 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jul 25 15:05:21 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: don\u0027t use a hard jiffies value, translate from msecs\n\nThe CIC_SEEKY() test really wants to use the minimum of either:\n\n- 2 msecs (not jiffies)\n\n- or, the pending slice time\n\nSo code it like that.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "ad01b1ca797e5898cd40bb32cf0dc8c85aa9f7e8",
      "tree": "c6232d2da8f031d4995d5f871458f280921a7ba2",
      "parents": [
        "7b30f09245d0e6868819b946b2f6879e5d3d106b"
      ],
      "author": {
        "name": "Milton Miller",
        "email": "miltonm@bga.com",
        "time": "Tue Jul 25 15:04:13 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jul 25 15:04:13 2006 +0200"
      },
      "message": "[PATCH] blktrace: fix read-ahead bit\n\nIt should be toggling the same bit on and off, fix it up.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "ddca60c59032b2c2babc0003cf01015aff340b79",
      "tree": "c836af2259cb55ebae060268c52b1d3f4773d819",
      "parents": [
        "7e56a7dcbb974d9725d80e50d70c6eed7f71110b"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jul 14 00:24:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 14 21:53:53 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate the BLKPG_DEL_PARTITION ioctl\n\nThe delete partition IOCTL takes the bd_mutex for both the disk and the\npartition; these have an obvious hierarchical relationship and this patch\nannotates this relationship for lockdep.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1959d21232931dfa686769a21161413f10d6652f",
      "tree": "c311b9fce998ce66665bda261c470a6fb981aa5c",
      "parents": [
        "40359ccb836866435b03a0cb57345002b587d875"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jul 06 10:18:05 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jul 06 10:18:05 2006 +0200"
      },
      "message": "[PATCH] Only the first two bits in bio-\u003ebi_rw and rq-\u003eflags match\n\nNot three, as assumed. This causes the barrier bit to be needlessly set\nfor some IO.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "40359ccb836866435b03a0cb57345002b587d875",
      "tree": "4e0530a7759ba9802658901432a89683fbb0965d",
      "parents": [
        "fc0a75ce4835187a3f76d6b35f0644d1b168eef5"
      ],
      "author": {
        "name": "Nathan Scott",
        "email": "nathans@sgi.com",
        "time": "Thu Jul 06 10:03:28 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jul 06 10:03:28 2006 +0200"
      },
      "message": "[PATCH] blktrace: readahead support\n\nProvide the needed kernel support for distinguishing readahead\nfrom regular read requests when tracing block devices.\n\nSigned-off-by: Nathan Scott \u003cnathans@sgi.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "60be6b9a41cb0da0df7a9f11486da56baebf04cd",
      "tree": "26cb558d0d57183fdbf9136ad54b581328d6f016",
      "parents": [
        "366c7f554e888e51b8395f9b07b273fe775c7ff3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:09 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate on-stack completions\n\nlockdep needs to have the waitqueue lock initialized for on-stack waitqueues\nimplicitly initialized by DECLARE_COMPLETION().  Annotate on-stack completions\naccordingly.\n\nHas no effect on non-lockdep kernels.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22a3e233ca08a2ddc949ba1ae8f6e16ec7ef1a13",
      "tree": "7ef158ba2c30e0dde2dc103d1904fae243759a6b",
      "parents": [
        "39302175c26d74be35715c05a0f342c9e64c21bf",
        "6ab3d5624e172c553004ecc862bfeac16d9d68b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 15:39:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 15:39:30 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  Remove obsolete #include \u003clinux/config.h\u003e\n  remove obsolete swsusp_encrypt\n  arch/arm26/Kconfig typos\n  Documentation/IPMI typos\n  Kconfig: Typos in net/sched/Kconfig\n  v9fs: do not include linux/version.h\n  Documentation/DocBook/mtdnand.tmpl: typo fixes\n  typo fixes: specfic -\u003e specific\n  typo fixes in Documentation/networking/pktgen.txt\n  typo fixes: occuring -\u003e occurring\n  typo fixes: infomation -\u003e information\n  typo fixes: disadvantadge -\u003e disadvantage\n  typo fixes: aquire -\u003e acquire\n  typo fixes: mecanism -\u003e mechanism\n  typo fixes: bandwith -\u003e bandwidth\n  fix a typo in the RTC_CLASS help text\n  smb is no longer maintained\n\nManually merged trivial conflict in arch/um/kernel/vmlinux.lds.S\n"
    },
    {
      "commit": "f8891e5e1f93a128c3900f82035e8541357896a7",
      "tree": "97b078ac97970962b17c85d39fd64cb48dc01168",
      "parents": [
        "ca889e6c45e0b112cb2ca9d35afc66297519b5d5"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 30 01:55:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 30 11:25:36 2006 -0700"
      },
      "message": "[PATCH] Light weight event counters\n\nThe remaining counters in page_state after the zoned VM counter patches\nhave been applied are all just for show in /proc/vmstat.  They have no\nessential function for the VM.\n\nWe use a simple increment of per cpu variables.  In order to avoid the most\nsevere races we disable preempt.  Preempt does not prevent the race between\nan increment and an interrupt handler incrementing the same statistics\ncounter.  However, that race is exceedingly rare, we may only loose one\nincrement or so and there is no requirement (at least not in kernel) that\nthe vm event counters have to be accurate.\n\nIn the non preempt case this results in a simple increment for each\ncounter.  For many architectures this will be reduced by the compiler to a\nsingle instruction.  This single instruction is atomic for i386 and x86_64.\n And therefore even the rare race condition in an interrupt is avoided for\nboth architectures in most cases.\n\nThe patchset also adds an off switch for embedded systems that allows a\nbuilding of linux kernels without these counters.\n\nThe implementation of these counters is through inline code that hopefully\nresults in only a single instruction increment instruction being emitted\n(i386, x86_64) or in the increment being hidden though instruction\nconcurrency (EPIC architectures such as ia64 can get that done).\n\nBenefits:\n- VM event counter operations usually reduce to a single inline instruction\n  on i386 and x86_64.\n- No interrupt disable, only preempt disable for the preempt case.\n  Preempt disable can also be avoided by moving the counter into a spinlock.\n- Handling is similar to zoned VM counters.\n- Simple and easily extendable.\n- Can be omitted to reduce memory use for embedded use.\n\nReferences:\n\nRFC http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113512330605497\u0026w\u003d2\nRFC http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114988082814934\u0026w\u003d2\nlocal_t http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114991748606690\u0026w\u003d2\nV2 http://marc.theaimsgroup.com/?t\u003d115014808400007\u0026r\u003d1\u0026w\u003d2\nV3 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115024767022346\u0026w\u003d2\nV4 http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115047968808926\u0026w\u003d2\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\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": "5a67e4c5b6faaccf31740a07d93704166405d880",
      "tree": "a302ac0dae12f3e430ff485242bc0a85ddfbc00d",
      "parents": [
        "39f4885c56073ecafd482d7e10dd7b17900fa312"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:41 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: use hotplug version of cpu notifier in appropriate places\n\nMake use the of newly defined hotplug version of cpu_notifier functionality\nwherever appropriate.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "054cc8a2d808822dadf488a61729e3e550f114c4",
      "tree": "da7e5ecce06d1898263da9b47714b0b0fa972397",
      "parents": [
        "9c7b216d23e820e0e148d5be01bbb5bd2d8378fe"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:41 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: revert initdata patch submitted for 2.6.17\n\nThis patch reverts notifier_block changes made in 2.6.17\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6e05edc59ecd79e8badf440c0d295a979bdfa3e",
      "tree": "50362161f69317242ab603c51a18a818a4c93285",
      "parents": [
        "f18190bd3407554ba6df30a1927e07e6cba93e56"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Mon Jun 26 18:35:02 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jun 26 18:35:02 2006 +0200"
      },
      "message": "spelling fixes\n\nacquired (aquired)\ncontiguous (contigious)\nsuccessful (succesful, succesfull)\nsurprise (suprise)\nwhether (weather)\nsome other misspellings\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "8269730b389d4793348d521140f9c76fb1828249",
      "tree": "c10c9441a16265f698dd4a38014c9d3026ee07c0",
      "parents": [
        "dd67d051529387f6e44d22d1d5540ef281965fdd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jun 21 14:48:09 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[BLOCK] Fix bounce limit address check\n\nDo a safer check for when to enable DMA. Currently we enable ISA DMA\nfor cases that do not need it, resulting in OOM conditions when ZONE_DMA\nruns out of space.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "dd67d051529387f6e44d22d1d5540ef281965fdd",
      "tree": "80457f9a2ad3e562b179e40f5c8d51b4f24d6d9e",
      "parents": [
        "9e94cd4fd1812bab45237f998b3c6fa1b24023fd"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Jun 21 09:36:18 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] rbtree: support functions used by the io schedulers\n\nThey all duplicate macros to check for empty root and/or node, and\nclearing a node. So put those in rbtree.h.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "fd61af0384014ca29428ace7c17a978b755aeddd",
      "tree": "c7aa5ca9b91383b7c97199189214fa86a6a51b4f",
      "parents": [
        "caaa5f9f0a75d1dc5e812e69afdbb8720e077fd3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jun 16 15:35:39 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: rq update fixes\n\n- Remember to set -\u003elast_sector so that the cfq_choose_req() logic\n  works correctly.\n\n- Remove redundant call to cfq_choose_req()\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "caaa5f9f0a75d1dc5e812e69afdbb8720e077fd3",
      "tree": "07aba6bac5a57cb3efd23762acfd719e255775ab",
      "parents": [
        "35e6077cb16f93517ba5a51ba849b186d2474d60"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jun 16 11:23:00 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: many performance fixes\n\nThis is a collection of patches that greatly improve CFQ performance\nin some circumstances.\n\n- Change the idling logic to only kick in after a request is done and we\n  are deciding what to do. Before the idling included the request service\n  time, so it was hard to adjust. Now it\u0027s true think/idle time.\n\n- Take advantage of TCQ/NCQ/queueing for seeky sync workloads, but keep\n  it in control for sync and sequential (or close to) workloads.\n\n- Expire queues immediately and move on to other busy queues, if we are\n  not going to idle after the current one finishes.\n\n- Don\u0027t rearm idle timer if there are no busy queues. Just leave the\n  system idle.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "35e6077cb16f93517ba5a51ba849b186d2474d60",
      "tree": "215bcf3548d80365b3cd3673feddf6a8f8ba9fbc",
      "parents": [
        "b17fd9bceb99610f6dc7998c9a4ed6b71520be2b"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Jun 14 09:10:45 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: correctly set ioprio on both targets\n\nPatch originally from Vasily Tarasov \u003cvtaras@sw.ru\u003e\n\nIf you set io-priority of process 1 using sys_ioprio_set system call by\nanother process 2 (like ionice do), then cfq_init_prio_data() function\nsets priority of process 2 (current) on queue of process 1 and clears\nthe flag, that designates change of ioprio.  So the process  1 will work\nlike with priority of process 2.\n\nI propose not to call cfq_init_prio_data() on io-priority change, but\nonly mark queue as queue with changed prority.  Every time when new\nrequest comes cfq-scheduler checks for this flag and atomaticaly changes\npriority of queue to new value.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "b17fd9bceb99610f6dc7998c9a4ed6b71520be2b",
      "tree": "13cb21955ce4677360c72f7120fee311f16ca3c7",
      "parents": [
        "8f34ee75decb80007ba77bba5a7384eadff4866d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jun 19 10:06:48 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] Make CFQ the default IO scheduler\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "b31dc66a54ad986b6b73bdc49c8efc17cbad1833",
      "tree": "5591383c1cbffe11512da889c971f899333f1a44",
      "parents": [
        "271f18f102c789f59644bb6c53a69da1df72b2f4"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jun 13 08:26:10 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] Kill PF_SYNCWRITE flag\n\nA process flag to indicate whether we are doing sync io is incredibly\nugly. It also causes performance problems when one does a lot of async\nio and then proceeds to sync it. Part of the io will go out as async,\nand the other part as sync. This causes a disconnect between the\npreviously submitted io and the synced io. For io schedulers such as CFQ,\nthis will cause us lost merges and suboptimal behaviour in scheduling.\n\nRemove PF_SYNCWRITE completely from the fsync/msync paths, and let\nthe O_DIRECT path just directly indicate that the writes are sync\nby using WRITE_SYNC instead.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "271f18f102c789f59644bb6c53a69da1df72b2f4",
      "tree": "f3593b5dbc90da69a91a69fb170c2600775703f7",
      "parents": [
        "acf421755593f7d7bd9352d57eda796c6eb4fa43"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jun 13 08:08:38 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:38 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: Don\u0027t set the queue batching limits\n\nWe cannot update them if the user changes nr_requests, so don\u0027t\nset it in the first place. The gains are pretty questionable as\nwell. The batching loss has been shown to decrease throughput.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "acf421755593f7d7bd9352d57eda796c6eb4fa43",
      "tree": "08fe234e5a28556ef32d29de1d3045cfe94a931c",
      "parents": [
        "fda151d9feafc0e8418f23c716587c44394fcdbf"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Jun 12 14:20:58 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:38 2006 +0200"
      },
      "message": "[PATCH] remove dead code from elevator switching\n\nWe already drop the refcount in elevator_exit(), and as\nwe\u0027re setting \u0027e\u0027 to NULL, we\u0027ll never take that branch anyway.\nFinally, as \u0027e\u0027 is a local var that isn\u0027t referenced afterwards,\nsetting it to NULL is pointless.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "a038e2536472b4dd932399b5277e65f188811de5",
      "tree": "15b311da1a9aa36b24f98ae914456ecb90e247f3",
      "parents": [
        "bae386f7884aa3720cc7880b36a41a1d2b9c327b"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Mon Jun 05 12:09:01 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:38 2006 +0200"
      },
      "message": "[PATCH] blk_start_queue() must be called with irq disabled - add warning\n\nThe queue lock can be taken from interrupts so it must always be taken with\nirq disabling primitives.  Some primitives already verify this.\nblk_start_queue() is called under this lock, so interrupts must be\ndisabled.\n\nAlso document this requirement clearly in blk_init_queue(), where the queue\nspinlock is set.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "bae386f7884aa3720cc7880b36a41a1d2b9c327b",
      "tree": "e6ea0627160dc009cd825e44489583028c83791f",
      "parents": [
        "199f4c9f76fd8b030405abddf294e771f888de03"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Mon Apr 24 21:12:59 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:38 2006 +0200"
      },
      "message": "[PATCH] iosched: use hlist for request hashtable\n\nUse hlist instead of list_head for request hashtable in deadline-iosched\nand as-iosched. It also can remove the flag to know hashed or unhashed.\n\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n\n block/as-iosched.c       |   45 +++++++++++++++++++--------------------------\n block/deadline-iosched.c |   39 ++++++++++++++++-----------------------\n 2 files changed, 35 insertions(+), 49 deletions(-)\n"
    },
    {
      "commit": "626ab0e69d376fa07599af669af8ba92d58e87c1",
      "tree": "a995e0231e61fab63568bc7bade81dc20c1dae09",
      "parents": [
        "54e73770357142e297c916c7865f5fca7499f69c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jun 23 02:05:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:07 2006 -0700"
      },
      "message": "[PATCH] list: use list_replace_init() instead of list_splice_init()\n\nlist_splice_init(list, head) does unneeded job if it is known that\nlist_empty(head) \u003d\u003d 1.  We can use list_replace_init() instead.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b9d9c82b4d081feb464f62dfc786c8621d09ecd2",
      "tree": "511d15b4d7aaba80a2c0fe49622a3224ca386122",
      "parents": [
        "23681e479129854305da1da32f7f1eaf635ef22c"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@suse.de",
        "time": "Thu Jun 15 15:31:56 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jun 21 12:40:49 2006 -0700"
      },
      "message": "[PATCH] Driver core: add generic \"subsystem\" link to all devices\n\nLike the SUBSYTEM\u003d key we find in the environment of the uevent, this\ncreates a generic \"subsystem\" link in sysfs for every device. Userspace\nusually doesn\u0027t care at all if its a \"class\" or a \"bus\" device. This\nprovides an unified way to determine the subsytem of a device, regardless\nof the way the driver core has created it.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "6b41fd1785f4effe2f3bd40da864415812f5b8c9",
      "tree": "465b955a8055639828ef64bc963ddead4e44d3c8",
      "parents": [
        "58dfd9c16e88b9d790e7df8f2c5b03b7887db54c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 19:44:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 19:44:03 2006 -0700"
      },
      "message": "Fix up CFQ scheduler for recent rbtree node shrinkage\n\nThe color is now in the low bits of the parent pointer, and initializing\nit to 0 happens as part of the whole memset above, so just remove the\nunnecessary RB_CLEAR_COLOR.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2edc322d420a4cec8dbc184a1220ecd7fa9f8ae6",
      "tree": "e7be2cf442626316b6b6fb212960fe1f77ff2725",
      "parents": [
        "be967b7e2f7747a5ebf2a07ee627d9338491e784",
        "2f3243aebd8df4d9eecaeca04bbff6c7dbfb2142"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 14:51:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 14:51:22 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/rbtree-2.6\n\n* git://git.infradead.org/~dwmw2/rbtree-2.6:\n  [RBTREE] Switch rb_colour() et al to en_US spelling of \u0027color\u0027 for consistency\n  Update UML kernel/physmem.c to use rb_parent() accessor macro\n  [RBTREE] Update hrtimers to use rb_parent() accessor macro.\n  [RBTREE] Add explicit alignment to sizeof(long) for struct rb_node.\n  [RBTREE] Merge colour and parent fields of struct rb_node.\n  [RBTREE] Remove dead code in rb_erase()\n  [RBTREE] Update JFFS2 to use rb_parent() accessor macro.\n  [RBTREE] Update eventpoll.c to use rb_parent() accessor macro.\n  [RBTREE] Update key.c to use rb_parent() accessor macro.\n  [RBTREE] Update ext3 to use rb_parent() accessor macro.\n  [RBTREE] Change rbtree off-tree marking in I/O schedulers.\n  [RBTREE] Add accessor macros for colour and parent fields of rb_node\n"
    },
    {
      "commit": "553698f944ed715dfe023b4cef07601f0ce735f0",
      "tree": "2c9019e43218a3afc92fbb32a44de794123295f4",
      "parents": [
        "9cedc194a7735e5d74ad26d3825247dc65a4d98e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Jun 14 19:11:57 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jun 14 10:22:16 2006 -0700"
      },
      "message": "[PATCH] cfq-iosched: fix crash in do_div()\n\nWe don\u0027t clear the seek stat values in cfq_alloc_io_context(), and if\n-\u003eseek_mean is unlucky enough to be set to -36 by chance, the first\ninvocation of cfq_update_io_seektime() will oops with a divide by zero\nin do_div().\n\nJust memset the entire cic instead of filling invididual values\nindependently.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc1c116974a5c3f498112a6f175d3e4a8cd5bdbc",
      "tree": "69ea68db91fb871cd24a0a5c5045abbe9c77bd3a",
      "parents": [
        "26e780e8ef1cc3ef581a07aafe2346bb5a07b4f9"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 08 08:49:06 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 08 15:14:23 2006 -0700"
      },
      "message": "[PATCH] elevator switching race\n\nThere\u0027s a race between shutting down one io scheduler and firing up the\nnext, in which a new io could enter and cause the io scheduler to be\ninvoked with bad or NULL data.\n\nTo fix this, we need to maintain the queue lock for a bit longer.\nUnfortunately we cannot do that, since the elevator init requires to be\nrun without the lock held.  This isn\u0027t easily fixable, without also\nchanging the mempool API.  So split the initialization into two parts,\nand alloc-init operation and an attach operation.  Then we can\npreallocate the io scheduler and related structures, and run the attach\ninside the lock after we detach the old one.\n\nThis patch has survived 30 minutes of 1 second io scheduler switching\nwith a very busy io load.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b52a834892f17b6c54c34ab65f1fad1a9229e764",
      "tree": "0f66d6a310f108bb1f0badd3ebea3b1db0a163f6",
      "parents": [
        "ae818a38d4755ba4c16a22a8eacec859511a5393"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 18:53:43 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 18:53:43 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: busy_rr fairness fix\n\nNow that we select busy_rr for possible service, insert entries at the\nback of that list instead of at the front.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "ae818a38d4755ba4c16a22a8eacec859511a5393",
      "tree": "923ec4b261ab8b633fff2be9e7b9c4afcf704737",
      "parents": [
        "25776e3594f841b7fae7b33ebecf009a0a55bed1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:13:43 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:13:43 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: fix bug in timer handling for the idle class\n\nThere\u0027s a small window from when the timer is entered and we grab\nthe queue lock, where cfq_set_active_queue() could be rearming the\ntimer for us. Seen in the wild on a 12-way ppc box. Fix this by\njust using mod_timer(), which will do the right thing for us.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "25776e3594f841b7fae7b33ebecf009a0a55bed1",
      "tree": "689dcf37ba781ad627ae01be4fcb6f5414f67c1b",
      "parents": [
        "12e9fddd6eb827937fcaac8ac7712c7303898b1f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:12:26 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:12:26 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: Detect hardware queueing\n\nIf the hardware is doing real queueing, decide that it\u0027s worthless to\nidle the hardware. It does reasonable simultaneous io in that case\nanyways, and the idling hurts some work loads.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "12e9fddd6eb827937fcaac8ac7712c7303898b1f",
      "tree": "b3fbb502f46319808a50fd2fc7a93668d697f6ec",
      "parents": [
        "e0de0206a2a37cd3e0ba9954d9f863e11d6d1782"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:09:56 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:09:56 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: Detect idle process issuing async request\n\nIf we are anticipating a sync request from this process and we are\nwaiting for that and see an async request come in, expire that slice\nand move on.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "e0de0206a2a37cd3e0ba9954d9f863e11d6d1782",
      "tree": "58ba74a2f8e0edce59c770c74d019d4e1e3c98fd",
      "parents": [
        "ba8f5baba79da8eb502f8534c3a8ecb64aceb790"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:07:26 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jun 01 10:07:26 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: check busy queues before deciding we are idle\n\nFor just one busy queue (like async write out), we often overlooked\nthat we could queue more io and decided we were idle instead. This causes\nus quite a bit of performance loss.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "3793c65c13e4751c7a10f98198bae1758453eb0e",
      "tree": "90cdca032861efbb982705f9d96e351681e48fef",
      "parents": [
        "e60a48f5ab35737118e19bc965c640900a842f02"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue May 30 21:11:04 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue May 30 20:31:05 2006 -0700"
      },
      "message": "[PATCH] cfq-iosched: fixup locking and -\u003equeue_list list management\n\n- Drop cic from the list when seen as dead.\n- Fixup the locking, just use a simple spinlock.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fd0ff8aa1d95a896b3627bc62d42d6d002ac0bc3",
      "tree": "e4ba36d57ca288eeaebdc882b988833e86607b22",
      "parents": [
        "0f0410823792ae0ecb45f2578598b115835ffdbb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue May 23 11:23:49 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue May 23 10:39:43 2006 -0700"
      },
      "message": "[PATCH] blk: fix gendisk-\u003ein_flight accounting during barrier sequence\n\nWhile executing barrrier sequence, the bar_rq which carries actual\nwrite was accounted as normal IO on completion, while it wasn\u0027t on\nqueueing.  This caused gendisk-\u003ein_flight to be decremented by 1 after\neach barrier thus messed up statistics.\n\nThis patch makes bar_rq not accounted as normal IO.  As the containing\nbarrier request as a whole is accounted, part of it shouldn\u0027t be.\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": "1a2acc9e9214699a99389e323e6686e9e0e2ca67",
      "tree": "8f8072ba0624ceb63ac0115a81d85435323fe79c",
      "parents": [
        "d8c3291c73b958243b33f8509d4507e76dafd055"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri May 12 12:08:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri May 12 12:08:46 2006 -0700"
      },
      "message": "Revert \"[BLOCK] Fix oops on removal of SD/MMC card\"\n\nThis reverts commit 56cf6504fc1c0c221b82cebc16a444b684140fb7.\n\nBoth Erik Mouw and Andrew Vasquez independently pinpointed this commit\nas causing problems, where the slab cache for a driver is never released\n(most obviously causing problems when immediately re-loading that\ndriver, resulting in a \"kmem_cache_create: duplicate cache \u003cxyz\u003e\"\nmessage, but it can also cause other trouble).\n\nJames Bottomley dug into it, and reports:\n\n  \"OK, here\u0027s the scoop.  The problem patch adds a get of driverfs_dev in\n   add_disk(), but doesn\u0027t put it again until disk_release() (which occurs\n   on final put_disk() of the gendisk).\n\n   However, in SCSI, the driverfs_dev is the sdev_gendev.  That means\n   there\u0027s a reference held on sdev_gendev  until final disk put.\n   Unfortunately, we use the driver model driver_remove to trigger\n   del_gendisk (which removes the gendisk from visibility and decrements\n   the refcount), so we\u0027ve introduced an unbreakable deadlock in the\n   reference counting with this.\n\n   I suggest simply reversing this patch at the moment.  If Russell and\n   Jens can tell me what they\u0027re trying to do I\u0027ll see if there\u0027s another\n   way to do it.\"\n\nso hereby the patch gets reverted, waiting for a better fix.\n\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Erik Mouw \u003cerik@harddisk-recovery.com\u003e\nCc: Andrew Vasquez \u003candrew.vasquez@qlogic.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dac07ec121de66b6be988b14ae2cd9ce45357b21",
      "tree": "95359f17d0857fd52f399cef072097523227d032",
      "parents": [
        "f358166a9405e4f1d8e50d8f415c26d95505b6de"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu May 11 08:20:16 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu May 11 12:38:59 2006 -0700"
      },
      "message": "[BLOCK] limit request_fn recursion\n\nDon\u0027t recurse back into the driver even if the unplug threshold is met,\nwhen the driver asks for a requeue. This is both silly from a logical\npoint of view (requeues typically happen due to driver/hardware\nshortage), and also dangerous since we could hit an endless request_fn\n-\u003e requeue -\u003e unplug -\u003e request_fn loop and crash on stack overrun.\n\nAlso limit blk_run_queue() to one level of recursion, similar to how\nblk_start_queue() works.\n\nThis patch fixed a real problem with SLES10 and lpfc, and it could hit\nany SCSI lld that returns non-zero from it\u0027s -\u003equeuecommand() handler.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "56cf6504fc1c0c221b82cebc16a444b684140fb7",
      "tree": "95c74c06397dfe29081afb7a38ad6f1810e0704b",
      "parents": [
        "d98550e334715b2d9e45f8f0f4e1608720108640"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk@dyn-67.arm.linux.org.uk",
        "time": "Fri May 05 17:57:52 2006 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Fri May 05 17:57:52 2006 +0100"
      },
      "message": "[BLOCK] Fix oops on removal of SD/MMC card\n\nThe block layer keeps a reference (driverfs_dev) to the struct\ndevice associated with the block device, and uses it internally\nfor generating uevents in block_uevent.\n\nBlock device uevents include umounting the partition, which can\noccur after the backing device has been removed.\n\nUnfortunately, this reference is not counted.  This means that\nif the struct device is removed from the device tree, the block\nlayers reference will become stale.\n\nGuard against this by holding a reference to the struct device\nin add_disk(), and only drop the reference when we\u0027re releasing\nthe gendisk kobject - in other words when we can be sure that no\nfurther uevents will be generated for this block device.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "649bbaa484bcdce94f40a1b97a6a2ded0549e8a2",
      "tree": "f24f05bf95ae9c4164266da87f36fed61c5c2206",
      "parents": [
        "e7edf9cdeddc0cff125e8e658216efb2ff2b2219"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Mon Apr 24 19:35:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 26 08:27:50 2006 -0700"
      },
      "message": "[PATCH] Remove __devinitdata from notifier block definitions\n\nFew of the notifier_chain_register() callers use __devinitdata in the\ndefinition of notifier_block data structure.  It is incorrect as the\ndata structure should be available after the initializations (they do\nnot unregister them during initializations).\n\nThis was leading to an oops when notifier_chain_register() call is\ninvoked for those callback chains after initialization.\n\nThis patch fixes all such usages to _not_ have the notifier_block data\nstructure in the init data section.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3db3a445308b3cee9bbbd8baa6d05081c9532da0",
      "tree": "768e3a190df58b0f5f5d4a5c5ade925649e757dd",
      "parents": [
        "7fe1e133bf45b0fe70491ed3d4c5b491feff7aa8"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 21 13:15:17 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri Apr 21 13:15:17 2006 +0100"
      },
      "message": "[RBTREE] Change rbtree off-tree marking in I/O schedulers.\n\nThey were abusing the rb_color field to mark nodes which weren\u0027t currently\non the tree. Fix that to use the same method as eventpoll did -- setting\nthe parent pointer to point back to itself. And use the appropriate\naccessor macros for setting and reading the parent.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "4f73247f0e53be1bd4aa519476e6261a8e4a64ab",
      "tree": "31122fbaffb3761e1c47124de2bbb9b652562c44",
      "parents": [
        "82aa5d6183667aa2a5f3c61e390934b0273d2ad7"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Thu Apr 20 15:45:22 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Apr 20 15:45:22 2006 +0200"
      },
      "message": "[PATCH] block/elevator.c: remove unused exports\n\nThis patch removes the following unused EXPORT_SYMBOL\u0027s:\n- elv_requeue_request\n- elv_completed_request\n\nThey are only used by the block core, hence they need not be exported.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "7daac4902053045450fa29db42aba19a4581f850",
      "tree": "d3e71ef1e7a399f9677da76cf24cc3b1dc232572",
      "parents": [
        "73af994c7d58dd513922dc9d5cd76b124ec02b1b"
      ],
      "author": {
        "name": "Coywolf Qi Hunt",
        "email": "qiyong@freeforge.net",
        "time": "Wed Apr 19 10:14:49 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Thu Apr 20 13:04:36 2006 +0200"
      },
      "message": "[patch] cleanup: use blk_queue_stopped\n\nThis cleanup the source to use blk_queue_stopped.\n\nSigned-off-by: Coywolf Qi Hunt \u003cqiyong@freeforge.net\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "be3b075354e170368a0d29558cae492205e80a64",
      "tree": "b37af91addb8d214b9010774f5cf31538a501267",
      "parents": [
        "dbecf3ab40b5a6cc4499543778cd9f9682c0abad"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Tue Apr 18 19:18:31 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 18 19:18:31 2006 +0200"
      },
      "message": "[PATCH] cfq: Further rbtree traversal and cfq_exit_queue() race fix\n\nIn current code, we are re-reading cic-\u003ekey after dead cic-\u003ekey check.\nSo, in theory, it may really re-read *after* cfq_exit_queue() seted NULL.\n\nTo avoid race, we copy it to stack, then use it. With this change, I\nguess gcc will assign cic-\u003ekey to a register or stack, and it wouldn\u0027t\nbe re-readed.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "dbecf3ab40b5a6cc4499543778cd9f9682c0abad",
      "tree": "56dcd8c30835472b54017e1cb5fd852386ee9e49",
      "parents": [
        "fba822722e3f9d438fca8fd9541d7ddd447d7a48"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Tue Apr 18 09:45:18 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 18 09:45:18 2006 +0200"
      },
      "message": "[PATCH 2/2] cfq: fix cic\u0027s rbtree traversal\n\nWhen queue dies, we set cic-\u003ekey\u003dNULL as dead mark. So, when we\ntraverse a rbtree, we must check whether it\u0027s still valid key. if it\nwas invalidated, drop it, then restart the traversal from top.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "fba822722e3f9d438fca8fd9541d7ddd447d7a48",
      "tree": "05fc35428f61fb6b66726e3aae03ce9187212c21",
      "parents": [
        "a9a5cd5d2a57fb76dbae2115450f777b69beccf7"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Tue Apr 18 09:44:06 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 18 09:44:06 2006 +0200"
      },
      "message": "[PATCH 1/2] iosched: fix typo and barrier()\n\nOn rmmod path, cfq/as waits to make sure all io-contexts was\nfreed. However, it\u0027s using complete(), not wait_for_completion().\n\nI think barrier() is not enough in here. To avoid the following case,\nthis patch replaces barrier() with smb_wmb().\n\n\tcpu0\t\t\tvisibility\t\t\tcpu1\n\t                [ioc_gnone\u003dNULL,ioc_count\u003d1]\n\nioc_gnone \u003d \u0026all_gone\t\tNULL,ioc_count\u003d1\natomic_read(\u0026ioc_count)\t\tNULL,ioc_count\u003d1\nwait_for_completion()\t\tNULL,ioc_count\u003d0\tatomic_sub_and_test()\n\t\t\t\tNULL,ioc_count\u003d0\tif ( \u0026\u0026 ioc_gone)\n\t\t\t\t\t\t    [ioc_gone\u003d\u003dNULL,\n\t\t\t\t\t\t    so doesn\u0027t call complete()]\n\t\t\t   \u0026all_gone,ioc_count\u003d0\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "21b2f0c803adaf00fce1b606c50b49ae8b106773",
      "tree": "1acc834df309041ed0c5681f4bd222fd3e113900",
      "parents": [
        "765fcab23d0a79ed7aab8da79766f5873d936f1b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Mar 22 17:52:04 2006 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Thu Apr 13 10:13:15 2006 -0500"
      },
      "message": "[SCSI] unify SCSI_IOCTL_SEND_COMMAND implementations\n\nWe currently have two implementations of this obsolete ioctl, one in\nthe block layer and one in the scsi code.  Both of them have drawbacks.\n\nThis patch kills the scsi layer version after updating the block version\nwith the missing bits:\n\n - argument checking\n - use scatterlist I/O\n - set number of retries based on the submitted command\n\nThis is the last user of non-S/G I/O except for the gdth driver, so\ngetting this in ASAP and through the scsi tree would be nie to kill\nthe non-S/G I/O path.  Jens, what do you think about adding a check\nfor non-S/G I/O in the midlayer?\n\nThanks to  Or Gerlitz for testing this patch.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "a580290c3e64bb695158a090d02d1232d9609311",
      "tree": "70f29239b9a206a9afb77ddff35fc47b5b248866",
      "parents": [
        "5d9428de1a9785f10a4339f80b717be665ba51c7"
      ],
      "author": {
        "name": "Martin Waitz",
        "email": "tali@admingilde.org",
        "time": "Sun Apr 02 13:59:55 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Apr 02 13:59:55 2006 +0200"
      },
      "message": "Documentation: fix minor kernel-doc warnings\n\nThis patch updates the comments to match the actual code.\n\nSigned-off-by: Martin Waitz \u003ctali@admingilde.org\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "88b9adb073b7a69a54b1b14423103bc24587ebdc",
      "tree": "a6bc195ff41c7f1cb7902e2215fe0dd732788159",
      "parents": [
        "bb231fe3a53b2d34c1aef119613816fcb18864b1"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 31 02:30:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] config: fix CONFIG_LFS option\n\nThe help text says that if you select CONFIG_LBD, then it will automatically\nselect CONFIG_LFS.  That isn\u0027t currently the case, so update the text.\n\n- Get rid of the cruft in the help text mentioning CONFIG_LBD\n\n- Tell unsure users to select CONFIG_LFS.\n\n- Remove the `default n\u0027.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b41046cd0ee0a57f849d6e1363f7933e363cca9",
      "tree": "246820e9493770e071cb92a48e7f72d8b9c90a98",
      "parents": [
        "68eef3b4791572ecb70249c7fb145bb3742dd899"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Mar 31 02:30:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:53 2006 -0800"
      },
      "message": "[PATCH] Don\u0027t pass boot parameters to argv_init[]\n\nThe boot cmdline is parsed in parse_early_param() and\nparse_args(,unknown_bootoption).\n\nAnd __setup() is used in obsolete_checksetup().\n\n\tstart_kernel()\n\t\t-\u003e parse_args()\n\t\t\t-\u003e unknown_bootoption()\n\t\t\t\t-\u003e obsolete_checksetup()\n\nIf __setup()\u0027s callback (-\u003esetup_func()) returns 1 in\nobsolete_checksetup(), obsolete_checksetup() thinks a parameter was\nhandled.\n\nIf -\u003esetup_func() returns 0, obsolete_checksetup() tries other\n-\u003esetup_func().  If all -\u003esetup_func() that matched a parameter returns 0,\na parameter is seted to argv_init[].\n\nThen, when runing /sbin/init or init\u003dapp, argv_init[] is passed to the app.\nIf the app doesn\u0027t ignore those arguments, it will warning and exit.\n\nThis patch fixes a wrong usage of it, however fixes obvious one only.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "68eef3b4791572ecb70249c7fb145bb3742dd899",
      "tree": "1f61fce839cec8d672ae06a423d46f0a6fcd924d",
      "parents": [
        "a2c348fe0117adced11e374329a5ea3f7c43cb41"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Fri Mar 31 02:30:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:53 2006 -0800"
      },
      "message": "[PATCH] Simplify proc/devices and fix early termination regression\n\nMake baby-simple the code for /proc/devices.  Based on the proven design\nfor /proc/interrupts.\n\nThis also fixes the early-termination regression 2.6.16 introduced, as\ndemonstrated by:\n\n    # dd if\u003d/proc/devices bs\u003d1\n    Character devices:\n      1 mem\n    27+0 records in\n    27+0 records out\n\nThis should also work (but is untested) when /proc/devices \u003e4096 bytes,\nwhich I believe is what the original 2.6.16 rewrite fixed.\n\n[akpm@osdl.org: cleanups, simplifications]\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7baf398f12585ae77748716fa77113c1f1831153",
      "tree": "492361d848d3dfc33563a1bdf0d0f61b454aac82",
      "parents": [
        "78cd9e04e0acea4f622e84ca0c760c7eae0c6854",
        "206dc69b31ca05baac68c75b8ed2ba7dd857d273"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:25:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:25:44 2006 -0800"
      },
      "message": "Merge branch \u0027cfq-merge\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\n* \u0027cfq-merge\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block:\n  [BLOCK] cfq-iosched: seek and async performance fixes\n  [PATCH] ll_rw_blk: fix 80-col offender in put_io_context()\n  [PATCH] cfq-iosched: small cfq_choose_req() optimization\n  [PATCH] [BLOCK] cfq-iosched: change cfq io context linking from list to tree\n"
    },
    {
      "commit": "0a945022778f100115d0cb6234eb28fc1b15ccaf",
      "tree": "85df4b5f7dd8bf59557091379c59b23b09115bf6",
      "parents": [
        "631d6747e1d877a4baa924cb373b8b9511a53e5e"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Mar 28 01:56:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:05 2006 -0800"
      },
      "message": "[PATCH] for_each_possible_cpu: fixes for generic part\n\nreplaces for_each_cpu with for_each_possible_cpu().\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "206dc69b31ca05baac68c75b8ed2ba7dd857d273",
      "tree": "f9ca5d996e19cb072165b1f6474c39b59b0e7451",
      "parents": [
        "7143dd4b0127141a4f773e819d1d1f4ab82bb517"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 13:03:44 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 13:03:44 2006 +0200"
      },
      "message": "[BLOCK] cfq-iosched: seek and async performance fixes\n\nDetect whether a given process is seeky and if so disable (mostly) the\nidle window if it is. We still allow just a little idle time, just enough\nto allow that process to submit a new request. That is needed to maintain\nfairness across priority groups.\n\nIn some cases, we could setup several async queues. This is not optimal\nfrom a performance POV, since we want all async io in one queue to perform\ngood sorting on it. It also impacted sync queues, as async io got too much\nslice time.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "7143dd4b0127141a4f773e819d1d1f4ab82bb517",
      "tree": "dfc1b1c5e622fae68c3c36935fc3ff327b4ee62d",
      "parents": [
        "e8a99053ea82a4b4375049886cf1db64d7dcd755"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 09:00:28 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 09:00:28 2006 +0200"
      },
      "message": "[PATCH] ll_rw_blk: fix 80-col offender in put_io_context()\n\nThis makes akpm more happy.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "e8a99053ea82a4b4375049886cf1db64d7dcd755",
      "tree": "f16f440237e5627bda317923198fbbe00cb22e96",
      "parents": [
        "e2d74ac0664c89757bde8fb18c98cd7bf53da61c"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Tue Mar 28 08:59:49 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 08:59:49 2006 +0200"
      },
      "message": "[PATCH] cfq-iosched: small cfq_choose_req() optimization\n\nthis is a small optimization to cfq_choose_req() in the CFQ I/O scheduler\n(this function is a semi-often invoked candidate in an oprofile log):\nby using a bit mask variable, we can use a simple switch() to check\nthe various cases instead of having to query two variables for each check.\nBenefit: 251 vs. 285 bytes footprint of cfq_choose_req().\nAlso, common case 0 (no request wrapping) is now checked first in code.\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "e2d74ac0664c89757bde8fb18c98cd7bf53da61c",
      "tree": "1e858044a9180766eae4ec694d4200c4ae850406",
      "parents": [
        "329b10bb0feacb7fb9a41389313ff0a51ae56f2a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 08:59:01 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Mar 28 08:59:01 2006 +0200"
      },
      "message": "[PATCH] [BLOCK] cfq-iosched: change cfq io context linking from list to tree\n\nOn setups with many disks, we spend a considerable amount of time\nlooking up the process-disk mapping on each queue of io. Testing with\na NULL based block driver, this costs 40-50% reduction in throughput\nfor 1000 disks.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "4fa639123d9e6e8dfaa3d116368f4b2478da31af",
      "tree": "50c42e2102a542891a15b5011e48fbde14149baf",
      "parents": [
        "df5b89b323b922f56650b4b4d7c41899b937cf19",
        "ae36b883d29e53b6083ed3d1d44f254cee7507d3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:46:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:46:49 2006 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block:\n  [PATCH] Don\u0027t make debugfs depend on DEBUG_KERNEL\n  [PATCH] Fix blktrace compile with sysfs not defined\n  [PATCH] unused label in drivers/block/cciss.\n  [BLOCK] increase size of disk stat counters\n  [PATCH] blk_execute_rq_nowait-speedup\n  [PATCH] ide-cd: quiet down GPCMD_READ_CDVD_CAPACITY failure\n  [BLOCK] ll_rw_blk: kmalloc -\u003e kzalloc conversion\n  [PATCH] kzalloc() conversion in drivers/block\n  [PATCH] update max_sectors documentation\n"
    },
    {
      "commit": "89e5c8b5b85d6d46e8a28cdfa076313ae691d35c",
      "tree": "61ef0df8f33900f926d6ebd81f295063cb0601b3",
      "parents": [
        "a22c96c737a9cefbe8d6e991c0032ad6db825a67"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon Mar 27 01:18:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:45:00 2006 -0800"
      },
      "message": "[PATCH] md: Make sure QUEUE_FLAG_CLUSTER is set properly for md.\n\nThis flag should be set for a virtual device iff it is set for all underlying\ndevices.\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": "09540e691d7f57684b296b60241b2ff357fae3ab",
      "tree": "8702109657c8ee08435aab0322bb412924caabe2",
      "parents": [
        "89a7689e5c039090d99cbdc3625252c3dee50f7f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Sun Mar 26 14:32:09 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Mar 27 09:29:03 2006 +0200"
      },
      "message": "[PATCH] Fix blktrace compile with sysfs not defined\n\ndebugfs depends on sysfs, so make blktrace kconfig option depend\non that.\n\nReported by Adrian Bunk.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "837c7878771c15ed8d85ecf814ece7fcb4551b46",
      "tree": "28b06f0734958802ab98e1e6712ac3c6bf8f2518",
      "parents": [
        "4c5d0bbde9669cfb7f7fd4670dc9a117aea90384"
      ],
      "author": {
        "name": "Ben Woodard",
        "email": "woodard@redhat.com",
        "time": "Wed Mar 22 08:09:31 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Mar 27 09:29:02 2006 +0200"
      },
      "message": "[BLOCK] increase size of disk stat counters\n\nThe kernel\u0027s representation of the disk statistics uses the type unsigned\nwhich is 32b on both 32b and 64b platforms.  Unfortunately, most system\ntools that work with these numbers that are exported in /proc/diskstats\nincluding iostat read these numbers into unsigned longs.  This works fine\non 32b platforms and when the number of IO transactions are small on 64b\nplatforms.  However, when the numbers wrap on 64b platforms \u0026 you read the\nnumbers into unsigned longs, and compare the numbers to previous readings,\nthen you get an unsigned representation of a negative number.  This looks\nlike a very large 64b number \u0026 gives you bizarre readouts in iostat:\n\nilc4: Device:    rrqm/s wrqm/s r/s    w/s  rsec/s  wsec/s    rkB/s wkB/s avgrq-sz avgqu-sz   await  svctm  %util\nilc4: sda        5.50   0.00   143.96 0.00 307496983987862656.00 0.00 153748491993931328.00     0.00 2136028725038430.00     7.94   55.12    5.59  80.42\n\nThough fixing iostat in user space is possible, and a quick survey\nindicates that several other similar tools also use unsigned longs when\nprocessing /proc/diskstats.  Therefore, it seems like a better approach\nwould be to extend the length of the disk_stats structure on 64b\narchitectures to 64b.  The following patch does that.  It should not affect\nthe operation on 32b platforms.\n\nSigned-off-by: Ben Woodard \u003cwoodard@redhat.com\u003e\nCc: Rick Lindsley \u003cricklind@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "4c5d0bbde9669cfb7f7fd4670dc9a117aea90384",
      "tree": "1c118a45803e81ab6bd1a049273b3971b46bb3cd",
      "parents": [
        "b8fca1c7682105c843319728d8e37b42b19092bb"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Mar 22 08:08:01 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Mar 27 09:29:02 2006 +0200"
      },
      "message": "[PATCH] blk_execute_rq_nowait-speedup\n\nBoth elv_add_request() and generic_unplug_device() grab the queue lock\nand disable interrupts, do that locally and use the __ variants.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "f68110fc28859f5d7231d5c4fb6dbe68b1394c9b",
      "tree": "f7150373bd16be8ae51d0283ee98b2f29043e723",
      "parents": [
        "06ff37ffb4ba8bcbda0e9d19c712c954ef7b8a0a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Mar 08 13:31:44 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Mar 27 09:29:02 2006 +0200"
      },
      "message": "[BLOCK] ll_rw_blk: kmalloc -\u003e kzalloc conversion\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "a0f62ac6362c168754cccb36f196b3dfbddc3bc3",
      "tree": "079d525cfbf9851e2cb30acda77d180388d03c69",
      "parents": [
        "abcb6c9fd13fc2ad7757b818924dc8109a0e3775"
      ],
      "author": {
        "name": "Takashi Sato",
        "email": "sho@tnes.nec.co.jp",
        "time": "Sun Mar 26 01:37:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] 2TB files: add blkcnt_t\n\nAdd blkcnt_t as the type of inode.i_blocks.  This enables you to make the size\nof blkcnt_t either 4 bytes or 8 bytes on 32 bits architecture with CONFIG_LSF.\n\n- CONFIG_LSF\n  Add new configuration parameter.\n- blkcnt_t\n  On h8300, i386, mips, powerpc, s390 and sh that define sector_t,\n  blkcnt_t is defined as u64 if CONFIG_LSF is enabled; otherwise it is\n  defined as unsigned long.\n  On other architectures, it is defined as unsigned long.\n- inode.i_blocks\n  Change the type from sector_t to blkcnt_t.\n\nSigned-off-by: Takashi Sato \u003csho@tnes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "93d2341c750cda0df48a6cc67b35fe25f1ec47df",
      "tree": "f098a3bbfae65ce967591ee94d605c6e6bea21c6",
      "parents": [
        "fec433aaaae32a02329ad7d71b0f3c91b7525077"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] mempool: use mempool_create_slab_pool()\n\nModify well over a dozen mempool users to call mempool_create_slab_pool()\nrather than calling mempool_create() with extra arguments, saving about 30\nlines of code and increasing readability.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce52449742697f6f51be2a7c275a4ab2a73885b8",
      "tree": "1cd5441d8fa9dea43b4d6de0adba910abaca814b",
      "parents": [
        "c5d3237c2424c4a3cf69d33abc1f229943468367"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Fri Mar 24 18:43:26 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 24 18:43:26 2006 +0100"
      },
      "message": "BUG_ON() Conversion in block/elevator.c\n\nthis changes if() BUG(); constructs to BUG_ON() which is\ncleaner, contains unlikely() and can better optimized away.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "2056a782f8e7e65fd4bfd027506b4ce1c5e9ccd4",
      "tree": "d4fe59a7ca0c110690937085548936a4535c39db",
      "parents": [
        "6dac40a7ce2483a47b54af07afebeb84131c7228"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 23 20:00:26 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 23 20:00:26 2006 +0100"
      },
      "message": "[PATCH] Block queue IO tracing support (blktrace) as of 2006-03-23\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "c039e3134ae62863bbc8e8429b29e3c43cf21b2a",
      "tree": "b9bbf4fda0844e3173bf10a5bffbaaec94fb4246",
      "parents": [
        "6f87f0deebaff2716a3ce9232f948d702690562a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Thu Mar 23 03:00:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:11 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: blockdev #2\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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": "58383af629efb07e5a0694e445eda0c65b16e1de",
      "tree": "228369b2e56411c91ee1356957c0aa2dc0d033e5",
      "parents": [
        "8b5536bbee53620f8d5f367987e5727ba36d886d"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Mon Feb 06 14:12:43 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Mar 20 13:42:58 2006 -0800"
      },
      "message": "[PATCH] kobj_map semaphore to mutex conversion\n\nConvert the kobj_map code to use a mutex instead of a semaphore.  It\nconverts the single two users as well, genhd.c and char_dev.c.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e572ec7e4e432de7ecf7bd2e62117646fa64e518",
      "tree": "56b4b738fb566128d2db6d62aed28cfd41b5398a",
      "parents": [
        "3d1ab40f4c20767afbd361b258a531d73e3e6fc2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 22:27:18 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 22:27:18 2006 -0500"
      },
      "message": "[PATCH] fix rmmod problems with elevator attributes, clean them up\n"
    },
    {
      "commit": "3d1ab40f4c20767afbd361b258a531d73e3e6fc2",
      "tree": "2da79cc8b47a98b0496b6e762fa790a8d547977b",
      "parents": [
        "1cc9be68ebcc1de9904bf225441613878da9c0d8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:35:43 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:35:43 2006 -0500"
      },
      "message": "[PATCH] elevator_t lifetime rules and sysfs fixes\n"
    },
    {
      "commit": "1cc9be68ebcc1de9904bf225441613878da9c0d8",
      "tree": "59a885d6e939725a6e37e0888ef41e3852ae3223",
      "parents": [
        "a90d742e4cbbc217c402265eb8b8bb0e0f9f8da2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 12:29:52 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:35:08 2006 -0500"
      },
      "message": "[PATCH] noise removal: cfq-iosched.c\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a90d742e4cbbc217c402265eb8b8bb0e0f9f8da2",
      "tree": "a2423ca7cf3249a4c8b2c55021e0ae8f089b35e7",
      "parents": [
        "483f4afc421435b7cfe5e88f74eea0b73a476d75"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 12:05:37 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:35:05 2006 -0500"
      },
      "message": "[PATCH] don\u0027t bother with refcounting for cfq_data\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "483f4afc421435b7cfe5e88f74eea0b73a476d75",
      "tree": "9a3bbcf8ae83c5edb9ab1f9e98333d6f5673211b",
      "parents": [
        "1312f40e11c57edb5c3250f1b782cef8e3efea82"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:37 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:37 2006 -0500"
      },
      "message": "[PATCH] fix sysfs interaction and lifetime rules handling for queues\n"
    },
    {
      "commit": "6f325a13442d4e4a6c93d06d8e6deff79b6540b1",
      "tree": "e180ac54bd6d0885a7d615dec866a6793340f0a6",
      "parents": [
        "334e94de9bea353156abd6f2242d3cc4a24562b0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 14:58:37 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 18 18:34:17 2006 -0500"
      },
      "message": "[PATCH] fix cfq_get_queue()/ioprio_set(2) races\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "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"
    }
  ],
  "next": "248d5ca5ed5feb7f1a68d213c0ff89c604a97179"
}
