)]}'
{
  "log": [
    {
      "commit": "b4b7a4ef097f288f724420b473dbf92a89c0ab7e",
      "tree": "23ad8101e3e77c32a8d1e1b95a9c1cd7f7a475b7",
      "parents": [
        "e9ce335df51ff782035a15c261a3c0c9892a1767",
        "a3d3203e4bb40f253b1541e310dc0f9305be7c84"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Mar 19 08:05:10 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Mar 19 08:05:10 2010 +0100"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n\nConflicts:\n\tblock/Kconfig\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "318ae2edc3b29216abd8a2510f3f80b764f06858",
      "tree": "ce595adde342f57f379d277b25e4dd206988a052",
      "parents": [
        "25cf84cf377c0aae5dbcf937ea89bc7893db5176",
        "3e58974027b04e84f68b964ef368a6cd758e2f84"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 08 16:55:37 2010 +0100"
      },
      "message": "Merge branch \u0027for-next\u0027 into for-linus\n\nConflicts:\n\tDocumentation/filesystems/proc.txt\n\tarch/arm/mach-u300/include/mach/debug-macro.S\n\tdrivers/net/qlge/qlge_ethtool.c\n\tdrivers/net/qlge/qlge_main.c\n\tdrivers/net/typhoon.c\n"
    },
    {
      "commit": "8bf8c376ab2eefaf0386f4e003e720e1434fa43d",
      "tree": "a0e535bb31aba8e1998c2017086816f928820808",
      "parents": [
        "25cf84cf377c0aae5dbcf937ea89bc7893db5176"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Wed Mar 03 06:28:06 2010 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Mar 08 09:10:38 2010 +0100"
      },
      "message": "blkdev: fix merge_bvec_fn return value checks v2\n\nmerge_bvec_fn() returns bvec-\u003ebv_len on success. So we have to check\nagainst this value. But in case of fs_optimization merge we compare\nwith wrong value. This patch must be included in\n b428cd6da7e6559aca69aa2e3a526037d3f20403\nBut accidentally i\u0027ve forgot to add this in the initial patch.\nTo make things straight let\u0027s replace all such checks.\nIn fact this makes code easy to understand.\n\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9599945bac93b344519ea97f502cf537124b5a6e",
      "tree": "34cdb436a1104e25814638f893e82b07dcb573e8",
      "parents": [
        "13dda80e48439b446d0bc9bab34b91484bc8f533"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 02 19:17:34 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 02 19:17:34 2010 +0100"
      },
      "message": "Revert \"blkdev: fix merge_bvec_fn return value checks\"\n\nThis reverts commit 9f7cdbc33f36d28e57eaba0093f68f0d14c38c5b.\n\nIt\u0027s causing oopses om dm setups, so revert it until we investigate.\n\nReported-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nTested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9f7cdbc33f36d28e57eaba0093f68f0d14c38c5b",
      "tree": "80de133204ea1b3847fd93f17c8356c9d4d6bd5e",
      "parents": [
        "53c583d2269851de9df1c2e992cb2f7f124a5f55"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Sat Feb 27 20:35:12 2010 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sun Feb 28 19:47:18 2010 +0100"
      },
      "message": "blkdev: fix merge_bvec_fn return value checks\n\nmerge_bvec_fn() returns bvec-\u003ebv_len on success. So we have to check\nagainst this value. But in case of fs_optimization merge we compare\nwith wrong value. This patch must be included in\n b428cd6da7e6559aca69aa2e3a526037d3f20403\nBut accidentally i\u0027ve forgot to add this in the initial patch.\nTo make things straight let\u0027s replace all such checks.\nIn fact this makes code easy to understand.\n\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "8a78362c4eefc1deddbefe2c7f38aabbc2429d6b",
      "tree": "c095d95af1aec0f9cee5975b1dcdc6bc1d17d401",
      "parents": [
        "086fa5ff0854c676ec333760f4c0154b3b242616"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri Feb 26 00:20:39 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Feb 26 13:58:08 2010 +0100"
      },
      "message": "block: Consolidate phys_segment and hw_segment limits\n\nExcept for SCSI no device drivers distinguish between physical and\nhardware segment limits.  Consolidate the two into a single segment\nlimit.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "db18efac0bd644e4b7af757394ca0bef8d91dcee",
      "tree": "bffe9f3b834f50cbd1cb0cf778eb58ef34dbe56d",
      "parents": [
        "6382dc334064bb0b41a95df0e3c438de35f2ffb7"
      ],
      "author": {
        "name": "Jaak Ristioja",
        "email": "Ristioja@gmail.com",
        "time": "Fri Jan 15 12:05:07 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Feb 05 12:22:36 2010 +0100"
      },
      "message": "bio: Fix outdated comment about bio_alloc_bioset()\n\nIn commit 451a9ebf653d28337ba53ed5b4b70b0b9543cca1 bio_alloc_bioset()\nwas refactored not to take NULL as a valid argument for bs. This patch\nchanges the comment for that function accordingly. Currently, passing\nNULL as argument to parameter bs would result in a NULL pointer\ndereference.\n\nSigned-off-by: Jaak Ristioja \u003cristioja@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "1d6165851cd8e3f919d446cd6da35dee44e8837e",
      "tree": "a9d68cfc0e838490d12963aa917ef78a54ae2073",
      "parents": [
        "c84a301d4a4b1cc382a6549b4e7881ce5b796d63"
      ],
      "author": {
        "name": "Dmitry Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Wed Jan 27 22:44:36 2010 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jan 28 15:08:29 2010 +0100"
      },
      "message": "block: fix bio_add_page for non trivial merge_bvec_fn case\n\nWe have to properly decrease bi_size in order to merge_bvec_fn return\nright result.  Otherwise this result in false merge rejects for two\nabsolutely valid bio_vecs.  This may cause significant performance\npenalty for example fs_block_size \u003d\u003d 1k and block device is raid0 with\nsmall chunk_size \u003d 8k. Then it is impossible to merge 7-th fs-block in\nto bio which already has 6 fs-blocks.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Dmitry Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f06f135d8642e2f6812cfcb4ea8e4e9122d4d58c",
      "tree": "efef71a7083eda0c471a1c5aebb9132e37b61ade",
      "parents": [
        "2705ca7959111882097da1ebbe401d5566780904"
      ],
      "author": {
        "name": "Thiago Farina",
        "email": "tfransosi@gmail.com",
        "time": "Tue Jan 19 14:07:09 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jan 19 14:07:09 2010 +0100"
      },
      "message": "fs/bio.c: fix shadows sparse warning\n\nfs/bio.c:81:33: warning: symbol \u0027bslab\u0027 shadows an earlier one\nfs/bio.c:74:25: originally declared here\n\nSigned-off-by: Thiago Farina \u003ctfransosi@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "2d4dc890b5c8fabd818a8586607e6843c4375e62",
      "tree": "9976ed7b0eed0056f8289aeb6a2b0abf8c940454",
      "parents": [
        "3586e917f2c7df769d173c4ec99554cb40a911e5"
      ],
      "author": {
        "name": "Ilya Loginov",
        "email": "isloginov@gmail.com",
        "time": "Thu Nov 26 09:16:19 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Nov 26 09:16:19 2009 +0100"
      },
      "message": "block: add helpers to run flush_dcache_page() against a bio and a request\u0027s pages\n\nMtdblock driver doesn\u0027t call flush_dcache_page for pages in request.  So,\nthis causes problems on architectures where the icache doesn\u0027t fill from\nthe dcache or with dcache aliases.  The patch fixes this.\n\nThe ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE symbol was introduced to avoid\npointless empty cache-thrashing loops on architectures for which\nflush_dcache_page() is a no-op.  Every architecture was provided with this\nflush pages on architectires where ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE is\nequal 1 or do nothing otherwise.\n\nSee \"fix mtd_blkdevs problem with caches on some architectures\" discussion\non LKML for more information.\n\nSigned-off-by: Ilya Loginov \u003cisloginov@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Peter Horton \u003cphorton@bitbox.co.uk\u003e\nCc: \"Ed L. Cashin\" \u003cecashin@coraid.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5f04eeb8a76521dec371ceb05e8263889a8af2bc",
      "tree": "ec69a41f4e6258994aee7720bdee645ad569bc73",
      "parents": [
        "ad0bf11070ebb3c95f8ce82e6219dbd79c8e8b69"
      ],
      "author": {
        "name": "Alberto Bertogli",
        "email": "albertito@blitiri.com.ar",
        "time": "Mon Nov 02 11:39:42 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Nov 02 11:41:13 2009 +0100"
      },
      "message": "Fix bio_alloc() and bio_kmalloc() documentation\n\nCommit 451a9ebf accidentally broke bio_alloc() and bio_kmalloc() comments by\n(almost) swapping them.\n\nThis patch fixes that, by placing the comments in the right place.\n\nSigned-off-by: Alberto Bertogli \u003calbertito@blitiri.com.ar\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ad0bf11070ebb3c95f8ce82e6219dbd79c8e8b69",
      "tree": "a26200377bc006a0a12f33d232ed0e19b87eb618",
      "parents": [
        "b6727b12dd2ffb4a890eb5b13a298230c29ba45d"
      ],
      "author": {
        "name": "Alberto Bertogli",
        "email": "albertito@blitiri.com.ar",
        "time": "Mon Nov 02 11:39:22 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Nov 02 11:39:22 2009 +0100"
      },
      "message": "bio_put(): add bio_clone() to the list of functions in the comment\n\nIn bio_put()\u0027s comment, add bio_clone() to the list of functions that can\ngive you a bio reference.\n\nSigned-off-by: Alberto Bertogli \u003calbertito@blitiri.com.ar\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a112a71d45b5e40c3cf07371d20a4a5079a72610",
      "tree": "7e55b5d47be8d3c8189ff7d0bece65b46c8bd0e5",
      "parents": [
        "48c0d4d4c04dd520c55e0fd756fa4e7c83de3d13"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hsweeten@visionengravers.com",
        "time": "Sat Sep 26 16:19:21 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 01 21:15:46 2009 +0200"
      },
      "message": "fs/bio.c: move EXPORT* macros to line after function\n\nAs mentioned in Documentation/CodingStyle, move EXPORT* macro\u0027s\nto the line immediately after the closing function brace line.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ecb554a846f8e9d2a58f6d6c118168a63ac065aa",
      "tree": "c52b265969972d5df0fe104110bc5cbfb220f3a7",
      "parents": [
        "76da03467a1a78811777561bbb1fa56175ee4778"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Jul 09 14:46:53 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.(none)",
        "time": "Fri Jul 10 20:31:53 2009 +0200"
      },
      "message": "block: fix sg SG_DXFER_TO_FROM_DEV regression\n\nI overlooked SG_DXFER_TO_FROM_DEV support when I converted sg to use\nthe block layer mapping API (2.6.28).\n\nDouglas Gilbert explained SG_DXFER_TO_FROM_DEV:\n\nhttp://www.spinics.net/lists/linux-scsi/msg37135.html\n\n\u003d\nThe semantics of SG_DXFER_TO_FROM_DEV were:\n   - copy user space buffer to kernel (LLD) buffer\n   - do SCSI command which is assumed to be of the DATA_IN\n     (data from device) variety. This would overwrite\n     some or all of the kernel buffer\n   - copy kernel (LLD) buffer back to the user space.\n\nThe idea was to detect short reads by filling the original\nuser space buffer with some marker bytes (\"0xec\" it would\nseem in this report). The \"resid\" value is a better way\nof detecting short reads but that was only added this century\nand requires co-operation from the LLD.\n\u003d\n\nThis patch changes the block layer mapping API to support this\nsemantics. This simply adds another field to struct rq_map_data and\nenables __bio_copy_iov() to copy data from user space even with READ\nrequests.\n\nIt\u0027s better to add the flags field and kills null_mapped and the new\nfrom_user fields in struct rq_map_data but that approach makes it\ndifficult to send this patch to stable trees because st and osst\ndrivers use struct rq_map_data (they were converted to use the block\nlayer in 2.6.29 and 2.6.30). Well, I should clean up the block layer\nmapping API.\n\nzhou sf reported this regiression and tested this patch:\n\nhttp://www.spinics.net/lists/linux-scsi/msg37128.html\nhttp://www.spinics.net/lists/linux-scsi/msg37168.html\n\nReported-by: zhou sf \u003csxzzsf@gmail.com\u003e\nTested-by: zhou sf \u003csxzzsf@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7878cba9f0037f5599004b03a1260b32d9050360",
      "tree": "bff5e1a47b6e64e45df0428925cc6db8542cad62",
      "parents": [
        "6118b70b3a0b4c583439bb77600194c82f220ce3"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri Jun 26 15:37:49 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jul 01 10:56:25 2009 +0200"
      },
      "message": "block: Create bip slabs with embedded integrity vectors\n\nThis patch restores stacking ability to the block layer integrity\ninfrastructure by creating a set of dedicated bip slabs.  Each bip slab\nhas an embedded bio_vec array at the end.  This cuts down on memory\nallocations and also simplifies the code compared to the original bvec\nversion.  Only the largest bip slab is backed by a mempool.  The pool is\ncontained in the bio_set so stacking drivers can ensure forward\nprogress.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@carl.(none)\u003e\n"
    },
    {
      "commit": "e212d6f25084e8e9b02a04ba514d7bb1e4a4924a",
      "tree": "a94638953a7aa7f0bbd6f5d08fa3c649ce0ef8ce",
      "parents": [
        "5ced504b1bd1979378de35c56aa5d3d79fb5033f"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Jun 16 11:19:36 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jun 16 11:19:36 2009 +0200"
      },
      "message": "block: remove some includings of blktrace_api.h\n\nWhen porting blktrace to tracepoints, we changed to trace/block.h\nfor trace prober declarations.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "76d93ff344f547c633fd7b2ee6511bad82c4616f",
      "tree": "6e1dc59a1747f579abc4d726135d127f3b4e021d",
      "parents": [
        "27af1da4b58675d5c6bacf9b7de9c2746687d272"
      ],
      "author": {
        "name": "Nikanth Karthikesan",
        "email": "knikanth@suse.de",
        "time": "Wed Apr 22 13:38:58 2009 +0530"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:47 2009 +0200"
      },
      "message": "trivial: fix typo in bio_alloc kernel doc\n\nFix typo in bio_alloc kernel doc.\n\nSigned-off-by: Nikanth Karthikesan \u003cknikanth@suse.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "c9059598ea8981d02356eead3188bf7fa4d717b8",
      "tree": "03e73b20a30e988da7c6a3e0ad93b2dc5843274d",
      "parents": [
        "0a33f80a8373eca7f4bea3961d1346c3815fa5ed",
        "b0fd271d5fba0b2d00888363f3869e3f9b26caa9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:52:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 11:10:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block: (153 commits)\n  block: add request clone interface (v2)\n  floppy: fix hibernation\n  ramdisk: remove long-deprecated \"ramdisk\u003d\" boot-time parameter\n  fs/bio.c: add missing __user annotation\n  block: prevent possible io_context-\u003erefcount overflow\n  Add serial number support for virtio_blk, V4a\n  block: Add missing bounce_pfn stacking and fix comments\n  Revert \"block: Fix bounce limit setting in DM\"\n  cciss: decode unit attention in SCSI error handling code\n  cciss: Remove no longer needed sendcmd reject processing code\n  cciss: change SCSI error handling routines to work with interrupts enabled.\n  cciss: separate error processing and command retrying code in sendcmd_withirq_core()\n  cciss: factor out fix target status processing code from sendcmd functions\n  cciss: simplify interface of sendcmd() and sendcmd_withirq()\n  cciss: factor out core of sendcmd_withirq() for use by SCSI error handling code\n  cciss: Use schedule_timeout_uninterruptible in SCSI error handling code\n  block: needs to set the residual length of a bidi request\n  Revert \"block: implement blkdev_readpages\"\n  block: Fix bounce limit setting in DM\n  Removed reference to non-existing file Documentation/PCI/PCI-DMA-mapping.txt\n  ...\n\nManually fix conflicts with tracing updates in:\n\tblock/blk-sysfs.c\n\tdrivers/ide/ide-atapi.c\n\tdrivers/ide/ide-cd.c\n\tdrivers/ide/ide-floppy.c\n\tdrivers/ide/ide-tape.c\n\tinclude/trace/events/block.h\n\tkernel/trace/blktrace.c\n"
    },
    {
      "commit": "0e0c62123b517d2b3c26922342c0cc5bb63a93f8",
      "tree": "12de5174964661c1731cec7e3abd05980dfcf26d",
      "parents": [
        "d9c7d394a8ebacb60097b192939ae9f15235225e"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Wed Jun 10 12:57:07 2009 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jun 10 23:07:15 2009 +0200"
      },
      "message": "fs/bio.c: add missing __user annotation\n\nAs reported by sparse:\n\nfs/bio.c:720:13: warning: incorrect type in assignment (different address spaces)\nfs/bio.c:720:13:    expected char *iov_addr\nfs/bio.c:720:13:    got void [noderef] \u003casn:1\u003e*\nfs/bio.c:724:36: warning: incorrect type in argument 2 (different address spaces)\nfs/bio.c:724:36:    expected void const [noderef] \u003casn:1\u003e*from\nfs/bio.c:724:36:    got char *iov_addr\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "55782138e47d9baf2f7d3a7af9e7cf42adf72c56",
      "tree": "c7ccabae20e27bbeb08b69a358e8b86c98d1d9f3",
      "parents": [
        "f57a8a1911342265e7acdc190333c4e9235a6632"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Jun 09 13:43:05 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jun 09 12:34:23 2009 -0400"
      },
      "message": "tracing/events: convert block trace points to TRACE_EVENT()\n\nTRACE_EVENT is a more generic way to define tracepoints. Doing so adds\nthese new capabilities to this tracepoint:\n\n  - zero-copy and per-cpu splice() tracing\n  - binary tracing without printf overhead\n  - structured logging records exposed under /debug/tracing/events\n  - trace events embedded in function tracer output and other plugins\n  - user-defined, per tracepoint filter expressions\n  ...\n\nCons:\n\n  - no dev_t info for the output of plug, unplug_timer and unplug_io events.\n    no dev_t info for getrq and sleeprq events if bio \u003d\u003d NULL.\n    no dev_t info for rq_abort,...,rq_requeue events if rq-\u003erq_disk \u003d\u003d NULL.\n\n    This is mainly because we can\u0027t get the deivce from a request queue.\n    But this may change in the future.\n\n  - A packet command is converted to a string in TP_assign, not TP_print.\n    While blktrace do the convertion just before output.\n\n    Since pc requests should be rather rare, this is not a big issue.\n\n  - In blktrace, an event can have 2 different print formats, but a TRACE_EVENT\n    has a unique format, which means we have some unused data in a trace entry.\n\n    The overhead is minimized by using __dynamic_array() instead of __array().\n\nI\u0027ve benchmarked the ioctl blktrace vs the splice based TRACE_EVENT tracing:\n\n      dd                   dd + ioctl blktrace       dd + TRACE_EVENT (splice)\n1     7.36s, 42.7 MB/s     7.50s, 42.0 MB/s          7.41s, 42.5 MB/s\n2     7.43s, 42.3 MB/s     7.48s, 42.1 MB/s          7.43s, 42.4 MB/s\n3     7.38s, 42.6 MB/s     7.45s, 42.2 MB/s          7.41s, 42.5 MB/s\n\nSo the overhead of tracing is very small, and no regression when using\nthose trace events vs blktrace.\n\nAnd the binary output of TRACE_EVENT is much smaller than blktrace:\n\n # ls -l -h\n -rw-r--r-- 1 root root 8.8M 06-09 13:24 sda.blktrace.0\n -rw-r--r-- 1 root root 195K 06-09 13:24 sda.blktrace.1\n -rw-r--r-- 1 root root 2.7M 06-09 13:25 trace_splice.out\n\nFollowing are some comparisons between TRACE_EVENT and blktrace:\n\nplug:\n  kjournald-480   [000]   303.084981: block_plug: [kjournald]\n  kjournald-480   [000]   303.084981:   8,0    P   N [kjournald]\n\nunplug_io:\n  kblockd/0-118   [000]   300.052973: block_unplug_io: [kblockd/0] 1\n  kblockd/0-118   [000]   300.052974:   8,0    U   N [kblockd/0] 1\n\nremap:\n  kjournald-480   [000]   303.085042: block_remap: 8,0 W 102736992 + 8 \u003c- (8,8) 33384\n  kjournald-480   [000]   303.085043:   8,0    A   W 102736992 + 8 \u003c- (8,8) 33384\n\nbio_backmerge:\n  kjournald-480   [000]   303.085086: block_bio_backmerge: 8,0 W 102737032 + 8 [kjournald]\n  kjournald-480   [000]   303.085086:   8,0    M   W 102737032 + 8 [kjournald]\n\ngetrq:\n  kjournald-480   [000]   303.084974: block_getrq: 8,0 W 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084975:   8,0    G   W 102736984 + 8 [kjournald]\n\n  bash-2066  [001]  1072.953770:   8,0    G   N [bash]\n  bash-2066  [001]  1072.953773: block_getrq: 0,0 N 0 + 0 [bash]\n\nrq_complete:\n  konsole-2065  [001]   300.053184: block_rq_complete: 8,0 W () 103669040 + 16 [0]\n  konsole-2065  [001]   300.053191:   8,0    C   W 103669040 + 16 [0]\n\n  ksoftirqd/1-7   [001]  1072.953811:   8,0    C   N (5a 00 08 00 00 00 00 00 24 00) [0]\n  ksoftirqd/1-7   [001]  1072.953813: block_rq_complete: 0,0 N (5a 00 08 00 00 00 00 00 24 00) 0 + 0 [0]\n\nrq_insert:\n  kjournald-480   [000]   303.084985: block_rq_insert: 8,0 W 0 () 102736984 + 8 [kjournald]\n  kjournald-480   [000]   303.084986:   8,0    I   W 102736984 + 8 [kjournald]\n\nChangelog from v2 -\u003e v3:\n\n- use the newly introduced __dynamic_array().\n\nChangelog from v1 -\u003e v2:\n\n- use __string() instead of __array() to minimize the memory required\n  to store hex dump of rq-\u003ecmd().\n\n- support large pc requests.\n\n- add missing blk_fill_rwbs_rq() in block_rq_requeue TRACE_EVENT.\n\n- some cleanups.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A2DF669.5070905@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ae03bf639a5027d27270123f5f6e3ee6a412781d",
      "tree": "d705f41a188ad656b1f47f7952626a9f992e3b8f",
      "parents": [
        "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:50 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Use accessor functions for queue limits\n\nConvert all external users of queue limits to using wrapper functions\ninstead of poking the request queue variables directly.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1",
      "tree": "d60d15a082171c58ac811d547d51a9c3119f23e3",
      "parents": [
        "9bd7de51ee8537094656149eaf45338cadb7d7d4"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:49 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Do away with the notion of hardsect_size\n\nUntil now we have had a 1:1 mapping between storage device physical\nblock size and the logical block sized used when addressing the device.\nWith SATA 4KB drives coming out that will no longer be the case.  The\nsector size will be 4KB but the logical block size will remain\n512-bytes.  Hence we need to distinguish between the physical block size\nand the logical ditto.\n\nThis patch renames hardsect_size to logical_block_size.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e4b636366c00738b9609cda307014d71b1225b7f",
      "tree": "760b67b3624eda62e943e48ce93635c30a5b47bf",
      "parents": [
        "b9ed7252d219c1c663944bf03846eabb515dbe75",
        "279e677faa775ad16e75c32e1bf4a37f8158bc61"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:25:34 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:25:34 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-2.6.31\n\nConflicts:\n\tdrivers/block/hd.c\n\tdrivers/block/mg_disk.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4fc981ef9e7c0953d5c4896ce088b19c50cb018f",
      "tree": "9efb7d762e51cb92dcee0e90ebdb76185aadebb4",
      "parents": [
        "5f49f63178360b07a095bd33b0d850d60edf7590"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue May 19 18:33:06 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 19 11:36:08 2009 +0200"
      },
      "message": "bio: always copy back data for copied kernel requests\n\nWhen a read bio_copy_kern() request fails, the content of the bounce\nbuffer is not copied back.  However, as request failure doesn\u0027t\nnecessarily mean complete failure, the buffer state can be useful.\nThis behavior is also inconsistent with the user map counterpart and\ncauses the subtle difference between bounced and unbounced IO causes\nconfusion.\n\nThis patch makes bio_copy_kern_endio() ignore @err and always copy\nback data on request completion.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "69838727bcd819a8fd73a88447801221788b0c6d",
      "tree": "4fd6c31c1078ac079ea1ba0fa9cdf4aa581f06a7",
      "parents": [
        "0191944282e84931f92915b5f06b348a92dac7e1"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Apr 28 20:24:29 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 20:24:29 2009 +0200"
      },
      "message": "bio: fix memcpy corruption in bio_copy_user_iov()\n\nst driver uses blk_rq_map_user() in order to just build a request out\nof page frames. In this case, map_data-\u003eoffset is a non zero value and\niov[0].iov_base is NULL. We need to increase nr_pages for that.\n\nCc: stable@kernel.org\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a9e9dc24bbc3e084450a22cf4fb82f5f5d4cbeea",
      "tree": "c6d18d969b76f61ebbfa777caf2706af5873a98f",
      "parents": [
        "451a9ebf653d28337ba53ed5b4b70b0b9543cca1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Apr 15 22:10:27 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 22 08:35:10 2009 +0200"
      },
      "message": "bio: use bio_kmalloc() in copy/map functions\n\nImpact: remove possible deadlock condition\n\nThere is no reason to use mempool backed allocation for map functions.\nAlso, because kern mapping is used inside LLDs (e.g. for EH), using\nmempool backed allocation can lead to deadlock under extreme\nconditions (mempool already consumed by the time a request reached EH\nand requests are blocked on EH).\n\nSwitch copy/map functions to bio_kmalloc().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "451a9ebf653d28337ba53ed5b4b70b0b9543cca1",
      "tree": "ab203dfb628623483a1aeb7ead564ea35ad21d29",
      "parents": [
        "cd0aca2d550f238d80ba58e7dcade4ea3d0a3aa7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Apr 15 19:50:51 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 22 08:35:10 2009 +0200"
      },
      "message": "bio: fix bio_kmalloc()\n\nImpact: fix bio_kmalloc() and its destruction path\n\nbio_kmalloc() was broken in two ways.\n\n* bvec_alloc_bs() first allocates bvec using kmalloc() and then\n  ignores it and allocates again like non-kmalloc bvecs.\n\n* bio_kmalloc_destructor() didn\u0027t check for and free bio integrity\n  data.\n\nThis patch fixes the above problems.  kmalloc patch is separated out\nfrom bio_alloc_bioset() and allocates the requested number of bvecs as\ninline bvecs.\n\n* bio_alloc_bioset() no longer takes NULL @bs.  None other than\n  bio_kmalloc() used it and outside users can\u0027t know how it was\n  allocated anyway.\n\n* Define and use BIO_POOL_NONE so that pool index check in\n  bvec_free_bs() triggers if inline or kmalloc allocated bvec gets\n  there.\n\n* Relocate destructors on top of each allocation function so that how\n  they\u0027re used is more clear.\n\nJens Axboe suggested allocating bvecs inline.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "86c824b9434e764d01489688e4e38aee43b93fcf",
      "tree": "0aa776b6fb5af04e9392c3f49842eeee97a5bd74",
      "parents": [
        "61e0d47c33cc371f725bcda4a47ae0efe652dba8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 15 09:00:07 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Apr 15 12:10:12 2009 +0200"
      },
      "message": "bio: add documentation to bio_alloc()\n\nExplain that with __GFP_WAIT set it will not fail, and that the caller\nmust never allocate more than 1 bio at the time.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c7eee1b836ab5e504cbd2b7f3892ea468bd52a16",
      "tree": "e9bc6170d8086e57b10e7514459b9efd2c40ebf2",
      "parents": [
        "5243ef8b54a927cae23216253e4e3f03af6f1446"
      ],
      "author": {
        "name": "Alberto Bertogli",
        "email": "albertito@blitiri.com.ar",
        "time": "Sun Jan 25 23:36:14 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Mar 30 15:22:02 2009 +0200"
      },
      "message": "trivial: Fix typo in bio_split()\u0027s documentation\n\nSigned-off-by: Alberto Bertogli \u003calbertito@blitiri.com.ar\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "6d2a78e783416ba99e36beb1d4395b785b34e867",
      "tree": "5e1b772cfbfb8b5d089a9808a0232749f7ddf8be",
      "parents": [
        "32ca163c9cdb33151d79e95a7cf244f62b5d4418"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Tue Mar 10 08:27:39 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 24 12:35:17 2009 +0100"
      },
      "message": "block: add private bio_set for bio integrity allocations\n\nThe integrity bio allocation needs its own bio_set to avoid violating\nthe mempool allocation rules and risking deadlocks.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a7fcd37cdcb47806fb8a9070f006ee34061defa6",
      "tree": "3a983ae22551ce8d0aa062d84d8165df862811fa",
      "parents": [
        "34053979fb1d923217685cf166349f1899980581"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 05 16:10:29 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 24 12:35:16 2009 +0100"
      },
      "message": "block: don\u0027t create bio_vec slabs of less than the inline number\n\nIf we don\u0027t have CONFIG_BLK_DEV_INTEGRITY set, then we don\u0027t have\nany external dependencies on the bio_vec slabs. So don\u0027t create\nthe ones that we will inline anyway.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "34053979fb1d923217685cf166349f1899980581",
      "tree": "05e4c9dd49fe841ecb5c6556aa3a5deaf05fab75",
      "parents": [
        "8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 21 11:16:36 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 24 12:35:16 2009 +0100"
      },
      "message": "block: cleanup bio_alloc_bioset()\n\nthis warning (which got fixed by commit b2bf968):\n\n  fs/bio.c: In function ‘bio_alloc_bioset’:\n  fs/bio.c:305: warning: ‘p’ may be used uninitialized in this function\n\nTriggered because the code flow in bio_alloc_bioset() is correct\nbut a bit complex for the compiler to see through.\n\nStreamline it a bit - this also makes the code a tiny bit more compact:\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n   7540\t    256\t     40\t   7836\t   1e9c\tbio.o.before\n   7539\t    256\t     40\t   7835\t   1e9b\tbio.o.after\n\nAlso remove an older compiler-warnings annotation from this function,\nit\u0027s not needed.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "059ea3318c8ede71851a52b4359fbf1ab0cec301",
      "tree": "29a70645e27947d820884b1249d0d7f26b8ea0d8",
      "parents": [
        "87092698c665e0a358caf9825ae13114343027e8"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Mar 09 10:42:45 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sat Mar 14 21:06:52 2009 +0100"
      },
      "message": "block: fix memory leak in bio_clone()\n\nIf bio_integrity_clone() fails, bio_clone() returns NULL without freeing\nthe newly allocated bio.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "87092698c665e0a358caf9825ae13114343027e8",
      "tree": "4003d12a76e1cd5b50d275a0aef536d4a86d0092",
      "parents": [
        "041b62374c7fedc11a8a1eeda2868612d3d1436c"
      ],
      "author": {
        "name": "un\u0027ichi Nomura",
        "email": "j-nomura@ce.jp.nec.com",
        "time": "Mon Mar 09 10:40:52 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sat Mar 14 21:06:51 2009 +0100"
      },
      "message": "block: Add gfp_mask parameter to bio_integrity_clone()\n\nStricter gfp_mask might be required for clone allocation.\nFor example, request-based dm may clone bio in interrupt context\nso it has to use GFP_ATOMIC.\n\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nAcked-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nCc: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b2bf96833c5782befc3e7700f791fde754a47b01",
      "tree": "b38745750c948b519e4c46bb9589d3a61c6359f4",
      "parents": [
        "169d418b127b98a3e464e9c4b807ad083760f98c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Feb 19 08:50:26 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Feb 26 10:45:48 2009 +0100"
      },
      "message": "block: fix bogus gcc warning for uninitialized var usage\n\nNewer gcc throw this warning:\n\n        fs/bio.c: In function ?bio_alloc_bioset?:\n        fs/bio.c:305: warning: ?p? may be used uninitialized in this function\n\nsince it cannot figure out that \u0027p\u0027 is only ever used if \u0027bs\u0027 is non-NULL.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a60e78e57a17d55bbd5a96da16fe9649d364b987",
      "tree": "5b7a7c5977ee8862166f743d1aede56278c4971b",
      "parents": [
        "93dbb393503d53cd226e5e1f0088fe8f4dbaa2b8"
      ],
      "author": {
        "name": "Subhash Peddamallu",
        "email": "subhash.peddamallu@gmail.com",
        "time": "Mon Feb 16 10:27:07 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Feb 18 10:32:01 2009 +0100"
      },
      "message": "fs/bio: bio_alloc_bioset: pass right object ptr to mempool_free\n\nWhen freeing from bio pool use right ptr to account for bs-\u003efront_pad,\ninstead of bio ptr,\n\nSigned-off-by: Subhash Peddamallu \u003csubhash.peddamallu@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "97ae77a1cd332c7b011d71315c8faabce6840c72",
      "tree": "fc243ca28ea474eaf81729079eeb3b259cd1b81b",
      "parents": [
        "56c451f4b583ccdf80c9e676179c9cb49de86745"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Dec 18 14:49:38 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Jan 02 11:10:35 2009 -0600"
      },
      "message": "[SCSI] block: make blk_rq_map_user take a NULL user-space buffer for WRITE\n\nThe commit 818827669d85b84241696ffef2de485db46b0b5e (block: make\nblk_rq_map_user take a NULL user-space buffer) extended\nblk_rq_map_user to accept a NULL user-space buffer with a READ\ncommand. It was necessary to convert sg to use the block layer mapping\nAPI.\n\nThis patch extends blk_rq_map_user again for a WRITE command. It is\nnecessary to convert st and osst drivers to use the block layer\napping API.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "56c451f4b583ccdf80c9e676179c9cb49de86745",
      "tree": "7ad9daeafb88e3c4390bf7a2db0c203fe2642728",
      "parents": [
        "e623ddb4e940b266adc77ba1cc28a3554aa90e79"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Dec 18 14:49:37 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Jan 02 11:10:08 2009 -0600"
      },
      "message": "[SCSI] block: fix the partial mappings with struct rq_map_data\n\nThis fixes bio_copy_user_iov to properly handle the partial mappings\nwith struct rq_map_data (which only sg uses for now but st and osst\nwill shortly). It adds the offset member to struct rq_map_data and\nchanges blk_rq_map_user to update it so that bio_copy_user_iov can add\nan appropriate page frame via bio_add_pc_page().\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e623ddb4e940b266adc77ba1cc28a3554aa90e79",
      "tree": "62c245b32720573d97718795b0c8165cad967b05",
      "parents": [
        "4f10aae0d1a285df6b16bf6ca5abd366140fd371"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Dec 18 14:49:36 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Jan 02 11:09:41 2009 -0600"
      },
      "message": "[SCSI] block: fix bio_add_page misuse with rq_map_data\n\nThis fixes bio_add_page misuse in bio_copy_user_iov with rq_map_data,\nwhich only sg uses now.\n\nrq_map_data carries page frames for bio_add_pc_page. bio_copy_user_iov\nuses bio_add_pc_page with a larger size than PAGE_SIZE. It\u0027s clearly\nwrong.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "d3f761104b097738932afcc310fbbbbfb007ef92",
      "tree": "5acda986824cab2a8c54690258a49df61b898389",
      "parents": [
        "f735b5eeb9fcbb001e0cf2a5296b19c4bbaec55f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Dec 23 12:46:21 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:29:53 2008 +0100"
      },
      "message": "bio: get rid of bio_vec clearing\n\nWe don\u0027t need to clear the memory used for adding bio_vec entries,\nsince nobody should be looking at members unitialized. Any valid\nuse should be below bio-\u003ebi_vcnt, and that members up until that count\nmust be valid since they were added through bio_add_page().\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "392ddc32982a5c661dd90dd49a3cb37f1c68b782",
      "tree": "614b8e857a70ce479bcbbf24af66a56b7723efc8",
      "parents": [
        "bb799ca0202a360fa74d5f17039b9100caebdde7"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Dec 23 12:42:54 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:29:50 2008 +0100"
      },
      "message": "bio: add support for inlining a number of bio_vecs inside the bio\n\nWhen we go and allocate a bio for IO, we actually do two allocations.\nOne for the bio itself, and one for the bi_io_vec that holds the\nactual pages we are interested in.\n\nThis feature inlines a definable amount of io vecs inside the bio\nitself, so we eliminate the bio_vec array allocation for IO\u0027s up\nto a certain size. It defaults to 4 vecs, which is typically 16k\nof IO.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bb799ca0202a360fa74d5f17039b9100caebdde7",
      "tree": "048b6cedfd2644edd82a606db6d9e8b19d31328b",
      "parents": [
        "1b4344986926da324b5cd10b683e5a1a5e1b7db3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Dec 10 15:35:05 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:29:23 2008 +0100"
      },
      "message": "bio: allow individual slabs in the bio_set\n\nInstead of having a global bio slab cache, add a reference to one\nin each bio_set that is created. This allows for personalized slabs\nin each bio_set, so that they can have bios of different sizes.\n\nThis means we can personalize the bios we return. File systems may\nwant to embed the bio inside another structure, to avoid allocation\nmore items (and stuffing them in -\u003ebi_private) after the get a bio.\nOr we may want to embed a number of bio_vecs directly at the end\nof a bio, to avoid doing two allocations to return a bio. This is now\npossible.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1b4344986926da324b5cd10b683e5a1a5e1b7db3",
      "tree": "f196fad09555f32e4464df2ea4c8fea17ad99e76",
      "parents": [
        "7ff9345ffac56743b5001561bc2dc1e041b79149"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Oct 22 20:32:58 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:28:46 2008 +0100"
      },
      "message": "bio: move the slab pointer inside the bio_set\n\nIn preparation for adding differently sized bios.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7ff9345ffac56743b5001561bc2dc1e041b79149",
      "tree": "aede8c4b4b52c7808cdea7ec039655accffd2298",
      "parents": [
        "a31a97381cdf7dceb03b797a8faf9bc8a01c65d1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Dec 11 11:53:43 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:28:46 2008 +0100"
      },
      "message": "bio: only mempool back the largest bio_vec slab cache\n\nWe only very rarely need the mempool backing, so it makes sense to\nget rid of all but one of the mempool in a bio_set. So keep the\nlargest bio_vec count mempool so we can always honor the largest\nallocation, and \"upgrade\" callers that fail.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0bfc24559d7945506184d86739fe365a181f06b7",
      "tree": "5c152128faac7080f4802ce03d1c6b6bc7173227",
      "parents": [
        "5f3ea37c7716db4e894a480e0c18b24399595b6b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 26 11:59:56 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 26 13:04:35 2008 +0100"
      },
      "message": "blktrace: port to tracepoints, update\n\nPort to the new tracepoints API: split DEFINE_TRACE() and DECLARE_TRACE()\nsites. Spread them out to the usage sites, as suggested by\nMathieu Desnoyers.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\n"
    },
    {
      "commit": "5f3ea37c7716db4e894a480e0c18b24399595b6b",
      "tree": "db6784635d024894f641b340dcd7c5060c446077",
      "parents": [
        "509dceef6470442d8c7b8a43ec34125205840b3c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Oct 30 08:34:33 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 26 12:13:34 2008 +0100"
      },
      "message": "blktrace: port to tracepoints\n\nThis was a forward port of work done by Mathieu Desnoyers, I changed it to\nencode the \u0027what\u0027 parameter on the tracepoint name, so that one can register\ninterest in specific events and not on classes of events to then check the\n\u0027what\u0027 parameter.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6feef531f55cf4a20fd9eb39f5352e5745203603",
      "tree": "2c52b800edcbdf01abefcf27e900985c087f1b36",
      "parents": [
        "ad3316bf4eeb53c89164f759767f911072b56203"
      ],
      "author": {
        "name": "Denis ChengRq",
        "email": "crquan@gmail.com",
        "time": "Thu Oct 09 08:57:05 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:57:05 2008 +0200"
      },
      "message": "block: mark bio_split_pool static\n\nSince all bio_split calls refer the same single bio_split_pool, the bio_split\nfunction can use bio_split_pool directly instead of the mempool_t parameter;\n\nthen the mempool_t parameter can be removed from bio_split param list, and\nbio_split_pool is only referred in fs/bio.c file, can be marked static.\n\nSigned-off-by: Denis ChengRq \u003ccrquan@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ad3316bf4eeb53c89164f759767f911072b56203",
      "tree": "12caa0194f385c58e4543ad864a58dff02f33a47",
      "parents": [
        "b02739b01c5309d74a59859f2ce92c931d1f1955"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Wed Oct 01 22:42:53 2008 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:22 2008 +0200"
      },
      "message": "block: Find bio sector offset given idx and offset\n\nHelper function to find the sector offset in a bio given bvec index\nand page offset.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0a0d96b03a1f3bfd6bc3ea08008699e8e59fccd9",
      "tree": "59cbbcb691a76121fba8d7af74d89558296d5834",
      "parents": [
        "3e6053d76dcbd92b2f9f4ad5ece9bce83149523e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Sep 11 13:17:37 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:17 2008 +0200"
      },
      "message": "block: add bio_kmalloc()\n\nNot all callers need (or want!) the mempool backing guarentee, it\nessentially means that you can only use bio_alloc() for short allocations\nand not for preallocating some bio\u0027s at setup or init time.\n\nSo add bio_kmalloc() which does the same thing as bio_alloc(), except\nit just uses kmalloc() as the backing instead of the bio mempools.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "818827669d85b84241696ffef2de485db46b0b5e",
      "tree": "694d09728733e65d604bf3e1f13679db73fc1d9a",
      "parents": [
        "839e96afba87117befd39cf4e43f156edc8047a7"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Sep 02 16:20:19 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:11 2008 +0200"
      },
      "message": "block: make blk_rq_map_user take a NULL user-space buffer\n\nThis patch changes blk_rq_map_user to accept a NULL user-space buffer\nwith a READ command if rq_map_data is not NULL. Thus a caller can pass\npage frames to lk_rq_map_user to just set up a request and bios with\npage frames propely. bio_uncopy_user (called via blk_rq_unmap_user)\ndoesn\u0027t copy data to user space with such request.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4d8ab62e087d9300883b82c2662e73e6eef803a3",
      "tree": "379f6c1a3dfb165ce1c604d34ddb42ac1447d832",
      "parents": [
        "10db10d144c0248f285242f79daf6b9de6b00a62"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Aug 28 15:05:57 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:10 2008 +0200"
      },
      "message": "bio: convert bio_copy_kern to use bio_copy_user\n\nbio_copy_kern and bio_copy_user are very similar. This converts\nbio_copy_kern to use bio_copy_user.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "152e283fdfea0cd11e297d982378b55937842dde",
      "tree": "a97a57108353f167a1e2911e8ee09c527ef42d3e",
      "parents": [
        "a3bce90edd8f6cafe3f63b1a943800792e830178"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Aug 28 16:17:06 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:10 2008 +0200"
      },
      "message": "block: introduce struct rq_map_data to use reserved pages\n\nThis patch introduces struct rq_map_data to enable bio_copy_use_iov()\nuse reserved pages.\n\nCurrently, bio_copy_user_iov allocates bounce pages but\ndrivers/scsi/sg.c wants to allocate pages by itself and use\nthem. struct rq_map_data can be used to pass allocated pages to\nbio_copy_user_iov.\n\nThe current users of bio_copy_user_iov simply passes NULL (they don\u0027t\nwant to use pre-allocated pages).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Douglas Gilbert \u003cdougg@torque.net\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a3bce90edd8f6cafe3f63b1a943800792e830178",
      "tree": "c07a2962987e57997b4ff6f6c63febe1feaa0a9c",
      "parents": [
        "45333d5a31296d0af886d94f1d08f128231cab8e"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Aug 28 16:17:05 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:10 2008 +0200"
      },
      "message": "block: add gfp_mask argument to blk_rq_map_user and blk_rq_map_user_iov\n\nCurrently, blk_rq_map_user and blk_rq_map_user_iov always do\nGFP_KERNEL allocation.\n\nThis adds gfp_mask argument to blk_rq_map_user and blk_rq_map_user_iov\nso sg can use it (sg always does GFP_ATOMIC allocation).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Douglas Gilbert \u003cdougg@torque.net\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c7c22e4d5c1fdebfac4dba76de7d0338c2b0d832",
      "tree": "ecc3d2517b3471ccc35d4cb4e3b48d4b57205061",
      "parents": [
        "18887ad910e56066233a07fd3cfb2fa11338b782"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sat Sep 13 20:26:01 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:09 2008 +0200"
      },
      "message": "block: add support for IO CPU affinity\n\nThis patch adds support for controlling the IO completion CPU of\neither all requests on a queue, or on a per-request basis. We export\na sysfs variable (rq_affinity) which, if set, migrates completions\nof requests to the CPU that originally submitted it. A bio helper\n(bio_set_completion_cpu()) is also added, so that queuers can ask\nfor completion on that specific CPU.\n\nIn testing, this has been show to cut the system time by as much\nas 20-40% on synthetic workloads where CPU affinity is desired.\n\nThis requires a little help from the architecture, so it\u0027ll only\nwork as designed for archs that are using the new generic smp\nhelper infrastructure.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5df97b91b5d7ed426034fcc84cb6e7cf682b8838",
      "tree": "727b9fb778f72d2b1ff44c007fb5209bacf67f4a",
      "parents": [
        "b8b3e16cfe6435d961f6aaebcfd52a1ff2a988c5"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Fri Aug 15 10:20:02 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:03 2008 +0200"
      },
      "message": "drop vmerge accounting\n\nRemove hw_segments field from struct bio and struct request. Without virtual\nmerge accounting they have no purpose.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b8b3e16cfe6435d961f6aaebcfd52a1ff2a988c5",
      "tree": "5832535c112c0504590256cb8a0bcabc6e282be3",
      "parents": [
        "6a421c1dc94b12923294a359822346f12492de5e"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Fri Aug 15 10:15:19 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:03 2008 +0200"
      },
      "message": "block: drop virtual merging accounting\n\nRemove virtual merge accounting.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "aefcc28a3a63ac33a298777aa50ba43641c75241",
      "tree": "d72a23323e80b45da16ea916c9abe03d6a3f6bfd",
      "parents": [
        "76029ff37f31dad64641489c610d98955217bb68"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Aug 25 20:36:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "bio: fix __bio_copy_iov() handling of bio-\u003ebv_len\n\nThe commit c5dec1c3034f1ae3503efbf641ff3b0273b64797 introduced\n__bio_copy_iov() to add bounce support to blk_rq_map_user_iov.\n\n__bio_copy_iov() uses bio-\u003ebv_len to copy data for READ commands after\nthe completion but it doesn\u0027t work with a request that partially\ncompleted. SCSI always completes a PC request as a whole but seems\nsome don\u0027t.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: stable@kernel.org\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "76029ff37f31dad64641489c610d98955217bb68",
      "tree": "e8f729fa6288676be357295141a0950f171a62d8",
      "parents": [
        "48fd4f93a00eac844678629f2f00518e146ed30d"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon Aug 25 20:36:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "bio: fix bio_copy_kern() handling of bio-\u003ebv_len\n\nThe commit 68154e90c9d1492d570671ae181d9a8f8530da55 introduced\nbio_copy_kern() to add bounce support to blk_rq_map_kern.\n\nbio_copy_kern() uses bio-\u003ebv_len to copy data for READ commands after\nthe completion but it doesn\u0027t work with a request that partially\ncompleted. SCSI always completes a PC request as a whole but seems\nsome don\u0027t.\n\nThis patch fixes bio_copy_kern to handle the above case. As\nbio_copy_user does, bio_copy_kern uses struct bio_map_data to store\nstruct bio_vec.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReported-by: Nix \u003cnix@esperi.org.uk\u003e\nTested-by: Nix \u003cnix@esperi.org.uk\u003e\nCc: stable@kernel.org\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1ac0ae062cecd37587f5b951089f90e1d9d91769",
      "tree": "87c622f207ade7854abeb077acacd3fcd5761501",
      "parents": [
        "ba198efb5ef4e5f4927a18ff95a58f40c58cbaa9"
      ],
      "author": {
        "name": "Denis ChengRq",
        "email": "crquan@gmail.com",
        "time": "Mon Aug 04 11:56:30 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 06 12:30:04 2008 +0200"
      },
      "message": "bio: make use of bvec_nr_vecs\n\nSince introduced in 7ba1ba12eee, it should be made use of.\n\nSigned-off-by: Denis ChengRq \u003ccrquan@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f5dd33c494a427b1d1a3b574de5c9e511c888864",
      "tree": "fc6f61ffe488fe044f9e167b31b1c4ecd5f3f54c",
      "parents": [
        "8174c430e445a93016ef18f717fe570214fa38bf"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Jul 25 19:45:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:06 2008 -0700"
      },
      "message": "dio: use get_user_pages_fast\n\nUse get_user_pages_fast in the common/generic block and fs direct IO paths.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nReviewed-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc371e66e340f35eed8dc4651c7c18e754c7fb26",
      "tree": "5a2d6727eb07a05999c531a90da43ab1c36b713e",
      "parents": [
        "b24498d477a14680fc3bb3ad884fa9fa76a2d237"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Thu Jul 03 09:53:43 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:15 2008 +0200"
      },
      "message": "Add bvec_merge_data to handle stacked devices and -\u003emerge_bvec()\n\nWhen devices are stacked, one device\u0027s merge_bvec_fn may need to perform\nthe mapping and then call one or more functions for its underlying devices.\n\nThe following bio fields are used:\n  bio-\u003ebi_sector\n  bio-\u003ebi_bdev\n  bio-\u003ebi_size\n  bio-\u003ebi_rw  using bio_data_dir()\n\nThis patch creates a new struct bvec_merge_data holding a copy of those\nfields to avoid having to change them directly in the struct bio when\ngoing down the stack only to have to change them back again on the way\nback up.  (And then when the bio gets mapped for real, the whole\nexercise gets repeated, but that\u0027s a problem for another day...)\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7ba1ba12eeef0aa7113beb16410ef8b7c748e18b",
      "tree": "4629aabe88bf095d58eabd2f451207695bb35b08",
      "parents": [
        "51d654e1d885607a6edd02b337105fa5c28b6d33"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 30 20:04:41 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "block: Block layer data integrity support\n\nSome block devices support verifying the integrity of requests by way\nof checksums or other protection information that is submitted along\nwith the I/O.\n\nThis patch implements support for generating and verifying integrity\nmetadata, as well as correctly merging, splitting and cloning bios and\nrequests that have this extra information attached.\n\nSee Documentation/block/data-integrity.txt for more information.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "51d654e1d885607a6edd02b337105fa5c28b6d33",
      "tree": "64e87fa9b3b28cb10be635cf4edc76ccf39befe1",
      "parents": [
        "a144ff09bc52ef3f3684ed23eadc9c7c0e57b3aa"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Tue Jun 17 18:59:56 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "block: Globalize bio_set and bio_vec_slab\n\nMove struct bio_set and biovec_slab definitions to bio.h so they can\nbe used outside of bio.c.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nReviewed-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ffee0259c9edcc4c0f06b60df51c461eeecad4c0",
      "tree": "c15df497b6bbe8fd7e9ed47cbfb3fba68be2e2df",
      "parents": [
        "eeae1d48c011839d9e1cdc1e8aacf0193c9d8197"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Apr 30 09:08:54 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 18:35:03 2008 +0200"
      },
      "message": "docbook: fix bio missing parameter\n\nFix fs/bio.c kernel-doc parameter warning:\nWarning(linux-2.6.25-git14//fs/bio.c:972): No description found for parameter \u0027reading\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "eeae1d48c011839d9e1cdc1e8aacf0193c9d8197",
      "tree": "77696d424a374adf671b1afb2ed03a76a65fee48",
      "parents": [
        "28f13702f03e527fcb979747a882cf366c489c50"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 13:26:27 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 13:26:27 2008 +0200"
      },
      "message": "block: use unitialized_var() in bio_alloc_bioset()\n\nBetter than setting idx to some random value and it silences the\nsame bogus gcc warning.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "68154e90c9d1492d570671ae181d9a8f8530da55",
      "tree": "4b4e9cfbaa587a576e7e52284c53ef99cf69ac4d",
      "parents": [
        "657e93be356f51888f56a58d2b374caefbf2fe86"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Apr 25 12:47:50 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 09:50:34 2008 +0200"
      },
      "message": "block: add dma alignment and padding support to blk_rq_map_kern\n\nThis patch adds bio_copy_kern similar to\nbio_copy_user. blk_rq_map_kern uses bio_copy_kern instead of\nbio_map_kern if necessary.\n\nbio_copy_kern uses temporary pages and the bi_end_io callback frees\nthese pages. bio_copy_kern saves the original kernel buffer at\nbio-\u003ebi_private it doesn\u0027t use something like struct bio_map_data to\nstore the information about the caller.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c5dec1c3034f1ae3503efbf641ff3b0273b64797",
      "tree": "d8c2d81ff2d944a0ba43e6ef7284482898af8b3b",
      "parents": [
        "476a4813cfddf7cf159956cc0e2d3c830c1507e3"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Apr 11 12:56:49 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Apr 21 09:50:08 2008 +0200"
      },
      "message": "block: convert bio_copy_user to bio_copy_user_iov\n\nThis patch enables bio_copy_user to take struct sg_iovec (renamed\nbio_copy_user_iov). bio_copy_user uses bio_copy_user_iov internally as\nbio_map_user uses bio_map_user_iov.\n\nThe major changes are:\n\n- adds sg_iovec array to struct bio_map_data\n\n- adds __bio_copy_iov that copy data between bio and\nsg_iovec. bio_copy_user_iov and bio_uncopy_user use it.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "40044ce0bf2b7e548584d91f108444e83ed5eab3",
      "tree": "f08d62febe76470e16a639b1c9029309defdd112",
      "parents": [
        "16d54669427069ef2823752c365d695b0cc4748f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Mar 17 21:14:40 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Mar 17 21:14:40 2008 +0100"
      },
      "message": "Revert \"unexport bio_{,un}map_user\"\n\nOutside users like asmlib uses the mapping functions. API wise, the\nexport is definitely sane. It\u0027s a better idea to keep this export\nthan to require external users to open-code this piece of code instead.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "86b6c7a7f78feca58d2d8615e53aee4d59ab9dc6",
      "tree": "032a54a3493041fa1c31857d23e9184b89545b78",
      "parents": [
        "4c54ac62dceecedd82d4a865017bba0b738e2897"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Feb 18 13:48:32 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Feb 19 10:04:00 2008 +0100"
      },
      "message": "fs/block_dev.c: remove #if 0\u0027ed code\n\nCommit b2e895dbd80c420bfc0937c3729b4afe073b3848 #if 0\u0027ed this code stating:\n\n\u003c--  snip  --\u003e\n\n    [PATCH] revert blockdev direct io back to 2.6.19 version\n\n    Andrew Vasquez is reporting as-iosched oopses and a 65% throughput\n    slowdown due to the recent special-casing of direct-io against\n    blockdevs.  We don\u0027t know why either of these things are occurring.\n\n    The patch minimally reverts us back to the 2.6.19 code for a 2.6.20\n    release.\n\n\u003c--  snip  --\u003e\n\nIt has since been dead code, and unless someone wants to revive it now\nit\u0027s time to remove it.\n\nThis patch also makes bio_release_pages() static again and removes the\nki_bio_count member from struct kiocb, reverting changes that had been\ndone for this dead code.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003caxboe@carl.home.kernel.dk\u003e\n"
    },
    {
      "commit": "5d84070ee0a433620c57e85dac7f82faaec5fbb3",
      "tree": "9a07548504683bcde2b262b9e2d675cbe7cea2b7",
      "parents": [
        "482eb689169948e9f4966fbae6be4d6bc0bfa818"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jan 25 12:44:44 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:04:46 2008 +0100"
      },
      "message": "__bio_clone: don\u0027t calculate hw/phys segment counts\n\nIf the users sets a new -\u003ebi_bdev on the bio after __bio_clone() has\nreturned it, the \"segment counts valid\" flag still remains even though\nit may be different with the new target. So don\u0027t calculate segment\ncounts in __bio_clone().\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "992c5ddaf1b8b85d2252339c4c89adf7469c09ca",
      "tree": "67c802af524f923cf20ebcdde2220d72e539121b",
      "parents": [
        "2b94de552e07610dfa79fc49ea49d1cfa5cd9ce8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jul 18 13:18:08 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 11:03:52 2007 +0200"
      },
      "message": "bio: make freeing of -\u003ebi_io_vec conditional in bio_free()\n\nThe empty barrier patches do not carry data, so they have no\niovec attached.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2b94de552e07610dfa79fc49ea49d1cfa5cd9ce8",
      "tree": "4ead48b312a7faf00e0c0373156e1e92cab618f0",
      "parents": [
        "4fa253f33c1d4d6402de9eaacefdb45a47ed116d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jul 18 13:14:03 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 11:03:51 2007 +0200"
      },
      "message": "bio: use memset() in bio_init()\n\nUse memset() to clear the bio, instead of doing each field manually.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6712ecf8f648118c3363c142196418f89a510b90",
      "tree": "347d39a7d5a7ed96d3b1afecd28de2a0f98b98c9",
      "parents": [
        "5bb23a688b2de23d7765a1dd439d89c038378978"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Sep 27 12:47:43 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:57 2007 +0200"
      },
      "message": "Drop \u0027size\u0027 argument from bio_endio and bi_end_io\n\nAs bi_end_io is only called once when the reqeust is complete,\nthe \u0027size\u0027 argument is now redundant.  Remove it.\n\nNow there is no need for bio_endio to subtract the size completed\nfrom bi_size.  So don\u0027t do that either.\n\nWhile we are at it, change bi_end_io to return void.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5bb23a688b2de23d7765a1dd439d89c038378978",
      "tree": "15e5e07c28b5aacd19d76ccdd4f7b2b75804d347",
      "parents": [
        "9cc54d40b8ca01fcefc9151044b6996565061d90"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Sep 27 12:46:13 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:57 2007 +0200"
      },
      "message": "Don\u0027t decrement bi_size in bio_endio\n\nThe only caller of bio_endio that does not pass the full bi_size\nis end_that_request_first.  Also, no -\u003ebi_end_io method is really\ninterested in bi_size being decremented.\n\nSo move the decrement and related code into ll_rw_blk and merge it\nwith order_bio_endio to form req_bio_endio which does endio functionality\nspecific to request completion.\n\nAs some -\u003ebi_end_io methods do check bi_size of 0, we set it thus for\nnow, but that will go in the next patch.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\n\n### Diffstat output\n ./block/ll_rw_blk.c |   42 +++++++++++++++++++++++++++---------------\n ./fs/bio.c          |   23 +++++++++++------------\n 2 files changed, 38 insertions(+), 27 deletions(-)\n\ndiff .prev/block/ll_rw_blk.c ./block/ll_rw_blk.c\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9cc54d40b8ca01fcefc9151044b6996565061d90",
      "tree": "a6336d7040dd6e656819257e00d493147c790496",
      "parents": [
        "d24517d793f21edab1a411da95f2c45cb88a84aa"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Sep 27 12:46:12 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:57 2007 +0200"
      },
      "message": "Only call bi_end_io once for any bio\n\nCurrently bi_end_io can be called multiple times as sub-requests\ncomplete.  However no -\u003ebi_end_io function wants to know about that.\nSo only call when the bio is complete.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\n\n### Diffstat output\n ./fs/bio.c |    4 +++-\n 1 file changed, 3 insertions(+), 1 deletion(-)\n\ndiff .prev/fs/bio.c ./fs/bio.c\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "20c2df83d25c6a95affe6157a4c9cac4cf5ffaac",
      "tree": "415c4453d2b17a50abe7a3e515177e1fa337bd67",
      "parents": [
        "64fb98fc40738ae1a98bcea9ca3145b89fb71524"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "message": "mm: Remove slab destructors from kmem_cache_create().\n\nSlab destructors were no longer supported after Christoph\u0027s\nc59def9f222d44bb7e2f0a559f2906191a0862d7 change. They\u0027ve been\nBUGs for both slab and slub, and slob never supported them\neither.\n\nThis rips out support for the dtor pointer from kmem_cache_create()\ncompletely and fixes up every single callsite in the kernel (there were\nabout 224, not including the slab allocator definitions themselves,\nor the documentation references).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "72d3a38ee083a96c09032e608a4c7e047ce26760",
      "tree": "73e1ed4485cf0e09c357cdda82596abf3e25824a",
      "parents": [
        "f3f541f9ded9dd37edca103dd3be49bfbd9e730d"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jul 09 09:40:44 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 10 08:03:34 2007 +0200"
      },
      "message": "unexport bio_{,un}map_user\n\nbio_{,un}map_user no longer have any modular users.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0a31bd5f2bbb6473ef9d24f0063ca91cfa678b64",
      "tree": "a945e829bf6bf7a93bf844b2ee9f2a3a2fa17c5d",
      "parents": [
        "5af60839909b8e3b28ca7cd7912fa0b23475617f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun May 06 14:49:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:55 2007 -0700"
      },
      "message": "KMEM_CACHE(): simplify slab cache creation\n\nThis patch provides a new macro\n\nKMEM_CACHE(\u003cstruct\u003e, \u003cflags\u003e)\n\nto simplify slab creation. KMEM_CACHE creates a slab with the name of the\nstruct, with the size of the struct and with the alignment of the struct.\nAdditional slab flags may be specified if necessary.\n\nExample\n\nstruct test_slab {\n\tint a,b,c;\n\tstruct list_head;\n} __cacheline_aligned_in_smp;\n\ntest_slab_cache \u003d KMEM_CACHE(test_slab, SLAB_PANIC)\n\nwill create a new slab named \"test_slab\" of the size sizeof(struct\ntest_slab) and aligned to the alignment of test slab.  If it fails then we\npanic.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5972511b77809cb7c9ccdb79b825c54921c5c546",
      "tree": "8dec5821badf9750be04f339f0f621fab2114c8a",
      "parents": [
        "b9099ff63c75216d6ca10bce5a1abcd9293c27e6"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Apr 02 10:06:42 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Mon Apr 30 09:08:17 2007 +0200"
      },
      "message": "[BLOCK] Don\u0027t pin lots of memory in mempools\n\nCurrently we scale the mempool sizes depending on memory installed\nin the machine, except for the bio pool itself which sits at a fixed\n256 entry pre-allocation.\n\nThere\u0027s really no point in \"optimizing\" this OOM path, we just need\nenough preallocated to make progress. A single unit is enough, lets\nscale it down to 2 just to be on the safe side.\n\nThis patch saves ~150kb of pinned kernel memory on a 32-bit box.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e61c90188b9956edae1105eef361d8981a352fcd",
      "tree": "7de9cc41910c55e32aba0f8cc07f73923b7cb515",
      "parents": [
        "7e913c53609d5e8374f55d6f29c0bcd6650a2362"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Wed Dec 13 00:34:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:50 2006 -0800"
      },
      "message": "[PATCH] optimize o_direct on block devices\n\nImplement block device specific .direct_IO method instead of going through\ngeneric direct_io_worker for block device.\n\ndirect_io_worker() is fairly complex because it needs to handle O_DIRECT on\nfile system, where it needs to perform block allocation, hole detection,\nextents file on write, and tons of other corner cases.  The end result is\nthat it takes tons of CPU time to submit an I/O.\n\nFor block device, the block allocation is much simpler and a tight triple\nloop can be written to iterate each iovec and each page within the iovec in\norder to construct/prepare bio structure and then subsequently submit it to\nthe block layer.  This significantly speeds up O_D on block device.\n\n[akpm@osdl.org: small speedup]\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\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": "4c1ac1b49122b805adfa4efc620592f68dccf5db",
      "tree": "87557f4bc2fd4fe65b7570489c2f610c45c0adcd",
      "parents": [
        "c4028958b6ecad064b1a6303a6a5906d4fe48d73",
        "d916faace3efc0bf19fe9a615a1ab8fa1a24cd93"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 05 14:37:56 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Tue Dec 05 14:37:56 2006 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/infiniband/core/iwcm.c\n\tdrivers/net/chelsio/cxgb2.c\n\tdrivers/net/wireless/bcm43xx/bcm43xx_main.c\n\tdrivers/net/wireless/prism54/islpci_eth.c\n\tdrivers/usb/core/hub.h\n\tdrivers/usb/input/hid-core.c\n\tnet/core/netpoll.c\n\nFix up merge failures with Linus\u0027s head and fix new compilation failures.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "0e75f9063f5c55fb0b0b546a7c356f8ec186825e",
      "tree": "db138f641175403546c2147def4b405f3ff453a8",
      "parents": [
        "ad2d7225709b11da47e092634cbdf0591829ae9c"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Fri Dec 01 10:40:55 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 01 10:40:55 2006 +0100"
      },
      "message": "[PATCH] block: support larger block pc requests\n\nThis patch modifies blk_rq_map/unmap_user() and the cdrom and scsi_ioctl.c\nusers so that it supports requests larger than bio by chaining them together.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ad2d7225709b11da47e092634cbdf0591829ae9c",
      "tree": "5427bbb60456d8219dcc78b2d72820a99a604b90",
      "parents": [
        "be1c63411addba3ad750eb4fdfc50b97bc82825e"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Fri Dec 01 10:40:20 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Dec 01 10:40:20 2006 +0100"
      },
      "message": "[PATCH] block: kill length alignment test in bio_map_user()\n\nThe target mode support is mapping in bios using bio_map_user. The\ncurrent targets do not need their len to be aligned with a queue limit\nso this check is causing some problems. Note: pointers passed into the\nkernel are properly aligned by usersapace tgt code so the uaddr check\nin bio_map_user is ok.\n\nThe major user, blk_bio_map_user checks for the len before mapping\nso it is not affected by this patch.\n\nAnd the semi-newly added user blk_rq_map_user_iov has been failing\nout when the len is not aligned properly so maybe people have been\ngood and not sending misaligned lens or that path is not used very\noften and this change will not be very dangerous. st and sg do not\ncheck the length and we have not seen any problem reports from those\nwider used paths so this patch should be fairly safe - for mm\nand wider testing at least.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "65f27f38446e1976cc98fd3004b110fedcddd189",
      "tree": "68f8be93feae31dfa018c22db392a05546b63ee1",
      "parents": [
        "365970a1ea76d81cb1ad2f652acb605f06dae256"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:55:48 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:55:48 2006 +0000"
      },
      "message": "WorkStruct: Pass the work_struct pointer instead of context data\n\nPass the work_struct pointer to the work function rather than context data.\nThe work function can use container_of() to work out the data.\n\nFor the cases where the container of the work_struct may go away the moment the\npending bit is cleared, it is made possible to defer the release of the\nstructure by deferring the clearing of the pending bit.\n\nTo make this work, an extra flag is introduced into the management side of the\nwork_struct.  This governs auto-release of the structure upon execution.\n\nOrdinarily, the work queue executor would release the work_struct for further\nscheduling or deallocation by clearing the pending bit prior to jumping to the\nwork function.  This means that, unless the driver makes some guarantee itself\nthat the work_struct won\u0027t go away, the work function may not access anything\nelse in the work_struct or its container lest they be deallocated..  This is a\nproblem if the auxiliary data is taken away (as done by the last patch).\n\nHowever, if the pending bit is *not* cleared before jumping to the work\nfunction, then the work function *may* access the work_struct and its container\nwith no problems.  But then the work function must itself release the\nwork_struct by calling work_release().\n\nIn most cases, automatic release is fine, so this is the default.  Special\ninitiators exist for the non-auto-release case (ending in _NAR).\n\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "bf02c082bf7a464518d45b9c178b8aa83f74dd5d",
      "tree": "8c0aafa48ec5e2298d76d58baf67bd59a5fa95ae",
      "parents": [
        "49a6cbe1cd8a72451d9d6ab5b1e163f17c1bbee3"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Wed Oct 11 01:22:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 11 11:14:25 2006 -0700"
      },
      "message": "[PATCH] fs/bio.c: tweaks\n\n- Calculate a variable in bvec_alloc_bs() only once needed, not earlier\n  (bio.o down from 18408 to 18376 Bytes, 32 Bytes saved, probably due to\n  data locality improvements).\n\n- Init variable idx to silence a gcc warning which already existed in the\n  unmodified original base file (bvec_alloc_bs() handles idx correctly, so\n  there\u0027s no need for the warning):\n\n\tfs/bio.c: In function `bio_alloc_bioset\u0027:\n\tfs/bio.c:169: warning: `idx\u0027 may be used uninitialized in this function\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nAcked-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0fe23479577124bd2687e6783e39fa0fa4c28005",
      "tree": "954ae8c079fd10cd52bf212ca5cd2530ec5c2315",
      "parents": [
        "50be345560f1ffdcb15cc0e146416b80529a2ef2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Mon Sep 04 15:41:16 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:34 2006 +0200"
      },
      "message": "[PATCH] Update axboe@suse.de email address\n\nAs people often look for the copyright in files to see who to mail,\nupdate the link to a neutral one.\n\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "50be345560f1ffdcb15cc0e146416b80529a2ef2",
      "tree": "056278d82ea7fcbd26d9cc95c806d3978bbbb56e",
      "parents": [
        "bcfd8d36151e531e1c6c731f1fbf792509a1c494"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Mon Sep 04 15:37:57 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:52:33 2006 +0200"
      },
      "message": "[PATCH] fix creating zero sized bio mempools in low memory system\n\nIn the very low memory systems is in the init_bio call\nscale parameter set to zero and it leads to creating\nzero sized mempool.\n\nThis patch prevents pool_entries parameter become zero,\nso the created pool have at least 1 entry.\n\nMempool with 0 entries lead to incorrect behaviour\nof mempool_free. (Alloc requests are not waken up\nand system stalls in mempool_alloc-\u003eioschedule).\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "991721572ef2140c6411894aebefd3377e71a9e7",
      "tree": "8264f83a60517616b860c0bce7d0e0413eb5c2cb",
      "parents": [
        "16070428d389ff47aa3476b0911179ad90c640a2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jun 16 13:02:29 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 17 10:52:12 2006 -0700"
      },
      "message": "[PATCH] Fix missing ret assignment in __bio_map_user() error path\n\nIf get_user_pages() returns less pages than what we asked for, we jump\nto out_unmap which will return ERR_PTR(ret).  But ret can contain a\npositive number just smaller than local_nr_pages, so be sure to set it\nto -EFAULT always.\n\nProblem found and diagnosed by Damien Le Moal \u003cdamien@sdl.hitachi.co.jp\u003e\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a2eb0c101d24aca9d3d16c30c4f79f3a70c89208",
      "tree": "c74aaec429deb174440e76d9b73985abb9604c50",
      "parents": [
        "5c4c33318d26620fa552f15bbb6d0f9775a1b4df"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Mon May 22 22:35:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue May 23 10:35:31 2006 -0700"
      },
      "message": "[PATCH] md: Make sure bi_max_vecs is set properly in bio_split\n\nElse a subsequent bio_clone might make a mess.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"Don Dupuis\" \u003cdondster@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": "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": "0eaae62abaa1ad1f231932b6cdd9fb1b91df6651",
      "tree": "cda02cffff075a8b542ddcea4fa0ff0064130502",
      "parents": [
        "53184082b070dfb077218828fdf839826102ed96"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:59 2006 -0800"
      },
      "message": "[PATCH] mempool: use common mempool kmalloc allocator\n\nThis patch changes several mempool users, all of which are basically just\nwrappers around kmalloc(), to use the common mempool_kmalloc/kfree, rather\nthan their own wrapper function, removing a bunch of duplicated code.\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": "fa3536cc144c1298f2ed9416c33f3b77fa2cd37a",
      "tree": "5484541319b86ae7dac0def4db7925f7cc7008e7",
      "parents": [
        "878a9f30d7b13015f3aa4534d7877d985f150183"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sun Mar 26 01:37:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:56 2006 -0800"
      },
      "message": "[PATCH] Use __read_mostly on some hot fs variables\n\nI discovered on oprofile hunting on a SMP platform that dentry lookups were\nslowed down because d_hash_mask, d_hash_shift and dentry_hashtable were in\na cache line that contained inodes_stat.  So each time inodes_stats is\nchanged by a cpu, other cpus have to refill their cache line.\n\nThis patch moves some variables to the __read_mostly section, in order to\navoid false sharing.  RCU dentry lookups can go full speed.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "11b0b5abb2097a63c1081d9b7e825b987b227972",
      "tree": "162c828c8d807a1b30869acbe11682dc9222dc16",
      "parents": [
        "656bde5728b824ca23fcab8bc5800b309ea48d64"
      ],
      "author": {
        "name": "Oliver Neukum",
        "email": "neukum@fachschaft.cup.uni-muenchen.de",
        "time": "Sat Mar 25 03:08:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:00 2006 -0800"
      },
      "message": "[PATCH] use kzalloc and kcalloc in core fs code\n\nSigned-off-by: Oliver Neukum \u003coliver@neukum.name\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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": "b0e6e962992b76580f4900b166a337bad7c1e81b",
      "tree": "0caae9380c729a437e89acd5d5817a285156e26e",
      "parents": [
        "b73b459f72f746a031d1ef4cc7659b20a1f1acb9"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Thu Mar 23 03:01:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:18 2006 -0800"
      },
      "message": "[PATCH] reduce size of bio mempools\n\nThe biovec default mempool limit of 256 entries results in over 3MB of RAM\nbeing permanently pinned, even on systems with only 128MB of RAM.  Since\nmempool tries to allocate from the system pool first, it makes sense to\nreduce the size of the mempool fallbacks to a more reasonable limit of 1-5\nentries -- enough for the system to be able to make progress even under\nload.\n\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Matt Mackall \u003cmpm@selenic.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"
    }
  ],
  "next": "858119e159384308a5dde67776691a2ebf70df0f"
}
