)]}'
{
  "log": [
    {
      "commit": "4fb72f7646e86874eb2798256eaa6bf3fbe4edcf",
      "tree": "0c32819099dd65494010514ecea4e2c39b372315",
      "parents": [
        "63de428b139d3d31d86ebe25ae97b33f6540fb7e"
      ],
      "author": {
        "name": "Aaron Carroll",
        "email": "aaronc@gelato.unsw.edu.au",
        "time": "Thu Aug 14 18:17:14 2008 +1000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:03 2008 +0200"
      },
      "message": "deadline-iosched: non-functional fixes\n\n* convert goto to simpler while loop;\n * use rq_end_sector() instead of computing manually;\n * fix false comments;\n * remove spurious whitespace;\n * convert rq_rb_root macro to an inline function.\n\nSigned-off-by: Aaron Carroll \u003caaronc@gelato.unsw.edu.au\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "63de428b139d3d31d86ebe25ae97b33f6540fb7e",
      "tree": "def85c8e9990293effe71baf3b0dce648eab516c",
      "parents": [
        "766ca4428d1239a970926856c447310c9c191af2"
      ],
      "author": {
        "name": "Aaron Carroll",
        "email": "aaronc@gelato.unsw.edu.au",
        "time": "Thu Aug 14 18:17:13 2008 +1000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:02 2008 +0200"
      },
      "message": "deadline-iosched: allow non-sequential batching\n\nDeadline currently only batches sector-contiguous requests, so except\nfor a few circumstances (e.g. requests in a single direction), it is\nessentially first come first served.  This is bad for throughput, so\nchange it to CSCAN, which means requests in a batch do not need to be\nsequential and are issued in increasing sector order.\n\nSigned-off-by: Aaron Carroll \u003caaronc@gelato.unsw.edu.au\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e17fc0a1ccf88f6d4dcb363729f3141b0958c325",
      "tree": "0a7c2dc1c3159c2af14d87c67ca83e158b2c78b5",
      "parents": [
        "d30a2605be9d5132d95944916e8f578fcfe4f976"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sat Aug 09 16:42:20 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:02 2008 +0200"
      },
      "message": "Allow elevators to sort/merge discard requests\n\nBut blkdev_issue_discard() still emits requests which are interpreted as\nsoft barriers, because naïve callers might otherwise issue subsequent\nwrites to those same sectors, which might cross on the queue (if they\u0027re\nreallocated quickly enough).\n\nCallers still _can_ issue non-barrier discard requests, but they have to\ntake care of queue ordering for themselves.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d30a2605be9d5132d95944916e8f578fcfe4f976",
      "tree": "91a8161cb09536ab838ef47fceabb0da0bea9256",
      "parents": [
        "2ebca85abcfcbaaf1c0b242e39fc88ad3da90090"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Aug 11 15:58:42 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:02 2008 +0200"
      },
      "message": "Add BLKDISCARD ioctl to allow userspace to discard sectors\n\nWe may well want mkfs tools to use this to mark the whole device as\nunwanted before they format it, for example.\n\nThe ioctl takes a pair of uint64_ts, which are start offset and length\nin _bytes_. Although at the moment it might make sense for them both to\nbe in 512-byte sectors, I don\u0027t want to limit the ABI to that.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2ebca85abcfcbaaf1c0b242e39fc88ad3da90090",
      "tree": "a8fc6fbc0ba4a258b8252625158e1e30dd255fd5",
      "parents": [
        "35ba8f7083e87602b695d6eaca38a6464d5b74db"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Mon Aug 11 17:07:08 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:02 2008 +0200"
      },
      "message": "Use WRITE_BARRIER in blkdev_issue_flush(), not (1\u003c\u003cBIO_RW_BARRIER)\n\nBarriers should be submitted with the WRITE flag set.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "35ba8f7083e87602b695d6eaca38a6464d5b74db",
      "tree": "dd9e515480ec307cf12378f13b01c7922cf3266c",
      "parents": [
        "27b29e86bf3d4b3cf6641a0efd78ed11a9b633b2"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 10 12:33:00 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:01 2008 +0200"
      },
      "message": "blktrace: simplify flags handling in __blk_add_trace\n\nLet the compiler see what\u0027s going on, and it can all get a lot simpler.\nOn PPC64 this reduces the size of the code calculating these bits by\nabout 60%. On x86_64 it\u0027s less of a win -- only 40%.\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "27b29e86bf3d4b3cf6641a0efd78ed11a9b633b2",
      "tree": "0cfa20e8f07ee9d57e43a5371b4d97eeb8202081",
      "parents": [
        "fdc53971bce56d299cb5f1f06ecbff30b34cbaf2"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sun Aug 10 11:21:57 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:01 2008 +0200"
      },
      "message": "blktrace: support discard requests\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "fb2dce862d9f9a68e6b9374579056ec9eca02a63",
      "tree": "888e0fd7248c9329fa1aa3981043a2dc2457d488",
      "parents": [
        "d628eaef310533767ce68664873869c2d7f78f09"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Tue Aug 05 18:01:53 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:01 2008 +0200"
      },
      "message": "Add \u0027discard\u0027 request handling\n\nSome block devices benefit from a hint that they can forget the contents\nof certain sectors. Add basic support for this to the block core, along\nwith a \u0027blkdev_issue_discard()\u0027 helper function which issues such\nrequests.\n\nThe caller doesn\u0027t get to provide an end_io functio, since\nblkdev_issue_discard() will automatically split the request up into\nmultiple bios if appropriate. Neither does the function wait for\ncompletion -- it\u0027s expected that callers won\u0027t care about when, or even\n_if_, the request completes. It\u0027s only a hint to the device anyway. By\ndefinition, the file system doesn\u0027t _care_ about these sectors any more.\n\n[With feedback from OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e and\nJens Axboe \u003cjens.axboe@oracle.com]\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d628eaef310533767ce68664873869c2d7f78f09",
      "tree": "12d6a9e6db000d89deb7ab01d55d2e7b9e6f42c5",
      "parents": [
        "36144077bce9f89763ce994bc631cbd1c9db7785"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Sat Aug 09 16:22:17 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:01 2008 +0200"
      },
      "message": "Fix up comments about matching flags between bio and rq\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "051cc3952a8fb6fa875a4eff68d06cf42207dcf4",
      "tree": "349871365796b43dedf10b5305d3dda98a05f57d",
      "parents": [
        "a9c701e594669dd49fed448c27c64f20cfacc8a7"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 08 11:06:45 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:00 2008 +0200"
      },
      "message": "block: use bio_has_data() in the IO completion path\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a9c701e594669dd49fed448c27c64f20cfacc8a7",
      "tree": "f5524a3612ccbfa758a2b9808111297d7ba17698",
      "parents": [
        "7a67f63b3233ff28e753854fe27891c44f8588ae"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 08 11:04:44 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:00 2008 +0200"
      },
      "message": "block: use bio_has_data() to check for data carrying bio\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "35e396cd100489dfe8f5a76e3613fb8049ffdff3",
      "tree": "fa300923172de62123a42bbb0d94104ca65cbb78",
      "parents": [
        "69849375d6b13e94d08cdc94b49b11fbab454a0e"
      ],
      "author": {
        "name": "xiphmont@xiph.org",
        "email": "xiphmont@xiph.org",
        "time": "Fri Aug 22 11:12:21 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:00 2008 +0200"
      },
      "message": "SG_IO block filter whitelist missing MMC SET READ AHEAD command\n\nI have another request for the block filter SG_IO command whitelist,\nspecifically the MMC streaming command set SET READ AHEAD command.\nThe command applies only to MMC CDROM/DVDROM drives with the streaming\noptional feature set.  The command is useful to cdparanoia in that it\nallows explicit cache control side effects that are, on many drives,\ncdparanoia\u0027s most efficient way to flush/disable the media cache on\ncdrom drives. I am aware of no reason why it should not be accessible\nfrom usespace.\n\nAlso note that the command is already fully accessible through the\nSCSI-native version of the SG_IO ioctl as well as the traditional SG\ninterface.  The command is only being refused on block devices.  That\nmeans that on a typical stock distro, the command is available through\n/dev/sg* but not /dev/scd* although both are typically available and\naccessible.  Filtering the command is not providing any protection,\nonly a confusing inconsistency.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2dc75d3c3b49c64fd26b4832a7efb75546cb3fc5",
      "tree": "908ae81851ca06d46a680d8e6c33afdfb292c131",
      "parents": [
        "adee14b2e1557d0a8559f29681732d05a89dfc35"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Sep 11 14:20:23 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Sep 11 14:20:23 2008 +0200"
      },
      "message": "block: disable sysfs parts of the disk command filter\n\nWe still have life time issues with the sysfs command filter kobject,\nso disable it for 2.6.27 release. We can revisit this and make it work\nproperly for 2.6.28, for 2.6.27 release it\u0027s too risky.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ddef43a843f620c6742a06633739887a901ec06b",
      "tree": "25eec6c04abf5c7ec3cb9aba2338d249844ffb61",
      "parents": [
        "bb23b431db7405f6d79f989ad0236bf6428ba1cb"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Sep 01 08:55:10 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Sep 01 08:55:10 2008 +0200"
      },
      "message": "block: restore original behavior of /proc/partition when there\u0027s no partition\n\n/proc/partitions didn\u0027t use to write out the header if there was no\npartition.  However, recent commit 66c64afe changed the behavior.\nThis is nothing major but there\u0027s no reason to change user visible\nbehavior without a good rationale.  Restore the original behavior.\n\nNote that 2.6.28 has clean up changes scheduled which will replace\nthis rather hacky implementation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bb23b431db7405f6d79f989ad0236bf6428ba1cb",
      "tree": "481c179e97bf72b206e51ef594c7bb3fb32af72f",
      "parents": [
        "24342c34a022ee90839873d91396045e12ef1090"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Aug 29 11:47:07 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 29 11:47:07 2008 +0200"
      },
      "message": "remove blk_register_filter and blk_unregister_filter in gendisk\n\nThis patch remove blk_register_filter and blk_unregister_filter in\ngendisk, and adds them to sd.c, sr.c. and ide-cd.c\n\nThe commit abf5439370491dd6fbb4fe1a7939680d2a9bc9d4 moved cmdfilter\nfrom gendisk to request_queue. It turned out that in some subsystems\nmultiple gendisks share a single request_queue. So we get:\n\nUsing physmap partition information\nCreating 3 MTD partitions on \"physmap-flash\":\n0x00000000-0x01c00000 : \"User FS\"\n0x01c00000-0x01c40000 : \"booter\"\nkobject (8511c410): tried to init an initialized object, something is seriously wrong.\nCall Trace:\n[\u003c8036644c\u003e] dump_stack+0x8/0x34\n[\u003c8021f050\u003e] kobject_init+0x50/0xcc\n[\u003c8021fa18\u003e] kobject_init_and_add+0x24/0x58\n[\u003c8021d20c\u003e] blk_register_filter+0x4c/0x64\n[\u003c8021c194\u003e] add_disk+0x78/0xe0\n[\u003c8027d14c\u003e] add_mtd_blktrans_dev+0x254/0x278\n[\u003c8027c8f0\u003e] blktrans_notify_add+0x40/0x78\n[\u003c80279c00\u003e] add_mtd_device+0xd0/0x150\n[\u003c8027b090\u003e] add_mtd_partitions+0x568/0x5d8\n[\u003c80285458\u003e] physmap_flash_probe+0x2ac/0x334\n[\u003c802644f8\u003e] driver_probe_device+0x12c/0x244\n[\u003c8026465c\u003e] __driver_attach+0x4c/0x84\n[\u003c80263c64\u003e] bus_for_each_dev+0x58/0xac\n[\u003c802633ec\u003e] bus_add_driver+0xc4/0x24c\n[\u003c802648e0\u003e] driver_register+0xcc/0x184\n[\u003c80100460\u003e] _stext+0x60/0x1bc\n\nIn the long term, we need to fix such subsystems but we need a quick\nfix now. This patch add the command filter support to only sd and sr\nthough it might be useful for other SG_IO users (such as cciss).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReported-by: Manuel Lauss \u003cmano@roarinelk.homelinux.net\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0e3eb45e4fe901d92bf9eae103155a57517af32e",
      "tree": "c46a1a27043c644386f68ddabf6d4322ec6b342b",
      "parents": [
        "aefcc28a3a63ac33a298777aa50ba43641c75241"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Aug 26 09:02:28 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "block: remove unused -\u003ebusy part of the block queue tag map\n\nIt\u0027s not used for anything. On top of that, it\u0027s racy and can thus\ntrigger a faulty BUG_ON() in __blk_free_tags() on queue exit.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a4a778971b9cfcbedb8648ba502d801f7db04c47",
      "tree": "f8e66d6a6a53f0b277009763e703da1b0f9fc58b",
      "parents": [
        "4beab5c623fef4622f9a8593f85760ff10b5a3f7"
      ],
      "author": {
        "name": "Adel Gadllah",
        "email": "adel.gadllah@gmail.com",
        "time": "Sat Aug 16 14:21:06 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "block: clean up cmdfilter sysfs interface\n\nThis patch changes the interface of the cmd filter to use a +/-\nnotation like:\n\necho -- +0x02 +0x03 -0x08\n\nIf neither + or - is given it defaults to + (allow command).\n\nNote: The interface was added in 2.6.17-rc1 and is unused and\nundocumented so far so it\u0027s safe to change it.\n\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nReviewed-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: jens.axboe@oracle.com\nCc: James.Bottomley@hansenpartnership.com\nCc: dan.j.williams@intel.com\nCc: pjones@redhat.com\nCc: viro@zeniv.linux.org.uk\nCc: dougg@torque.net\nSigned-off-by: Adel Gadllah \u003cadel.gadllah@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4beab5c623fef4622f9a8593f85760ff10b5a3f7",
      "tree": "630ad8965703e3ea8296945f4db10c80a348d2b4",
      "parents": [
        "14e507b852e7dcea142b98757181bfa785cb4c05"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Sat Jul 26 18:03:25 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "block: rename blk_scsi_cmd_filter to blk_cmd_filter\n\nTechnically, the cmd_filter would be applied to other protocols though\nit\u0027s unlikely to happen. Putting SCSI stuff to request_queue is kinda\nlayer violation. So let\u0027s rename it.\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": "abf5439370491dd6fbb4fe1a7939680d2a9bc9d4",
      "tree": "aa3630557fe4a4bc6313617f5770af30eec68515",
      "parents": [
        "1941246dd98089dd637f44d3bd4f6cc1c61aa9e4"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Sat Aug 16 14:10:05 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 27 09:50:19 2008 +0200"
      },
      "message": "block: move cmdfilter from gendisk to request_queue\n\ncmd_filter works only for the block layer SG_IO with SCSI block\ndevices. It breaks scsi/sg.c, bsg, and the block layer SG_IO with SCSI\ncharacter devices (such as st). We hit a kernel crash with them.\n\nThe problem is that cmd_filter code accesses to gendisk (having struct\nblk_scsi_cmd_filter) via inode-\u003ei_bdev-\u003ebd_disk. It works for only\nSCSI block device files. With character device files, inode-\u003ei_bdev\nleads you to struct cdev. inode-\u003ei_bdev-\u003ebd_disk-\u003eblk_scsi_cmd_filter\nisn\u0027t safe.\n\nSCSI ULDs don\u0027t expose gendisk; they keep it private. bsg needs to be\nindependent on any protocols. We shouldn\u0027t change ULDs to expose their\ngendisk.\n\nThis patch moves struct blk_scsi_cmd_filter from gendisk to\nrequest_queue, a common object, which eveyone can access to.\n\nThe user interface doesn\u0027t change; users can change the filters via\n/sys/block/. gendisk has a pointer to request_queue so the cmd_filter\ncode accesses to struct blk_scsi_cmd_filter.\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": "5c0ef6d0214a08e5c846f4c45228adf135d8d0ef",
      "tree": "f4c5d5991365e19780e3638eb2128c8ebd771e99",
      "parents": [
        "068281d302def5efd96d84a163ba17e85f5ea564"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sat Aug 16 14:30:30 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 21 10:15:38 2008 -0700"
      },
      "message": "block: drop references taken by class_find_device()\n\nOtherwise we leak references, which is not a good thing to do.\n\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "068281d302def5efd96d84a163ba17e85f5ea564",
      "tree": "f8d49d6c1e2043bcf3671504b411770a0c8c349c",
      "parents": [
        "f5a6d958b5d0a10e7e7a9dee1862fb31d08c6d26"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Sat Aug 16 14:30:30 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 21 10:15:38 2008 -0700"
      },
      "message": "block: fix partial read() of /proc/{partitions,diskstats}\n\nThe proc files get truncated if they do not fit into the buffer with\na single read(). We need to move the seq_file index from the callback\nof class_find_device() to the caller of class_find_device(), to keep\nits value across multiple invocations of the callback.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f1b134fdf6d36c975b4a66cf952565cd73aebdba",
      "tree": "f7524266c501c9196106cd14222ab5e8c4f3004f",
      "parents": [
        "7274264f60cc0b71389efed286001ff0860c3141",
        "e8bac9e0647dd04c83fd0bfe7cdfe2f6dfb100d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:19:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 17:19:18 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:\n  [SCSI] scsi_transport_spi: fix oops in revalidate\n  [SCSI] ses: fix VPD inquiry overrun\n  [SCSI] block: Fix miscalculation of sg_io timeout in CDROM_SEND_PACKET handler.\n  [SCSI] hptiop: add more PCI device IDs\n"
    },
    {
      "commit": "6c5e0c4d518a37e1d5d794c14433e80284415079",
      "tree": "26208a4fe4115a37c000a13d50df8c1a5e393553",
      "parents": [
        "94ad374a0751f40d25e22e036c37f7263569d24c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 01 20:31:32 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 01 20:31:32 2008 +0200"
      },
      "message": "block: add a blk_plug_device_unlocked() that grabs the queue lock\n\nblk_plug_device() must be called with the queue lock held, so callers\noften just grab and release the lock for that purpose. Add a helper\nthat does just that.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ad337591f4fd20de6a0ca03d6715267a5c1d2b16",
      "tree": "7531029530372539d5f9c75543932246a1757089",
      "parents": [
        "dd07428b44944b42f699408fe31af47977f1e733"
      ],
      "author": {
        "name": "Tim Wright",
        "email": "timw@splhi.com",
        "time": "Sun Jul 27 17:50:38 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Wed Jul 30 10:18:29 2008 -0500"
      },
      "message": "[SCSI] block: Fix miscalculation of sg_io timeout in CDROM_SEND_PACKET handler.\n\nIt seems cdrwtool in the udftools has been unusable on \"modern\" kernels\nfor some time. A Google search reveals many people with the same issue\nbut no solution (cdrwtool fails to format the disk). After spending some\ntime tracking down the issue, it comes down to the following:\n\nThe udftools still use the older CDROM_SEND_PACKET interface to send\nthings like FORMAT_UNIT through to the drive. They should really be\nupdated, but that\u0027s another story. Since most distros are using libata\nnow, the cd or dvd burner appears as a SCSI device, and we wind up in\nblock/scsi_ioctl.c. Here, the code tries to take the \"struct\ncdrom_generic_command\" and translate it and stuff it into a \"struct\nsg_io_hdr\" structure so it can pass it to the modern sg_io() routine\ninstead. Unfortunately, there is one error, or rather an omission in the\ntranslation. The timeout that is passed in in the \"struct\ncdrom_generic_command\" is in HZ\u003d100 units, and this is modified and\ncorrectly converted to jiffies by use of clock_t_to_jiffies(). However,\na little further down, this cgc.timeout value in jiffies is simply\ncopied into the sg_io_hdr timeout, which should be in milliseconds.\nSince most modern x86 kernels seems to be getting build with HZ\u003d250, the\ntimeout that is passed to sg_io and eventually converted to the\ntimeout_per_command member of the scsi_cmnd structure is now four times\ntoo small. Since cdrwtool tries to set the timeout to one hour for the\nFORMAT_UNIT command, and it takes about 20 minutes to format a 4x CDRW,\nthe SCSI error-handler kicks in after the FORMAT_UNIT completes because\nit took longer than the incorrectly-calculated timeout.\n\n[jejb: fix up whitespace]\nSigned-off-by: Tim Wright \u003ctimw@splhi.com\u003e\nCc: Stable Tree \u003cstable@kernel.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "12e0036818eed243c8ed6583ebf98261a2554e12",
      "tree": "2f60ad7d1c869a995faa5b73150b409705d0e8b2",
      "parents": [
        "261c40c1191ad8d7a2e49fa2bb5f6a84e3d44b10"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Jul 25 19:45:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:07 2008 -0700"
      },
      "message": "Use WARN() in block/\n\nUse WARN() instead of a printk+WARN_ON() pair; this way the message\nbecomes part of the warning section for better reporting/collection.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a76eef9573c93f8f324ebacfd090a3e319a64d59",
      "tree": "078510944393a9f658550476160cdc856dd102a1",
      "parents": [
        "a2e2e3577c3ef2b5dbb866e97e612aae4adfa32f"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 25 19:44:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:02 2008 -0700"
      },
      "message": "block/blk-map.c: use the new object_is_on_stack() helper\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04ebd4aee52b06a2c38127d9208546e5b96f3a19",
      "tree": "25014f06e7bf53ec0b51d717a6a8d0cfb545d985",
      "parents": [
        "d805dda412346225a50af2d399d958a4bc676c38"
      ],
      "author": {
        "name": "Abdel Benamrouche",
        "email": "draconux@gmail.com",
        "time": "Fri Jul 25 01:48:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:44 2008 -0700"
      },
      "message": "block/ioctl.c and fs/partition/check.c: check value returned by add_partition()\n\nNow that add_partition() has been aught to propagate errors, let\u0027s check them.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Abdel Benamrouche \u003cdraconux@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27f302519148f311307637d4c9a6d0fd87d07e4c",
      "tree": "36693a6ec709b037730bb343e72bd8cc508999dc",
      "parents": [
        "66c64afec16a7b46212ecb2fa99998923bbeea3f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 22 17:21:08 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:49 2008 -0700"
      },
      "message": "block: make /proc/partitions and /proc/diskstats use class_find_device()\n\nUse the proper class iterator function instead of mucking around in the\ninternals of the class structures.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "66c64afec16a7b46212ecb2fa99998923bbeea3f",
      "tree": "732d5a400af672568ddceea738d6c509f1f3a0be",
      "parents": [
        "68c4d4a7875c59f2e4b72901ab11ba978e75bde0"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 22 17:21:08 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:49 2008 -0700"
      },
      "message": "block: move header for /proc/partitions to seq_start\n\nThe seq_start call is the better place for the header for the file, that\nway we don\u0027t have to be mucking in the class structure to try to figure\nout if this is the first partition or not.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "68c4d4a7875c59f2e4b72901ab11ba978e75bde0",
      "tree": "92c8024e282b4e5a18b156998c2efa3bc1783e32",
      "parents": [
        "a6e2ba88774bc5870ab3d9664cb86d70415f7402"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 22 17:21:08 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:49 2008 -0700"
      },
      "message": "block: make proc files seq_start use the class_find_device()\n\nUse the proper class iterator function instead of mucking around in the\ninternals of the class structures.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a6e2ba88774bc5870ab3d9664cb86d70415f7402",
      "tree": "6b2cd66449339a7eadb7edb3e6b211dddaf42a5a",
      "parents": [
        "a142be856f060ae8106512c0e81a8d6f8746ab0b"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri May 23 09:44:11 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:49 2008 -0700"
      },
      "message": "block: make /proc/diskstats only build if CONFIG_PROC_FS is enabled\n\nThese functions are only needed if CONFIG_PROC_FS is enabled, so save\nthe space when it is not.\n\nThis also makes it easier for a patch later in this series to work\nproperly if CONFIG_PROC_FS is not enabled.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a142be856f060ae8106512c0e81a8d6f8746ab0b",
      "tree": "4a90f897816a5b506bf1cced5413bb4a4326a67d",
      "parents": [
        "5c6f35c5ece8f130cd8ec9ba0d71dc146b46a0f1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 22 17:21:08 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:48 2008 -0700"
      },
      "message": "block: make blk_lookup_devt use the class iterator function\n\nUse the proper class iterator function instead of mucking around in the\ninternals of the class structures.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "5c6f35c5ece8f130cd8ec9ba0d71dc146b46a0f1",
      "tree": "f1e109f09aff9ecfb57b25bc14e5a07e91a2286a",
      "parents": [
        "6ffeea77ff014f1456fcd0564eac84b34e9535ca"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 22 17:21:08 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:48 2008 -0700"
      },
      "message": "block: make printk_partition use the class iterator function\n\nUse the proper class iterator function instead of mucking around in the\ninternals of the class structures.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "6ffeea77ff014f1456fcd0564eac84b34e9535ca",
      "tree": "250c2ed78d430db765a73f0432ea7fb5a55dc4cf",
      "parents": [
        "695794ae0c5bdd9bd06e35b118801e2e9be04f9e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu May 22 17:21:08 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:48 2008 -0700"
      },
      "message": "block: fix compiler warning in genhd.c\n\nWarn if something really bad happens if we can\u0027t create this link.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f79f060561d04a38d41e773ade9baafce3c96179",
      "tree": "42c8510983db05ba8a68626732940cfa73d6b60f",
      "parents": [
        "09857e35cdccf2457bb03c6d7595adc210a517cc"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed May 21 12:52:33 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:41 2008 -0700"
      },
      "message": "device create: block: convert device_create to device_create_drvdata\n\ndevice_create() is race-prone, so use the race-free\ndevice_create_drvdata() instead as device_create() is going away.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e105b8bfc769b0545b6f0f395179d1e43cbee822",
      "tree": "23a1f0839547829c4ca6e89cd40adf285eb9feb6",
      "parents": [
        "93ded9b8fd42abe2c3607097963d8de6ad9117eb"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Apr 21 10:51:07 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:40 2008 -0700"
      },
      "message": "sysfs: add /sys/dev/{char,block} to lookup sysfs path by major:minor\n\nWhy?:\nThere are occasions where userspace would like to access sysfs\nattributes for a device but it may not know how sysfs has named the\ndevice or the path.  For example what is the sysfs path for\n/dev/disk/by-id/ata-ST3160827AS_5MT004CK?  With this change a call to\nstat(2) returns the major:minor then userspace can see that\n/sys/dev/block/8:32 links to /sys/block/sdc.\n\nWhat are the alternatives?:\n1/ Add an ioctl to return the path: Doable, but sysfs is meant to reduce\n   the need to proliferate ioctl interfaces into the kernel, so this\n   seems counter productive.\n\n2/ Use udev to create these symlinks: Also doable, but it adds a\n   udev dependency to utilities that might be running in a limited\n   environment like an initramfs.\n\n3/ Do a full-tree search of sysfs.\n\n[kay.sievers@vrfy.org: fix duplicate registrations]\n[kay.sievers@vrfy.org: cleanup suggestions]\n\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nReviewed-by: SL Baur \u003csteve@xemacs.org\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nAcked-by: Mark Lord \u003clkml@rtr.ca\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "89a93f2f4834f8c126e8d9dd6b368d0b9e21ec3d",
      "tree": "e731456fec0cab1225ad3e806dc8d3efefa0a78b",
      "parents": [
        "260eddf4391f162a69d1d163729249635fa7a78f",
        "fe9233fb6914a0eb20166c967e3020f7f0fba2c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (102 commits)\n  [SCSI] scsi_dh: fix kconfig related build errors\n  [SCSI] sym53c8xx: Fix bogus sym_que_entry re-implementation of container_of\n  [SCSI] scsi_cmnd.h: remove double inclusion of linux/blkdev.h\n  [SCSI] make struct scsi_{host,target}_type static\n  [SCSI] fix locking in host use of blk_plug_device()\n  [SCSI] zfcp: Cleanup external header file\n  [SCSI] zfcp: Cleanup code in zfcp_erp.c\n  [SCSI] zfcp: zfcp_fsf cleanup.\n  [SCSI] zfcp: consolidate sysfs things into one file.\n  [SCSI] zfcp: Cleanup of code in zfcp_aux.c\n  [SCSI] zfcp: Cleanup of code in zfcp_scsi.c\n  [SCSI] zfcp: Move status accessors from zfcp to SCSI include file.\n  [SCSI] zfcp: Small QDIO cleanups\n  [SCSI] zfcp: Adapter reopen for large number of unsolicited status\n  [SCSI] zfcp: Fix error checking for ELS ADISC requests\n  [SCSI] zfcp: wait until adapter is finished with ERP during auto-port\n  [SCSI] ibmvfc: IBM Power Virtual Fibre Channel Adapter Client Driver\n  [SCSI] sg: Add target reset support\n  [SCSI] lib: Add support for the T10 (SCSI) Data Integrity Field CRC\n  [SCSI] sd: Move scsi_disk() accessor function to sd.h\n  ...\n"
    },
    {
      "commit": "98339cbd360b77c3167db287fd611468c2c44559",
      "tree": "06779e040c18aa40fc5a6e15b132fa1f70ec45f6",
      "parents": [
        "e4e0fadcd929138aa82130a1c5f22206d86d7bb2",
        "cbbc4e818de4451cdef75a112b7fc8a523d5d2a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 11:15:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 11:15:36 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (80 commits)\n  ide-floppy: fix unfortunate function naming\n  ide-tape: unify idetape_create_read/write_cmd\n  ide: add ide_pc_intr() helper\n  ide-{floppy,scsi}: read Status Register before stopping DMA engine\n  ide-scsi: add more debugging to idescsi_pc_intr()\n  ide-scsi: use pc-\u003ecallback\n  ide-floppy: add more debugging to idefloppy_pc_intr()\n  ide-tape: always log debug info in idetape_pc_intr() if debugging is enabled\n  ide-tape: add ide_tape_io_buffers() helper\n  ide-tape: factor out DSC handling from idetape_pc_intr()\n  ide-{floppy,tape}: move checking of -\u003efailed_pc to -\u003ecallback\n  ide: add ide_issue_pc() helper\n  ide: add PC_FLAG_DRQ_INTERRUPT pc flag\n  ide-scsi: move idescsi_map_sg() call out from idescsi_issue_pc()\n  ide: add ide_transfer_pc() helper\n  ide-scsi: set drive-\u003escsi flag for devices handled by the driver\n  ide-{cd,floppy,tape}: remove checking for drive-\u003escsi\n  ide: add PC_FLAG_ZIP_DRIVE pc flag\n  ide-tape: factor out waiting for good ireason from idetape_transfer_pc()\n  ide-tape: set PC_FLAG_DMA_IN_PROGRESS flag in idetape_transfer_pc()\n  ...\n"
    },
    {
      "commit": "681a561b7ec7fdcd8f35b68e44ac6d6c70aecc04",
      "tree": "0bd31a85ccdbbae87f452448bd001e7a4c2b75da",
      "parents": [
        "52a93ba815737e3877f85b46850cffe993a22429"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 15 21:21:45 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jul 15 21:21:45 2008 +0200"
      },
      "message": "block: unexport blk_end_sync_rq\n\nAll the users of blk_end_sync_rq has gone (they are converted to use\nblk_execute_rq). This unexports blk_end_sync_rq.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "52a93ba815737e3877f85b46850cffe993a22429",
      "tree": "fcc2797c13884e70100d7c9939c39cc9b4658cc8",
      "parents": [
        "d79c5a670ddf076a346ddcf3d9e21785ecab963f"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 15 21:21:45 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jul 15 21:21:45 2008 +0200"
      },
      "message": "block: remove the checking for NULL queue in blk_put_request\n\nSome uses blk_put_request asymmetrically, that is, they uses it with\nrequests that not allocated by blk_get_request. As a result,\nblk_put_request has a hack to catch a NULL request_queue. Now such\ncallers are fixed (they use blk_get_request properly). So we can\nsafely remove the hack in blk_put_request.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "9a2d43b7566caeeeb414aa628bc2759028897dbb",
      "tree": "829829bb1649b9727f600d076d55e349fd589511",
      "parents": [
        "64ea1b4ab7f51c5de601d291a51508c27d445f70"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jul 15 21:21:43 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jul 15 21:21:43 2008 +0200"
      },
      "message": "block: handle blk_pm_resume_request() requests in blk_execute_rq_nowait()\n\nFor blk_pm_resume_request() requests (which are used only by IDE subsystem\ncurrently) the queue is stopped so we need to call -\u003erequest_fn explicitly.\n\nThanks to:\n- Rafael for reporting/bisecting the bug\n- Borislav/Rafael for testing the fix\n\nThis is a preparation for converting IDE to use blk_execute_rq().\n\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "666484f0250db2e016948d63b3ef33e202e3b8d0",
      "tree": "734f48c10aa364965e4f4642ee3de51669e62be2",
      "parents": [
        "d18bb9a548e550f3ced57618e75085fb3f173133",
        "ace7f1b79670aa0c1d9f4b0442be82e565827333"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 15:28:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 15:28:42 2008 -0700"
      },
      "message": "Merge branch \u0027core/softirq\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core/softirq\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  softirq: remove irqs_disabled warning from local_bh_enable\n  softirq: remove initialization of static per-cpu variable\n  Remove argument from open_softirq which is always NULL\n"
    },
    {
      "commit": "d1794f2c5b5817eb79ccc5e00701ca748d1b073a",
      "tree": "5a4c98e694e88a8c82f342d0cc9edb2a4cbbef36",
      "parents": [
        "a41eebab7537890409ea9dfe0fcda9b5fbdb090d",
        "2fceef397f9880b212a74c418290ce69e7ac00eb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 14:48:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 14:48:31 2008 -0700"
      },
      "message": "Merge branch \u0027bkl-removal\u0027 of git://git.lwn.net/linux-2.6\n\n* \u0027bkl-removal\u0027 of git://git.lwn.net/linux-2.6: (146 commits)\n  IB/umad: BKL is not needed for ib_umad_open()\n  IB/uverbs: BKL is not needed for ib_uverbs_open()\n  bf561-coreb: BKL unneeded for open()\n  Call fasync() functions without the BKL\n  snd/PCM: fasync BKL pushdown\n  ipmi: fasync BKL pushdown\n  ecryptfs: fasync BKL pushdown\n  Bluetooth VHCI: fasync BKL pushdown\n  tty_io: fasync BKL pushdown\n  tun: fasync BKL pushdown\n  i2o: fasync BKL pushdown\n  mpt: fasync BKL pushdown\n  Remove BKL from remote_llseek v2\n  Make FAT users happier by not deadlocking\n  x86-mce: BKL pushdown\n  vmwatchdog: BKL pushdown\n  vmcp: BKL pushdown\n  via-pmu: BKL pushdown\n  uml-random: BKL pushdown\n  uml-mmapper: BKL pushdown\n  ...\n"
    },
    {
      "commit": "2fceef397f9880b212a74c418290ce69e7ac00eb",
      "tree": "d9cc09ab992825ef7fede4a688103503e3caf655",
      "parents": [
        "feae1ef116ed381625d3731c5ae4f4ebcb3fa302",
        "bce7f793daec3e65ec5c5705d2457b81fe7b5725"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Mon Jul 14 15:29:34 2008 -0600"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Mon Jul 14 15:29:34 2008 -0600"
      },
      "message": "Merge commit \u0027v2.6.26\u0027 into bkl-removal\n"
    },
    {
      "commit": "dddec01eb8e2b56267b37a6f9f0997a64b4e0b2a",
      "tree": "b6d8bfbce9abd105384b9d116499afbe306b9c22",
      "parents": [
        "7daf705f362e349983e92037a198b8821db198af",
        "32502b8413a77b54b9e19809404109590c32dfb7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 13:15:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 13:15:14 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block: (37 commits)\n  splice: fix generic_file_splice_read() race with page invalidation\n  ramfs: enable splice write\n  drivers/block/pktcdvd.c: avoid useless memset\n  cdrom: revert commit 22a9189 (cdrom: use kmalloced buffers instead of buffers on stack)\n  scsi: sr avoids useless buffer allocation\n  block: blk_rq_map_kern uses the bounce buffers for stack buffers\n  block: add blk_queue_update_dma_pad\n  DAC960: push down BKL\n  pktcdvd: push BKL down into driver\n  paride: push ioctl down into driver\n  block: use get_unaligned_* helpers\n  block: extend queue_flag bitops\n  block: request_module(): use format string\n  Add bvec_merge_data to handle stacked devices and -\u003emerge_bvec()\n  block: integrity flags can\u0027t use bit ops on unsigned short\n  cmdfilter: extend default read filter\n  sg: fix odd style (extra parenthesis) introduced by cmd filter patch\n  block: add bounce support to blk_rq_map_user_iov\n  cfq-iosched: get rid of enable_idle being unused warning\n  allow userspace to modify scsi command filter on per device basis\n  ...\n"
    },
    {
      "commit": "8df5fc042c8e7c08dc438c8198b62407ee1e91a0",
      "tree": "87a068716da8f04421e7cb6e9652ced863a9381d",
      "parents": [
        "27898988174bb211fd962ea73b9c6dc09f888705"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Jul 07 15:50:01 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 12 10:14:56 2008 -0500"
      },
      "message": "[SCSI] bsg: fix oops on remove\n\nIf you do a modremove of any sas driver, you run into an oops on\nshutdown when the host is removed (coming from the host bsg device).\nThe root cause seems to be that there\u0027s a use after free of the\nbsg_class_device:  In bsg_kref_release_function, this is used (to do a\nput_device(bcg-\u003eparent) after bcg-\u003erelease has been called.  In sas (and\npossibly many other things) bcd-\u003erelease frees the queue which contains\nthe bsg_class_device, so we get a put_device on unreferenced memory.\nFix this by taking a copy of the pointer to the parent before releasing\nbsg.\n\nAcked-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "3f27e3ed11e67c5ee19d560a50eafd93cf8c6682",
      "tree": "d2ed33ce7ca12c8b7e1c585ba9b2097095b0f89c",
      "parents": [
        "30e9ba9f2001f45960507f1963551311a67d0209"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu May 29 07:56:55 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 12 08:22:23 2008 -0500"
      },
      "message": "[SCSI] bsg: fix bsg_mutex hang with device removal\n\nWe don\u0027t need to hold bsg_mutex during bsg_complete_all_commands(). It\nleads to a problem that we block bsg_unregister_queue during\nbsg_complete_all_commands (untill all the outstanding commands\ncomplete).\n\nThanks to Pete Wyckoff for finding the bug and testing the patch.\n\nThe detailed bug report is:\n\nhttp://marc.info/?l\u003dlinux-scsi\u0026m\u003d121182137132145\u0026w\u003d2\n\nTested-by: Pete Wyckoff \u003cpw@osc.edu\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "30c00eda73d5db5bd64dd0c370161abd8df5ba4a",
      "tree": "87b5a34323eb98edf504e51b2d8e0291559579e3",
      "parents": [
        "27f8221af406e43b529a5425bc99c9b1e9bdf521"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 04 09:31:11 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jul 04 09:52:13 2008 +0200"
      },
      "message": "block: blk_rq_map_kern uses the bounce buffers for stack buffers\n\nblk_rq_map_kern is used for kernel internal I/Os. Some callers use\nthis function with stack buffers but DMA to/from the stack buffers\nleads to memory corruption on a non-coherent platform.\n\nThis patch make blk_rq_map_kern uses the bounce buffers if a caller\npasses a stack buffer (on the all platforms for simplicity).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "27f8221af406e43b529a5425bc99c9b1e9bdf521",
      "tree": "6e847b9359327449b77d4b6350cc9d44fd9208b6",
      "parents": [
        "2610324fcacf38a24b630090ebcb802538763187"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 04 09:30:03 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jul 04 09:52:13 2008 +0200"
      },
      "message": "block: add blk_queue_update_dma_pad\n\nThis adds blk_queue_update_dma_pad to prevent LLDs from overwriting\nthe dma pad mask wrongly (we added blk_queue_update_dma_alignment due\nto the same reason).\n\nThis also converts libata to use blk_queue_update_dma_pad instead of\nblk_queue_dma_pad.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Thomas Bogendoerfer \u003ctsbogend@alpha.franken.de\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e48ec69005f02b70b7ecfde1bc39a599086d16ef",
      "tree": "1868fc162e00af21332a82cdf348229c6b985d2f",
      "parents": [
        "e180f5949327e897bc35a816f4f4010186632df9"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:18:54 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:15 2008 +0200"
      },
      "message": "block: extend queue_flag bitops\n\nAdd test_and_clear and test_and_set.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e180f5949327e897bc35a816f4f4010186632df9",
      "tree": "b6ee35a51c00b811b87a925bbf7978c4db5538f3",
      "parents": [
        "cc371e66e340f35eed8dc4651c7c18e754c7fb26"
      ],
      "author": {
        "name": "maximilian attems",
        "email": "max@stro.a",
        "time": "Tue Jul 01 09:42:47 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:15 2008 +0200"
      },
      "message": "block: request_module(): use format string\n\nAvoid bad things happening if the module has a printk control string in\nits name.\n\nSigned-off-by: maximilian attems \u003cmax@stro.at\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b24498d477a14680fc3bb3ad884fa9fa76a2d237",
      "tree": "1ba2c9f24b3f22f45fa424ad904fb6dcc5d67790",
      "parents": [
        "06a452e5b95eb669b7ad414ccf587dfc2d91b217"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 27 09:12:09 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:15 2008 +0200"
      },
      "message": "block: integrity flags can\u0027t use bit ops on unsigned short\n\nJust use normal open coded bit operations instead, they need not be\natomic.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "06a452e5b95eb669b7ad414ccf587dfc2d91b217",
      "tree": "44675dae6a98b414dc3d7778ef8a74da00fee92a",
      "parents": [
        "2b272d4f7953a73ea1c1f7ba33d5a2d7439ce71b"
      ],
      "author": {
        "name": "Adel Gadllah",
        "email": "adel.gadllah@gmail.com",
        "time": "Fri Jun 27 09:16:17 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:14 2008 +0200"
      },
      "message": "cmdfilter: extend default read filter\n\nThis patch adds the commands that the former sg filter allowed for read\naccess to the cmdfilter to keep userspace apps that rely on them working.\n\nSigned-off-by: Adel Gadllah \u003cadel.gadllah@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "07359fc61bb8ed786f96a1c24cca6f94dd17e329",
      "tree": "d778cf4f214c9e87ecf4a322b687457391ee2906",
      "parents": [
        "c265a7f41706cee20508de5b4a919214cfd7a11b"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Jun 26 19:39:23 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:14 2008 +0200"
      },
      "message": "block: add bounce support to blk_rq_map_user_iov\n\nblk_rq_map_user_iov can\u0027t handle the bounce buffer (it means that the\nbio_map_user_iov path doesn\u0027t work with a LLD that needs GFP_DMA).\n\nThis patch fixes blk_rq_map_user_iov to support the bounce buffer.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c265a7f41706cee20508de5b4a919214cfd7a11b",
      "tree": "b7738a542ae9bd1cc261a3a96513a8298fa45945",
      "parents": [
        "0b07de85a76e1346e675f0e98437378932473df7"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 13:49:33 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:14 2008 +0200"
      },
      "message": "cfq-iosched: get rid of enable_idle being unused warning\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0b07de85a76e1346e675f0e98437378932473df7",
      "tree": "b86e5e0be27679c408ab525534c76162754129b9",
      "parents": [
        "6e2401ad6f33de15ff00f78b88159f00a14f3b35"
      ],
      "author": {
        "name": "Adel Gadllah",
        "email": "adel.gadllah@gmail.com",
        "time": "Thu Jun 26 13:48:27 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:14 2008 +0200"
      },
      "message": "allow userspace to modify scsi command filter on per device basis\n\nThis patch exports the per-gendisk command filter to user space through\nsysfs, so it can be changed by the system administrator.\nAll users of the old cmd filter have been converted to use the new one.\n\nOriginal patch from Peter Jones.\n\nSigned-off-by: Adel Gadllah \u003cadel.gadllah@gmail.com\u003e\nSigned-off-by: Peter Jones \u003cpjones@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b984679efe1a616ec4ac919dba08286d71593900",
      "tree": "eb8bf50d5fddac43a059926e217d31f0fb0e4f0d",
      "parents": [
        "c1c72b59941e2f5aad4b02609d7ee7b121734b8d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jun 17 19:05:48 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "block: integrity checkpatch cleanups\n\n\u003e 80 char lines and that sort of thing.\n\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": "1c9ce5276324ae566ca409491b99a2cc8d5986fa",
      "tree": "eca8ad1317880de5da3f7126e746d366f699348d",
      "parents": [
        "02c62304e6af60f1963695c6bc1bbffe619aa585"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Jun 13 09:41:00 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "block: export \"ro\" attribute\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "02c62304e6af60f1963695c6bc1bbffe619aa585",
      "tree": "6668092ab6514981926f30ec7f9bab262bfd281b",
      "parents": [
        "7b679138b3237a9a3d45a4fda23a58ac79cd279c"
      ],
      "author": {
        "name": "Alan D. Brunelle",
        "email": "Alan.Brunelle@hp.com",
        "time": "Wed Jun 11 09:12:52 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "Added in user-injected messages into blk traces\n\nThis allows a user to annotate the blk trace stream: writing a suitable\nmessage to {/sys/kernel/debug}/block/\u003cdsf\u003e/msg will have it propagated\ninto the trace stream.\n\nSigned-off-by: Alan D. Brunelle \u003calan.brunelle@hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7b679138b3237a9a3d45a4fda23a58ac79cd279c",
      "tree": "4afe2fa4805e4b2211842abf7829ee4fb9ee9acf",
      "parents": [
        "863fddcb4b0caee4c2d5bd6e3b28779920516db3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 30 12:23:07 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "cfq-iosched: add message logging through blktrace\n\nNow that blktrace has the ability to carry arbitrary messages in\nits stream, use that for some CFQ logging.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "863fddcb4b0caee4c2d5bd6e3b28779920516db3",
      "tree": "9170df5fb0e26d77d45017069b7756f7c80afde5",
      "parents": [
        "9a11b4ed0e7c44bca7c939aa544c3c47aae40c12"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu May 29 09:35:22 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "as-iosched: properly protect ioc_gone and ioc count\n\nIf we have multiple tasks freeing io contexts when as-iosched\nis being unloaded, we could complete() ioc_gone twice. Fix that by\nprotecting ioc_gone complete() and clearing with a spinlock for\njust that purpose. Doesn\u0027t matter from a performance perspective,\nsince it\u0027ll only enter that path when ioc_gone !\u003d NULL (when as-iosched\nis being rmmod\u0027ed).\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9a11b4ed0e7c44bca7c939aa544c3c47aae40c12",
      "tree": "438312dda8a63e0704c2ddbdea958f0d729c6c7e",
      "parents": [
        "c461a973118346d5c103aaaddd62e53939fd7c67"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu May 29 09:32:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "cfq-iosched: properly protect ioc_gone and ioc count\n\nIf we have multiple tasks freeing cfq_io_contexts when cfq-iosched\nis being unloaded, we could complete() ioc_gone twice. Fix that by\nprotecting ioc_gone complete() and clearing with a spinlock for\njust that purpose. Doesn\u0027t matter from a performance perspective,\nsince it\u0027ll only enter that path when ioc_gone !\u003d NULL (when cfq-iosched\nis being rmmod\u0027ed).\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d585d0b9d73ed999cc7b8cf3cac4a5b01abb544e",
      "tree": "7cfb65304f92745eb7ca3e5fa9073bbba1cfa357",
      "parents": [
        "1702b52092e9a6d05398d3f9581ddc050ef00d06"
      ],
      "author": {
        "name": "Divyesh Shah",
        "email": "dpshah@google.com",
        "time": "Mon Jun 16 18:37:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 01 09:06:42 2008 +0200"
      },
      "message": "block: Fix the starving writes bug in the anticipatory IO scheduler\n\nAS scheduler alternates between issuing read and write batches. It does\nthe batch switch only after all requests from the previous batch are\ncompleted.\n\nWhen switching to a write batch, if there is an on-going read request,\nit waits for its completion and indicates its intention of switching by\nsetting ad-\u003echanged_batch and the new direction but does not update the\nbatch_expire_time for the new write batch which it does in the case of\nno previous pending requests.\nOn completion of the read request, it sees that we were waiting for the\nswitch and schedules work for kblockd right away and resets the\nad-\u003echanged_data flag.\nNow when kblockd enters dispatch_request where it is expected to pick\nup a write request, it in turn ends the write batch because the\nbatch_expire_timer was not updated and shows the expire timestamp for\nthe previous batch.\n\nThis results in the write starvation for all the cases where there is\nthe intention for switching to a write batch, but there is a previous\nin-flight read request and the batch gets reverted to a read_batch\nright away.\n\nThis also holds true in the reverse case (switching from a write batch\nto a read batch with an in-flight write request).\n\nI\u0027ve checked that this bug exists on 2.6.11, 2.6.18, 2.6.24 and\nlinux-2.6-block git HEAD. I\u0027ve tested the fix on x86 platforms with\nSCSI drives where the driver asks for the next request while a current\nrequest is in-flight.\n\nThis patch is based off linux-2.6-block git HEAD.\n\nBug reproduction:\nA simple scenario which reproduces this bug is:\n- dd if\u003d/dev/hda3 of\u003d/dev/null \u0026\n- lilo\n   The lilo takes forever to complete.\n\nThis can also be reproduced fairly easily with the earlier dd and\nanother test\nprogram doing msync().\n\nThe example test program below should print out a message after every\niteration\nbut it simply hangs forever. With this bugfix it makes forward progress.\n\n\u003d\u003d\u003d\u003d\nExample test program using msync() (thanks to suleiman AT google DOT\ncom)\n\ninline uint64_t\nrdtsc(void)\n{\n         int64_t tsc;\n\n         __asm __volatile(\"rdtsc\" : \"\u003dA\" (tsc));\n         return (tsc);\n}\n\nint\nmain(int argc, char **argv)\n{\n         struct stat st;\n         uint64_t e, s, t;\n         char *p, q;\n         long i;\n         int fd;\n\n         if (argc \u003c 2) {\n                 printf(\"Usage: %s \u003cfile\u003e\\n\", argv[0]);\n                 return (1);\n         }\n\n         if ((fd \u003d open(argv[1], O_RDWR | O_NOATIME)) \u003c 0)\n                 err(1, \"open\");\n\n         if (fstat(fd, \u0026st) \u003c 0)\n                 err(1, \"fstat\");\n\n         p \u003d mmap(NULL, st.st_size, PROT_READ | PROT_WRITE,\nMAP_SHARED, fd, 0);\n\n         t \u003d 0;\n         for (i \u003d 0; i \u003c 1000; i++) {\n                 *p \u003d 0;\n                 msync(p, 4096, MS_SYNC);\n                 s \u003d rdtsc();\n                *p \u003d 0;\n                 __asm __volatile(\"\"::: \"memory\");\n                 e \u003d rdtsc();\n                 if (argc \u003e 2)\n                         printf(\"%d: %lld cycles %jd %jd\\n\",\n                                i, e - s, (intmax_t)s, (intmax_t)e);\n                 t +\u003d e - s;\n         }\n         printf(\"average time: %lld cycles\\n\", t / 1000);\n         return (0);\n}\n\nCc: \u003cstable@kernel.org\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9583f3d9c00974911daf227cbaa12d6c1caaabad",
      "tree": "f37466204ecbfea37c7d567fd06c9bece0cc663d",
      "parents": [
        "962cf36c5bf6d2840b8d66ee9a606fae2f540bbd",
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:24:17 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:24:17 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/softirq\n"
    },
    {
      "commit": "14a73f54798f39854e521fb596da7d50b7566bbd",
      "tree": "2c9055792b004d21a9ca52660b036ca92de057ea",
      "parents": [
        "95dcf8350dc889e735d03c0debe2f7b26d243185"
      ],
      "author": {
        "name": "Carl Henrik Lunde",
        "email": "chlunde@ping.uio.no",
        "time": "Thu Jun 12 20:13:58 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 12 11:20:57 2008 -0700"
      },
      "message": "block: disable IRQs until data is written to relay channel\n\nAs we may run relay_reserve from interrupt context we must always disable\nIRQs.  This is because a call to relay_reserve may expose previously written\ndata to use space.\n\nUpdated new message code and an old but related comment.\n\nSigned-off-by: Carl Henrik Lunde \u003cchlunde@ping.uio.no\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5791d13b1d45542895104edf4b09476d5ad24b0",
      "tree": "3e3557240717a100dcb63316b4d0c1697e943320",
      "parents": [
        "f751aa125d1843ea4a9a264b451fd5b1639fab20"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 09 10:06:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 09 10:06:24 2008 -0700"
      },
      "message": "Fix invalid access errors in blk_lookup_devt\n\nCommit 30f2f0eb4bd2c43d10a8b0d872c6e5ad8f31c9a0 (\"block: do_mounts -\naccept root\u003d\u003cnon-existant partition\u003e\") extended blk_lookup_devt() to be\nable to look up partitions that had not yet been registered, but in the\nprocess made the assumption that the \u0027\u0026block_class.devices\u0027 list only\ncontains disk devices and that you can do \u0027dev_to_disk(dev)\u0027 on them.\n\nThat isn\u0027t actually true.  The block_class device list also contains the\npartitions we\u0027ve discovered so far, and you can\u0027t just do a\n\u0027dev_to_disk()\u0027 on those.\n\nSo make sure to only work on devices that block/genhd.c has registered\nitself, something we can test by checking the \u0027dev-\u003etype\u0027 member.  This\nmakes the loop in blk_lookup_devt() match the other such loops in this\nfile.\n\n[ We may want to do an alternate version that knows to handle _either_\n  whole-disk devices or partitions, but for now this is the minimal fix\n  for a series of crashes reported by Mariusz Kozlowski in\n\n\thttp://lkml.org/lkml/2008/5/25/25\n\n  and Ingo in\n\n\thttp://lkml.org/lkml/2008/6/9/39 ]\n\nReported-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Joao Luis Meloni Assirati \u003cassirati@nonada.if.usp.br\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d6de8be711b28049a5cb93c954722c311c7d3f7f",
      "tree": "001dfc1147a64bd05798e29b15ce5d995486a6fa",
      "parents": [
        "64565911cdb57c2f512a9715b985b5617402cc67"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:46:59 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:28 2008 +0200"
      },
      "message": "cfq-iosched: fix RCU problem in cfq_cic_lookup()\n\ncfq_cic_lookup() needs to properly protect ioc-\u003eioc_data before\ndereferencing it and also exclude updaters of ioc-\u003eioc_data as well.\n\nAlso add a number of comments documenting why the existing RCU usage\nis OK.\n\nThanks a lot to \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e for\nreview and comments!\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "64565911cdb57c2f512a9715b985b5617402cc67",
      "tree": "1c8a3d03fcb0e620c8f2244962fb249cff51fec4",
      "parents": [
        "4722dc52a891ab6cb2d637ddb87233e0ce277827"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:45:33 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:27 2008 +0200"
      },
      "message": "block: make blktrace use per-cpu buffers for message notes\n\nCurrently it uses a single static char array, but that risks\nbeing corrupted when multiple users issue message notes at the\nsame time. Make the buffers dynamically allocated when the trace\nis setup and make them per-cpu instead.\n\nThe default max message size of 1k is also very large, the\ninterface is mainly for small text notes. So shrink it to 128 bytes.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4722dc52a891ab6cb2d637ddb87233e0ce277827",
      "tree": "c5cd2a670edcedf5a8f35028509ab7fd841e2029",
      "parents": [
        "9d5f09a424a67ddb959829894efb4c71cbf6d600"
      ],
      "author": {
        "name": "Alan D. Brunelle",
        "email": "Alan.Brunelle@hp.com",
        "time": "Tue May 27 14:55:00 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:27 2008 +0200"
      },
      "message": "Added in elevator switch message to blktrace stream\n\nSigned-off-by: Alan D. Brunelle \u003calan.brunelle@hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9d5f09a424a67ddb959829894efb4c71cbf6d600",
      "tree": "9d5cd1736003591193479a98d4b67fe8cfa2e7f3",
      "parents": [
        "be754d2c2161c0cce11d62727016985ecb76831b"
      ],
      "author": {
        "name": "Alan D. Brunelle",
        "email": "Alan.Brunelle@hp.com",
        "time": "Tue May 27 14:54:41 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:27 2008 +0200"
      },
      "message": "Added in MESSAGE notes for blktraces\n\nAllows messages to be inserted into blktrace streams.\n\nSigned-off-by: Alan D. Brunelle \u003calan.brunelle@hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "be754d2c2161c0cce11d62727016985ecb76831b",
      "tree": "4e8c62060ca8fc0ff1ab34bd2d3667581f8208b3",
      "parents": [
        "05caf8dbc1880415df3378cfd114d832c9618b60"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Fri May 23 06:52:00 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:27 2008 +0200"
      },
      "message": "block: reorder cfq_queue to save space on 64bit builds\n\nsaves 8 bytes of padding \u0026 increases objects/slab from 30 to 32 on my\nAMD64 config\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "05caf8dbc1880415df3378cfd114d832c9618b60",
      "tree": "71b2a0839739c4a3e54e7d40d1a2358d61c8b279",
      "parents": [
        "ca39d651d17df49b6d11f851d56c0ce0ce01ea1a"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Thu May 22 15:13:29 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 28 14:49:27 2008 +0200"
      },
      "message": "block: Move the second call to get_request to the end of the loop\n\nIn function get_request_wait, the second call to get_request could be\nmoved to the end of the while loop, because if the first call to\nget_request fails, the second call will fail without sleep.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "962cf36c5bf6d2840b8d66ee9a606fae2f540bbd",
      "tree": "263ead6b5224453e8c2a92f1ad9cd2091e003b68",
      "parents": [
        "75d3bce2fc0a80f435fe12f2c9ed2632c8ac29e4"
      ],
      "author": {
        "name": "Carlos R. Mafra",
        "email": "crmafra2@gmail.com",
        "time": "Thu May 15 11:15:37 2008 -0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun May 25 07:43:15 2008 +0200"
      },
      "message": "Remove argument from open_softirq which is always NULL\n\nAs git-grep shows, open_softirq() is always called with the last argument\nbeing NULL\n\nblock/blk-core.c:       open_softirq(BLOCK_SOFTIRQ, blk_done_softirq, NULL);\nkernel/hrtimer.c:       open_softirq(HRTIMER_SOFTIRQ, run_hrtimer_softirq, NULL);\nkernel/rcuclassic.c:    open_softirq(RCU_SOFTIRQ, rcu_process_callbacks, NULL);\nkernel/rcupreempt.c:    open_softirq(RCU_SOFTIRQ, rcu_process_callbacks, NULL);\nkernel/sched.c: open_softirq(SCHED_SOFTIRQ, run_rebalance_domains, NULL);\nkernel/softirq.c:       open_softirq(TASKLET_SOFTIRQ, tasklet_action, NULL);\nkernel/softirq.c:       open_softirq(HI_SOFTIRQ, tasklet_hi_action, NULL);\nkernel/timer.c: open_softirq(TIMER_SOFTIRQ, run_timer_softirq, NULL);\nnet/core/dev.c: open_softirq(NET_TX_SOFTIRQ, net_tx_action, NULL);\nnet/core/dev.c: open_softirq(NET_RX_SOFTIRQ, net_rx_action, NULL);\n\nThis observation has already been made by Matthew Wilcox in June 2002\n(http://www.cs.helsinki.fi/linux/linux-kernel/2002-25/0687.html)\n\n\"I notice that none of the current softirq routines use the data element\npassed to them.\"\n\nand the situation hasn\u0027t changed since them. So it appears we can safely\nremove that extra argument to save 128 (54) bytes of kernel data (text).\n\nSigned-off-by: Carlos R. Mafra \u003ccrmafra@ift.unesp.br\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "75bd2ef1457998791cfc89cd59927574488fc22a",
      "tree": "8468afbf17f58ab7bfbb661fa167e50a9e06994c",
      "parents": [
        "b8291ad07a7f3b5b990900f0001198ac23ba893e"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Thu May 15 09:09:23 2008 -0600"
      },
      "committer": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Sun May 18 15:43:40 2008 -0600"
      },
      "message": "bsg: cdev lock_kernel() pushdown\n\nPush the cdev lock_kernel call into bsg_open().\n\nSigned-off-by: Jonathan Corbet \u003ccorbet@lwn.net\u003e\n"
    },
    {
      "commit": "e7e72bf641b1fc7b9df6f40bd2c36dfccd8d647c",
      "tree": "81b1db5434c9635bf23fb40415056e10390cd692",
      "parents": [
        "4920916f728fe3c51f54c25ab7b3d271254aab5a"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Wed May 14 16:05:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:11:15 2008 -0700"
      },
      "message": "Remove blkdev warning triggered by using md\n\nAs setting and clearing queue flags now requires that we hold a spinlock\non the queue, and as blk_queue_stack_limits is called without that lock,\nget the lock inside blk_queue_stack_limits.\n\nFor blk_queue_stack_limits to be able to find the right lock, each md\npersonality needs to set q-\u003equeue_lock to point to the appropriate lock.\nThose personalities which didn\u0027t previously use a spin_lock, us\nq-\u003e__queue_lock.  So always initialise that lock when allocated.\n\nWith this in place, setting/clearing of the QUEUE_FLAG_PLUGGED bit will no\nlonger cause warnings as it will be clear that the proper lock is held.\n\nThanks to Dan Williams for review and fixing the silly bugs.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\nCc: Dan Williams \u003cdan.j.williams@intel.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Alistair John Strachan \u003calistair@devzero.co.uk\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Jacek Luczak \u003cdifrost.kernel@gmail.com\u003e\nCc: Prakash Punnoor \u003cprakash@punnoor.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30f2f0eb4bd2c43d10a8b0d872c6e5ad8f31c9a0",
      "tree": "deb8d2a749cd737d9abead1b4cc8321d00dbaee4",
      "parents": [
        "9604006d283fb67dda5ee9e0e15b7cc6c62e1557"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue May 06 22:31:33 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed May 14 10:37:57 2008 -0700"
      },
      "message": "block: do_mounts - accept root\u003d\u003cnon-existant partition\u003e\n\nSome devices, like md, may create partitions only at first access,\nso allow root\u003d to be set to a valid non-existant partition of an\nexisting disk. This applies only to non-initramfs root mounting.\n\nThis fixes a regression from 2.6.24 which did allow this to happen and\nbroke some users machines :(\n\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nTested-by: Joao Luis Meloni Assirati \u003cassirati@nonada.if.usp.br\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f36f21ecca9ee688301174e5f2e0827827a7a7ff",
      "tree": "b147bb5cc37683dfe01c86fba634808aa2ff567d",
      "parents": [
        "78bb6cb9a890d3d50ca3b02fce9223d3e734ab9b"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Mon May 12 14:02:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:26 2008 -0700"
      },
      "message": "Fix misuses of bdevname()\n\nbdevname() fills the buffer that it is given as a parameter, so calling\nstrcpy() or snprintf() on the returned value is redundant (and probably not\nguaranteed to work - I don\u0027t think strcpy and snprintf support overlapping\nbuffers.)\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Stephen Tweedie \u003csct@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28f13702f03e527fcb979747a882cf366c489c50",
      "tree": "08cf04c696bf0facb083bbfbdd867e5949c5fa14",
      "parents": [
        "6d63c275572d1e6f00d4fa154f16fbb0d8c2d2bf"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 10:15:46 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 10:15:46 2008 +0200"
      },
      "message": "block: avoid duplicate calls to get_part() in disk stat code\n\nget_part() is fairly expensive, as it O(N) loops over partitions\nto find the right one. In lots of normal IO paths we end up looking\nup the partition twice, to make matters even worse. Change the\nstat add code to accept a passed in partition instead.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6d63c275572d1e6f00d4fa154f16fbb0d8c2d2bf",
      "tree": "715f4bab902f117c958a929e44cd0b2257e3be29",
      "parents": [
        "dbaf2c003e151ad9231778819b0977f95e20e06f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:51:23 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:51:23 2008 +0200"
      },
      "message": "cfq-iosched: make io priorities inherit CPU scheduling class as well as nice\n\nWe currently set all processes to the best-effort scheduling class,\nregardless of what CPU scheduling class they belong to. Improve that\nso that we correctly track idle and rt scheduling classes as well.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "dbaf2c003e151ad9231778819b0977f95e20e06f",
      "tree": "2768a0cd046801d83faf04c408a7d53a2fdfabc5",
      "parents": [
        "2cdf79cafbd11580f5b63cd4993b45c1c4952415"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:48:17 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:48:17 2008 +0200"
      },
      "message": "block: optimize generic_unplug_device()\n\nOriginal patch from Mikulas Patocka \u003cmpatocka@redhat.com\u003e\n\nMike Anderson was doing an OLTP benchmark on a computer with 48 physical\ndisks mapped to one logical device via device mapper.\n\nHe found that there was a slowdown on request_queue-\u003elock in function\ngeneric_unplug_device. The slowdown is caused by the fact that when some\ncode calls unplug on the device mapper, device mapper calls unplug on all\nphysical disks. These unplug calls take the lock, find that the queue is\nalready unplugged, release the lock and exit.\n\nWith the below patch, performance of the benchmark was increased by 18%\n(the whole OLTP application, not just block layer microbenchmarks).\n\nSo I\u0027m submitting this patch for upstream. I think the patch is correct,\nbecause when more threads call simultaneously plug and unplug, it is\nunspecified, if the queue is or isn\u0027t plugged (so the patch can\u0027t make\nthis worse). And the caller that plugged the queue should unplug it\nanyway. (if it doesn\u0027t, there\u0027s 3ms timeout).\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2cdf79cafbd11580f5b63cd4993b45c1c4952415",
      "tree": "c0f4b7eea00127675785174a79ff0ac4c6d2669a",
      "parents": [
        "7f3d4ee108c184ab215036051087aaaaa8de7661"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:33:55 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:33:55 2008 +0200"
      },
      "message": "block: get rid of likely/unlikely predictions in merge logic\n\nThey tend to depend a lot on the workload, so not a clear-cut\nlikely or unlikely fit.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "07416d29bcf608257f1e5280642dcbe0021518a3",
      "tree": "6b88b2b043cac10b34234320c68e06848c00127c",
      "parents": [
        "aa94b5371f6f898558d9fa5690cc6e4bf917a572"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:17:12 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:28:57 2008 +0200"
      },
      "message": "cfq-iosched: fix RCU race in the cfq io_context destructor handling\n\nput_io_context() drops the RCU read lock before calling into cfq_dtor(),\nhowever we need to hold off freeing there before grabbing and\ndereferencing the first object on the list.\n\nSo extend the rcu_read_lock() scope to cover the calling of cfq_dtor(),\nand optimize cfq_free_io_context() to use a new variant for\ncall_for_each_cic() that assumes the RCU read lock is already held.\n\nHit in the wild by Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "aa94b5371f6f898558d9fa5690cc6e4bf917a572",
      "tree": "06afaf32fce70c41eddf334666125c2ed75b17b1",
      "parents": [
        "bf0f97025c7306870b86ccd63669aa278e7ec1c2"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:27:43 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:27:43 2008 +0200"
      },
      "message": "block: adjust tagging function queue bit locking\n\nFor most initialization purposes, calling blk_queue_init_tags() without\nthe queue lock held is OK. Only if called for resizing an existing map\nmust the lock be held. Ditto for tag cleanup, the maps are reference\ncounted.\n\nSo switch the general queue flag setting to the unlocked variant, but\nretain the locked variant for resizing.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bf0f97025c7306870b86ccd63669aa278e7ec1c2",
      "tree": "d8988d1f6d817a1bb31563c9864f616a52c4c0b4",
      "parents": [
        "c0a18111e571138747a98af18b3a2124df56a0d1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:09:39 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 07 09:09:39 2008 +0200"
      },
      "message": "block: sysfs store function needs to grab queue_lock and use queue_flag_*()\n\nConcurrency isn\u0027t a big deal here since we have requests in flight\nat this point, but do the locked variant to set a better example.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d626e3bf728c47746f2129aa00c775d4e8c2a73b",
      "tree": "551a8c362c7b9833e7848bc6167cf322f75563a1",
      "parents": [
        "b66e1f11ebc429569a3784aaf64123633d9e3ed1",
        "7ad4a485002c141f156a014e89542e01e7f8e36a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 02 13:52:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 02 13:52:35 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6:\n  [SCSI] aic94xx: fix section mismatch\n  [SCSI] u14-34f: Fix 32bit only problem\n  [SCSI] dpt_i2o: sysfs code\n  [SCSI] dpt_i2o: 64 bit support\n  [SCSI] dpt_i2o: move from virt_to_bus/bus_to_virt to dma_alloc_coherent\n  [SCSI] dpt_i2o: use standard __init / __exit code\n  [SCSI] megaraid_sas: fix suspend/resume sections\n  [SCSI] aacraid: Add Power Management support\n  [SCSI] aacraid: Fix jbod operations scan issues\n  [SCSI] aacraid: Fix warning about macro side-effects\n  [SCSI] add support for variable length extended commands\n  [SCSI] Let scsi_cmnd-\u003ecmnd use request-\u003ecmd buffer\n  [SCSI] bsg: add large command support\n  [SCSI] aacraid: Fix down_interruptible() to check the return value correctly\n  [SCSI] megaraid_sas; Update the Version and Changelog\n  [SCSI] ibmvscsi: Handle non SCSI error status\n  [SCSI] bug fix for free list handling\n  [SCSI] ipr: Rename ipr\u0027s state scsi host attribute to prevent collisions\n  [SCSI] megaraid_mbox: fix Dell CERC firmware problem\n"
    },
    {
      "commit": "db4742dd8f0aa9125b74f9b2516336a75f3d9106",
      "tree": "6820b74e8fbfb13c4eee4c8ef8b59a9132320799",
      "parents": [
        "64a87b244b9297667ca80264aab849a36f494884"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Wed Apr 30 11:27:26 2008 +0300"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri May 02 11:33:25 2008 -0500"
      },
      "message": "[SCSI] add support for variable length extended commands\n\nAdd support for variable-length, extended, and vendor specific\nCDBs to scsi-ml. It is now possible for initiators and ULD\u0027s\nto issue these types of commands. LLDs need not change much.\nAll they need is to raise the .max_cmd_len to the longest command\nthey support (see iscsi patch).\n\n- clean-up some code paths that did not expect commands to be\n  larger than 16, and change cmd_len members\u0027 type to short as\n  char is not enough.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "9f5de6b105bfa45911d46566df0b36720b648c42",
      "tree": "ef65b8fc303416def57688c8681a38af1f211c19",
      "parents": [
        "0462590efe9a562dd2aa976ae2dc9cd2e6f5a0c6"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Wed Apr 30 13:16:21 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri May 02 10:17:35 2008 -0500"
      },
      "message": "[SCSI] bsg: add large command support\n\nThis enables bsg to handle the request length larger than BLK_MAX_CDB\n(mainly for the variable length CDB format).\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": "24c03d47d0481ed7b172b398f6c9b7ca1fafb9fa",
      "tree": "d24b94e09b12a2c16cc0cf49c273af846fcc6f13",
      "parents": [
        "e37d05dad7ff9744efd8ea95a70d389e9a65a6fc"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu May 01 04:35:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:04:02 2008 -0700"
      },
      "message": "block: remove remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf0ca9fe5dd9e3693d935757a7b2fc50fc576554",
      "tree": "c795c5271eda9fc67579fa3176c646b892dfdb41",
      "parents": [
        "caafa4324335aeb11bc233d5f87aca8cce30beba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Apr 30 00:54:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:49 2008 -0700"
      },
      "message": "mm: bdi: export BDI attributes in sysfs\n\nProvide a place in sysfs (/sys/class/bdi) for the backing_dev_info object.\nThis allows us to see and set the various BDI specific variables.\n\nIn particular this properly exposes the read-ahead window for all relevant\nusers and /sys/block/\u003cblock\u003e/queue/read_ahead_kb should be deprecated.\n\nWith patient help from Kay Sievers and Greg KH\n\n[mszeredi@suse.cz]\n\n - split off NFS and FUSE changes into separate patches\n - document new sysfs attributes under Documentation/ABI\n - do bdi_class_init as a core_initcall, otherwise the \"default\" BDI\n   won\u0027t be initialized\n - remove bdi_init_fmt macro, it\u0027s not used very much\n\n[akpm@linux-foundation.org: fix ia64 warning]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac9fafa1243640349aa481adf473db283a695766",
      "tree": "155c2371cca8971638d781269f39fa015bc6509c",
      "parents": [
        "d7e3c3249ef23b4617393c69fe464765b4ff1645"
      ],
      "author": {
        "name": "Alan D. Brunelle",
        "email": "Alan.Brunelle@hp.com",
        "time": "Tue Apr 29 14:44:19 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:55 2008 +0200"
      },
      "message": "block: Skip I/O merges when disabled\n\nThe block I/O + elevator + I/O scheduler code spend a lot of time trying\nto merge I/Os -- rightfully so under \"normal\" circumstances. However,\nif one were to know that the incoming I/O stream was /very/ random in\nnature, the cycles are wasted.\n\nThis patch adds a per-request_queue tunable that (when set) disables\nmerge attempts (beyond the simple one-hit cache check), thus freeing up\na non-trivial amount of CPU cycles.\n\nSigned-off-by: Alan D. Brunelle \u003calan.brunelle@hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d7e3c3249ef23b4617393c69fe464765b4ff1645",
      "tree": "3471ea20b7fb4c4a9bbd7cfb3cc952344b5501d6",
      "parents": [
        "d34c87e4ba3d1857f80a65179e81a18705a31656"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Apr 29 09:54:39 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:55 2008 +0200"
      },
      "message": "block: add large command support\n\nThis patch changes rq-\u003ecmd from the static array to a pointer to\nsupport large commands.\n\nWe rarely handle large commands. So for optimization, a struct request\nstill has a static array for a command. rq_init sets rq-\u003ecmd pointer\nto the static array.\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": "d34c87e4ba3d1857f80a65179e81a18705a31656",
      "tree": "6460d4a1de0c2e26ab9eed6babc916092eed4559",
      "parents": [
        "e7b241a7715d2a0885f779f5baa63711d71b1d75"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Apr 29 14:37:52 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:55 2008 +0200"
      },
      "message": "block: replace sizeof(rq-\u003ecmd) with BLK_MAX_CDB\n\nThis is a preparation for changing rq-\u003ecmd from the static array to a\npointer.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2a4aa30c5f967eb6ae874c67fa6fceeee84815f9",
      "tree": "fddd67e3b3697874e2a19c0e8e194190957b0e1e",
      "parents": [
        "992b5bceee447a32ef2d617730ae0d03c063eedd"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Apr 29 09:54:36 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:55 2008 +0200"
      },
      "message": "block: rename and export rq_init()\n\nThis rename rq_init() blk_rq_init() and export it. Any path that hands\nthe request to the block layer needs to call it to initialize the\nrequest.\n\nThis is a preparation for large command support, which needs to\ninitialize the request in a proper way (that is, just doing a memset()\nwill not work).\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": "992b5bceee447a32ef2d617730ae0d03c063eedd",
      "tree": "cf8a457afc939b9d6040b809382e8a45adc9eee1",
      "parents": [
        "4917fa292558593d36b2880977ea206f7727dbe5"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Apr 29 09:54:36 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:55 2008 +0200"
      },
      "message": "block: no need to initialize rq-\u003ecmd with blk_get_request\n\nblk_get_request initializes rq-\u003ecmd (rq_init does) so the users don\u0027t\nneed to do that.\n\nThe purpose of this patch is to remove sizeof(rq-\u003ecmd) and \u0026rq-\u003ecmd,\nas a preparation for large command support, which changes rq-\u003ecmd from\nthe static array to a pointer. sizeof(rq-\u003ecmd) will not make sense and\n\u0026rq-\u003ecmd won\u0027t work.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6f6a036e6e061563efecb61505fc4cc3ca415f80",
      "tree": "6bbb13cb230ef0a5fd465f47970641febb7125ea",
      "parents": [
        "72ed0bf60ade8d2cc1f58276cb16add0af2c3e25"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Apr 29 09:49:06 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:54 2008 +0200"
      },
      "message": "block/blk-barrier.c:blk_ordered_cur_seq() mustn\u0027t be inline\n\nThis patch fixes the following build error with UML and gcc 4.3:\n\n\u003c--  snip  --\u003e\n\n...\n  CC      block/blk-barrier.o\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/blk-barrier.c: In function ‘blk_do_ordered’:\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/blk-barrier.c:57: sorry, unimplemented: inlining failed in call to ‘blk_ordered_cur_seq’: function body not available\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/blk-barrier.c:252: sorry, unimplemented: called from here\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/blk-barrier.c:57: sorry, unimplemented: inlining failed in call to ‘blk_ordered_cur_seq’: function body not available\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/blk-barrier.c:253: sorry, unimplemented: called from here\nmake[2]: *** [block/blk-barrier.o] Error 1\n\n\u003c--  snip  --\u003e\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "72ed0bf60ade8d2cc1f58276cb16add0af2c3e25",
      "tree": "749000baa1616394ec34678faf38cf6e1708d77f",
      "parents": [
        "75ad23bc0fcb4f992a5d06982bf0857ab1738e9e"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Apr 29 09:49:05 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:54 2008 +0200"
      },
      "message": "block/elevator.c:elv_rq_merge_ok() mustn\u0027t be inline\n\nThis patch fixes the following build error with UML and gcc 4.3:\n\n\u003c--  snip  --\u003e\n\n...\n  CC      block/elevator.o\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/elevator.c: In function ‘elv_merge’:\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/elevator.c:73: sorry, unimplemented: inlining failed in call to ‘elv_rq_merge_ok’: function body not available\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/elevator.c:103: sorry, unimplemented: called from here\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/elevator.c:73: sorry, unimplemented: inlining failed in call to ‘elv_rq_merge_ok’: function body not available\n/home/bunk/linux/kernel-2.6/git/linux-2.6/block/elevator.c:495: sorry, unimplemented: called from here\nmake[2]: *** [block/elevator.o] Error 1\nmake[1]: *** [block] Error 2\n\n\u003c--  snip  --\u003e\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "75ad23bc0fcb4f992a5d06982bf0857ab1738e9e",
      "tree": "8668ef63b1f420252ae41aed9e13737d49fd8054",
      "parents": [
        "68154e90c9d1492d570671ae181d9a8f8530da55"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Apr 29 14:48:33 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 14:48:33 2008 +0200"
      },
      "message": "block: make queue flags non-atomic\n\nWe can save some atomic ops in the IO path, if we clearly define\nthe rules of how to modify the queue flags.\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": "657e93be356f51888f56a58d2b374caefbf2fe86",
      "tree": "3a7f5ffae7e12616c090d528a97ecb21e0064d19",
      "parents": [
        "31e103c595c0fa0d23eea5a4168362fba4c5ba62"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Apr 25 12:46:58 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 29 09:50:34 2008 +0200"
      },
      "message": "unexport blk_max_pfn\n\nblk_max_pfn can now be unexported.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    }
  ],
  "next": "1afb20f30151dd4160877c827f5b7203f98627fb"
}
