)]}'
{
  "log": [
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "8a78362c4eefc1deddbefe2c7f38aabbc2429d6b",
      "tree": "c095d95af1aec0f9cee5975b1dcdc6bc1d17d401",
      "parents": [
        "086fa5ff0854c676ec333760f4c0154b3b242616"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri Feb 26 00:20:39 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Feb 26 13:58:08 2010 +0100"
      },
      "message": "block: Consolidate phys_segment and hw_segment limits\n\nExcept for SCSI no device drivers distinguish between physical and\nhardware segment limits.  Consolidate the two into a single segment\nlimit.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "086fa5ff0854c676ec333760f4c0154b3b242616",
      "tree": "ee63fb3c7c7d964bd799355b7cde18ba95f91f07",
      "parents": [
        "eb28d31bc97e6374d81f404da309401ffaed467b"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri Feb 26 00:20:38 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Feb 26 13:58:08 2010 +0100"
      },
      "message": "block: Rename blk_queue_max_sectors to blk_queue_max_hw_sectors\n\nThe block layer calling convention is blk_queue_\u003climit name\u003e.\nblk_queue_max_sectors predates this practice, leading to some confusion.\nRename the function to appropriately reflect that its intended use is to\nset max_hw_sectors.\n\nAlso introduce a temporary wrapper for backwards compability.  This can\nbe removed after the merge window is closed.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ec9c42ec793d428e99fdd219867b31932034b138",
      "tree": "015a5dd03eb51dabad687b1d3ad3d6f8eacc3bde",
      "parents": [
        "5cccfd9b3a9ca06b6245ea2c4af052b7db0105a3"
      ],
      "author": {
        "name": "Márton Németh",
        "email": "nm127@freemail.hu",
        "time": "Sun Jan 10 13:39:52 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 11 14:31:27 2010 +0100"
      },
      "message": "block: make xenbus device id constant\n\nThe ids field of the struct xenbus_device_id is constant in \u003clinux/xen/xenbus.h\u003e\nso it is worth to make blkfront_ids also constant.\n\nThe semantic match that finds this kind of pattern is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r@\ndisable decl_init,const_decl_init;\nidentifier I1, I2, x;\n@@\n\tstruct I1 {\n\t  ...\n\t  const struct I2 *x;\n\t  ...\n\t};\n@s@\nidentifier r.I1, y;\nidentifier r.x, E;\n@@\n\tstruct I1 y \u003d {\n\t  .x \u003d E,\n\t};\n@c@\nidentifier r.I2;\nidentifier s.E;\n@@\n\tconst struct I2 E[] \u003d ... ;\n@depends on !c@\nidentifier r.I2;\nidentifier s.E;\n@@\n+\tconst\n\tstruct I2 E[] \u003d ...;\n// \u003c/smpl\u003e\n\nSigned-off-by: Márton Németh \u003cnm127@freemail.hu\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: cocci@diku.dk\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1ccbf5344c3daef046d2323190cc6807c44f1917",
      "tree": "0c080e1c478a7cd5b67e5ec0af4d9ca97dbcf348",
      "parents": [
        "9a08f7d3506019e3833cd4394ca0d7da0ae3689f"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Tue Oct 06 15:11:14 2009 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Nov 04 08:47:24 2009 -0800"
      },
      "message": "xen: move Xen-testing predicates to common header\n\nMove xen_domain and related tests out of asm-x86 to xen/xen.h so they\ncan be included whenever they are necessary.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "83d5cde47dedf01b6a4a4331882cbc0a7eea3c2e",
      "tree": "f8ba5e263717d35cd444fcc65898d2ed352af1ae",
      "parents": [
        "7b021967c5e1463936042c8da72b550d3cabe9ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make block_device_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1b4b12b372e76d22d4f3bf58b47e4cf2fb132fe",
      "tree": "5bebca9a1e67c23a4e39fb91d2fe2bc3429690b9",
      "parents": [
        "0e968a3b6da710294a56460473cac32dc821fd4a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Apr 30 14:43:31 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 15 21:30:27 2009 -0700"
      },
      "message": "xen block: remove driver_data direct access of struct device\n\nIn the near future, the driver core is going to not allow direct access\nto the driver_data pointer in struct device.  Instead, the functions\ndev_get_drvdata() and dev_set_drvdata() should be used.  These functions\nhave been around since the beginning, so are backwards compatible with\nall older kernel versions.\n\n\nCc: xen-devel@lists.xensource.com\nCc: virtualization@lists.osdl.org\nAcked-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1",
      "tree": "d60d15a082171c58ac811d547d51a9c3119f23e3",
      "parents": [
        "9bd7de51ee8537094656149eaf45338cadb7d7d4"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:49 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Do away with the notion of hardsect_size\n\nUntil now we have had a 1:1 mapping between storage device physical\nblock size and the logical block sized used when addressing the device.\nWith SATA 4KB drives coming out that will no longer be the case.  The\nsector size will be 4KB but the logical block size will remain\n512-bytes.  Hence we need to distinguish between the physical block size\nand the logical ditto.\n\nThis patch renames hardsect_size to logical_block_size.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9bd7de51ee8537094656149eaf45338cadb7d7d4",
      "tree": "a691987319dfcdb07de2bce619746f88d26882c4",
      "parents": [
        "e4b636366c00738b9609cda307014d71b1225b7f",
        "6a44587ee716ac911082cbdec766e5b3f051c071"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:28:35 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:28:35 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-2.6.31\n\nConflicts:\n\tdrivers/ide/ide-io.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b9ed7252d219c1c663944bf03846eabb515dbe75",
      "tree": "9582f1255e501c5111ac88dbbba4a1f90beb223c",
      "parents": [
        "0a7ae2ff0d29bb3b327edff4c8ab67b3834fa811"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Fri May 22 09:25:32 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 09:59:51 2009 +0200"
      },
      "message": "xen-blkfront: beyond ARRAY_SIZE of info-\u003eshadow\n\nDo not go beyond ARRAY_SIZE of info-\u003eshadow\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "31a14400e8f365e5d4d1a0b2a1ef4d5405d6091e",
      "tree": "9299d0d1edb3a44265201e286bd8d38084199bce",
      "parents": [
        "28afea5b2ffaa48f4f43d22ae8edcc384c05df80"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Tue May 19 08:27:42 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 19 08:27:42 2009 +0200"
      },
      "message": "xen/blkfront: fix warning when deleting gendisk on unplug/shutdown\n\nCurrently blkfront gives a warning when hot unplugging due to calling\ndel_gendisk() with interrupts disabled (due to blkif_io_lock).\n\nWARNING: at kernel/softirq.c:124 local_bh_enable+0x36/0x84()\nModules linked in: xenfs xen_netfront ext3 jbd mbcache xen_blkfront\nPid: 13, comm: xenwatch Not tainted 2.6.29-xs5.5.0.13 #3\nCall Trace:\n [\u003cc012611c\u003e] warn_slowpath+0x80/0xb6\n [\u003cc0104cf1\u003e] xen_sched_clock+0x16/0x63\n [\u003cc0104710\u003e] xen_force_evtchn_callback+0xc/0x10\n [\u003cc0104e32\u003e] check_events+0x8/0xe\n [\u003cc0104d9b\u003e] xen_restore_fl_direct_end+0x0/0x1\n [\u003cc0103749\u003e] xen_mc_flush+0x10a/0x13f\n [\u003cc0105bd2\u003e] __switch_to+0x114/0x14e\n [\u003cc011d92b\u003e] dequeue_task+0x62/0x70\n [\u003cc0123b6f\u003e] finish_task_switch+0x2b/0x84\n [\u003cc0299877\u003e] schedule+0x66d/0x6e7\n [\u003cc0104710\u003e] xen_force_evtchn_callback+0xc/0x10\n [\u003cc0104710\u003e] xen_force_evtchn_callback+0xc/0x10\n [\u003cc012a642\u003e] local_bh_enable+0x36/0x84\n [\u003cc022f9a7\u003e] sk_filter+0x57/0x5c\n [\u003cc0233dae\u003e] netlink_broadcast+0x1d5/0x315\n [\u003cc01c6371\u003e] kobject_uevent_env+0x28d/0x331\n [\u003cc01e7ead\u003e] device_del+0x10f/0x120\n [\u003cc01e7ec6\u003e] device_unregister+0x8/0x10\n [\u003cc015f86d\u003e] bdi_unregister+0x2d/0x39\n [\u003cc01bf6f4\u003e] unlink_gendisk+0x23/0x3e\n [\u003cc01ac946\u003e] del_gendisk+0x7b/0xe7\n [\u003cd0828c19\u003e] blkfront_closing+0x28/0x6e [xen_blkfront]\n [\u003cd082900c\u003e] backend_changed+0x3ad/0x41d [xen_blkfront]\n\nWe can fix this by calling del_gendisk() later in blkfront_closing, after\nreleasing blkif_io_lock. Since the queue is stopped during the interrupts\ndisabled phase I don\u0027t think there is any danger of an event occuring between\nreleasing the blkif_io_lock and deleting the disk.\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "28afea5b2ffaa48f4f43d22ae8edcc384c05df80",
      "tree": "a14c5275a701b1453447f3e7fa3a529ce08de994",
      "parents": [
        "22ef37eed673587ac984965dc88ba94c68873291"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Tue May 19 08:25:48 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 19 08:25:48 2009 +0200"
      },
      "message": "xen/blkfront: allow xenbus state transition to Closing-\u003eClosed  when not Connected\n\nThis situation can occur when attempting to attach a block device whose\nbackend is an empty physical CD-ROM driver. The backend in this case\nwill go directly from the Initialising state to Closing-\u003eClosed.\nPreviously this would result in a NULL pointer deref on info-\u003egd\n(xenbus_dev_fatal does not return as a1a15ac5 seems to expect)\n\nCc: stable@kernel.org\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9934c8c04561413609d2bc38c6b9f268cba774a4",
      "tree": "30dd8f7be54f9b2e03094de9cd03b6a9ee2909cd",
      "parents": [
        "2343046826a8ca426b07601d9593ee046c298b68"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 08 11:54:16 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:52:18 2009 +0200"
      },
      "message": "block: implement and enforce request peek/start/fetch\n\nTill now block layer allowed two separate modes of request execution.\nA request is always acquired from the request queue via\nelv_next_request().  After that, drivers are free to either dequeue it\nor process it without dequeueing.  Dequeue allows elv_next_request()\nto return the next request so that multiple requests can be in flight.\n\nExecuting requests without dequeueing has its merits mostly in\nallowing drivers for simpler devices which can\u0027t do sg to deal with\nsegments only without considering request boundary.  However, the\nbenefit this brings is dubious and declining while the cost of the API\nambiguity is increasing.  Segment based drivers are usually for very\nold or limited devices and as converting to dequeueing model isn\u0027t\ndifficult, it doesn\u0027t justify the API overhead it puts on block layer\nand its more modern users.\n\nPrevious patches converted all block low level drivers to dequeueing\nmodel.  This patch completes the API transition by...\n\n* renaming elv_next_request() to blk_peek_request()\n\n* renaming blkdev_dequeue_request() to blk_start_request()\n\n* adding blk_fetch_request() which is combination of peek and start\n\n* disallowing completion of queued (not started) requests\n\n* applying new API to all LLDs\n\nRenamings are for consistency and to break out of tree code so that\nit\u0027s apparent that out of tree drivers need updating.\n\n[ Impact: block request issue API cleanup, no functional change ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "296b2f6ae654581adc27f0d6f0af454c7f3d06ee",
      "tree": "8fab2b91741336d41e559a839b547d7ac3090524",
      "parents": [
        "fb3ac7f6b811eac8e0aafa3df1c16ed872e898a8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 08 11:54:15 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:52:17 2009 +0200"
      },
      "message": "block: convert to dequeueing model (easy ones)\n\nplat-omap/mailbox, floppy, viocd, mspro_block, i2o_block and\nmmc/card/queue are already pretty close to dequeueing model and can be\nconverted with simple changes.  Convert them.\n\nWhile at it,\n\n* xen-blkfront: !fs check moved downwards to share dequeue call with\n  normal path.\n\n* mspro_block: __blk_end_request(..., blk_rq_cur_byte()) converted to\n  __blk_end_request_cur()\n\n* mmc/card/queue: loop of __blk_end_request() converted to\n  __blk_end_request_all()\n\n[ Impact: dequeue in-flight request ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "83096ebf1263b2c1ee5e653ba37d993d02e3eb7b",
      "tree": "2226b71a616ec1cb2d37511c6a09ba9507a1cd69",
      "parents": [
        "5b93629b4509c03ffa87a9316412fedf6f58cb37"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:39 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:54 2009 +0200"
      },
      "message": "block: convert to pos and nr_sectors accessors\n\nWith recent cleanups, there is no place where low level driver\ndirectly manipulates request fields.  This means that the \u0027hard\u0027\nrequest fields always equal the !hard fields.  Convert all\nrq-\u003esectors, nr_sectors and current_nr_sectors references to\naccessors.\n\nWhile at it, drop superflous blk_rq_pos() \u003c 0 test in swim.c.\n\n[ Impact: use pos and nr_sectors accessors ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nTested-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nTested-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nAcked-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nAcked-by: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Eric Moore \u003cEric.Moore@lsi.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Dario Ballabio \u003cballabio_dario@emc.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nCc: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f06d9a2b52e246a66b606130cea3f0d7b7be17a7",
      "tree": "020df1f9d54b00c72d8af02ac0827d496597e75a",
      "parents": [
        "40cbbb781d3eba5d6ac0860db078af490e5c7c6b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:19 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:36 2009 +0200"
      },
      "message": "block: replace end_request() with [__]blk_end_request_cur()\n\nend_request() has been kept around for backward compatibility;\nhowever, it\u0027s about time for it to go away.\n\n* There aren\u0027t too many users left.\n\n* Its use of @updtodate is pretty confusing.\n\n* In some cases, newer code ends up using mixture of end_request() and\n  [__]blk_end_request[_all](), which is way too confusing.\n\nSo, add [__]blk_end_request_cur() and replace end_request() with it.\nMost conversions are straightforward.  Noteworthy ones are...\n\n* paride/pcd: next_request() updated to take 0/-errno instead of 1/0.\n\n* paride/pf: pf_end_request() and next_request() updated to take\n  0/-errno instead of 1/0.\n\n* xd: xd_readwrite() updated to return 0/-errno instead of 1/0.\n\n* mtd/mtd_blkdevs: blktrans_discard_request() updated to return\n  0/-errno instead of 1/0.  Unnecessary local variable res\n  initialization removed from mtd_blktrans_thread().\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Joerg Dorchain \u003cjoerg@dorchain.net\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\n"
    },
    {
      "commit": "40cbbb781d3eba5d6ac0860db078af490e5c7c6b",
      "tree": "dec374543cf045fc630bccddbb7646c695094b0d",
      "parents": [
        "b243ddcbe9be146172baa544dadecebf156eda0e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:19 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:35 2009 +0200"
      },
      "message": "block: implement and use [__]blk_end_request_all()\n\nThere are many [__]blk_end_request() call sites which call it with\nfull request length and expect full completion.  Many of them ensure\nthat the request actually completes by doing BUG_ON() the return\nvalue, which is awkward and error-prone.\n\nThis patch adds [__]blk_end_request_all() which takes @rq and @error\nand fully completes the request.  BUG_ON() is added to to ensure that\nthis actually happens.\n\nMost conversions are simple but there are a few noteworthy ones.\n\n* cdrom/viocd: viocd_end_request() replaced with direct calls to\n  __blk_end_request_all().\n\n* s390/block/dasd: dasd_end_request() replaced with direct calls to\n  __blk_end_request_all().\n\n* s390/char/tape_block: tapeblock_end_request() replaced with direct\n  calls to blk_end_request_all().\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a1a15ac5f9aeee521c048a88fc1aec848e623de7",
      "tree": "964c1fe343bbc8edc24003df15dd475f1255e7e5",
      "parents": [
        "559595a985e106d2fa9f0c79b7f5805453fed593"
      ],
      "author": {
        "name": "Kris Shannon",
        "email": "kris@shannon.id.au",
        "time": "Mon Mar 02 19:47:37 2009 +1100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Mar 05 12:04:57 2009 +0100"
      },
      "message": "Fix kernel NULL pointer dereference in xen-blkfront\n\nWhen booting Xen Dom0 on a pre-release 3.2.1 hypervisor the system Oopses on a\n\"Unable to handle kernel NULL pointer dereference\" in xenwatch.\n\nFrom the backtrace it looks like backend_changed is calling bdget_disk\nwith a NULL pointer.  Checking for NULL and returning ENODEV instead\nallows the kernel to boot.\n"
    },
    {
      "commit": "9e973e64ac6dc504e6447d52193d4fff1a670156",
      "tree": "518cb0f34f9229f7faa81754733ce3926b84625c",
      "parents": [
        "1e42807918d17e8c93bf14fbb74be84b141334c1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Feb 24 08:10:09 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Feb 26 10:45:48 2009 +0100"
      },
      "message": "xen/blkfront: use blk_rq_map_sg to generate ring entries\n\nOn occasion, the request will apparently have more segments than we\nfit into the ring. Jens says:\n\n\u003e The second problem is that the block layer then appears to create one\n\u003e too many segments, but from the dump it has rq-\u003enr_phys_segments \u003d\u003d\n\u003e BLKIF_MAX_SEGMENTS_PER_REQUEST. I suspect the latter is due to\n\u003e xen-blkfront not handling the merging on its own. It should check that\n\u003e the new page doesn\u0027t form part of the previous page. The\n\u003e rq_for_each_segment() iterates all single bits in the request, not dma\n\u003e segments. The \"easiest\" way to do this is to call blk_rq_map_sg() and\n\u003e then iterate the mapped sg list. That will give you what you are\n\u003e looking for.\n\n\u003e Here\u0027s a test patch, compiles but otherwise untested. I spent more\n\u003e time figuring out how to enable XEN than to code it up, so YMMV!\n\u003e Probably the sg list wants to be put inside the ring and only\n\u003e initialized on allocation, then you can get rid of the sg on stack and\n\u003e sg_init_table() loop call in the function. I\u0027ll leave that, and the\n\u003e testing, to you.\n\n[Moved sg array into info structure, and initialize once. -J]\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "66d352e1e410dcea22fecb9fa9ec09dd23a62e1c",
      "tree": "70e8ba82d30b0e7d60481e8091fecbfb222b3977",
      "parents": [
        "7d116b626b843c66b17630a62d696e044d049bfc"
      ],
      "author": {
        "name": "Fernando Luis Vázquez Cao",
        "email": "fernando@oss.ntt.co.jp",
        "time": "Mon Oct 27 18:45:54 2008 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Dec 29 08:28:41 2008 +0100"
      },
      "message": "xen-blkfront: set queue paravirt flag\n\nXen\u0027s blkfront sets noop as the default I/O scheduler at initialization\ntime to avoid elevator overheads such as idling, but with the advent of\nbasic disk profiling capabilities this is not necessary anymore. We\nshould just tell the block layer that we are a paravirt front-end driver\nand the elevator will automatically make the necessary adjustments.\n\nSigned-off-by: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "68aee07f9bad2c830a898cf6d6bfc11ea24efc40",
      "tree": "b0d2e14a19c16ab3022ec94641828df71b560c06",
      "parents": [
        "561ec68e4de7947167937c49c451728e6b19e63b"
      ],
      "author": {
        "name": "Zhaolei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Fri Nov 14 09:44:33 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Nov 18 15:08:56 2008 +0100"
      },
      "message": "Release old elevator on change elevator\n\nWe should release old elevator when change to use a new one.\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a63c848b04052acac653d6164160488d6c52ff9e",
      "tree": "b05b5105c3ea29c1f58521604d33005b37ee753c",
      "parents": [
        "961846ca5aae2f39d061e057ae6ad0b54b134008"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 10:23:47 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:48:13 2008 -0400"
      },
      "message": "[PATCH] switch xen\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d4430d62fa77208824a37fe6f85ab2831d274769",
      "tree": "5d4d0bca31e63eb208fbebe4f39c912b964c1e4d",
      "parents": [
        "badf8082c33d18b118d3a6f1b32d5ea6b97d3839"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 09:09:22 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:32 2008 -0400"
      },
      "message": "[PATCH] beginning of methods conversion\n\nTo keep the size of changesets sane we split the switch by drivers;\nto keep the damn thing bisectable we do the following:\n\t1) rename the affected methods, add ones with correct\nprototypes, make (few) callers handle both.  That\u0027s this changeset.\n\t2) for each driver convert to new methods.  *ALL* drivers\nare converted in this series.\n\t3) kill the old (renamed) methods.\n\nNote that it _is_ a flagday; all in-tree drivers are converted and by the\nend of this series no trace of old methods remain.  The only reason why\nwe do that this way is to keep the damn thing bisectable and allow per-driver\ndebugging if anything goes wrong.\n\nNew methods:\n\topen(bdev, mode)\n\trelease(disk, mode)\n\tioctl(bdev, mode, cmd, arg)\t\t/* Called without BKL */\n\tcompat_ioctl(bdev, mode, cmd, arg)\n\tlocked_ioctl(bdev, mode, cmd, arg)\t/* Called with BKL, legacy */\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "365d46dc9be9b3c833990a06f3994b1987eda578",
      "tree": "9397d1304144a288411f2118707f44ff5e862fa6",
      "parents": [
        "5dc64a3442b98eaa0e3730c35fcf00cf962a93e7",
        "fd048088306656824958e7783ffcee27e241b361"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 12 12:35:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 12 12:37:32 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/xen\n\nConflicts:\n\tarch/x86/kernel/cpu/common.c\n\tarch/x86/kernel/process_64.c\n\tarch/x86/xen/enlighten.c\n"
    },
    {
      "commit": "9246b5f06deeea541e7c62437c2ad19a0b1172c0",
      "tree": "b7af564d1e32ce4eceba6f6a438256d6c3ca77fd",
      "parents": [
        "9c02f2b02e29a2244e36c6e1f246080d8afc6cff"
      ],
      "author": {
        "name": "Chris Lalancette",
        "email": "clalance@redhat.com",
        "time": "Wed Sep 17 14:30:32 2008 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:18 2008 +0200"
      },
      "message": "block: Expand Xen blkfront for \u003e 16 xvd\n\nUntil recently, the maximum number of xvd block devices you could attach\nto a Xen domU was 16. This limitation turned out to be problematic for\nsome users, so it was expanded to handle a much larger number of disks.\nHowever, this requires a couple of changes in the way that blkfront\nscans for disks. This functionality is already present in the Xen\nlinux-2.6.18-xen.hg tree; the attached patch adds this functionality to\nthe mainline xen-blkfront implementation. I successfully tested it on a\n2.6.25 tree, and build tested it on 2.6.27-rc3.\n\nSigned-off-by: Chris Lalancette \u003cclalance@redhat.com\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6e833587e11ed0dbf12e647127f2650e2f80b26d",
      "tree": "7ba3d76705547ed1377f87694e0b0e4391fe0015",
      "parents": [
        "170465ee7f5a9a2d0ac71285507e52642e040353"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Tue Aug 19 13:16:17 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 20 12:40:07 2008 +0200"
      },
      "message": "xen: clean up domain mode predicates\n\nThere are four operating modes Xen code may find itself running in:\n - native\n - hvm domain\n - pv dom0\n - pv domU\n\nClean up predicates for testing for these states to make them more consistent.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Xen-devel \u003cxen-devel@lists.xensource.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62aa0054da220b8bbe6f23c0eb1d97a99005d0b3",
      "tree": "fc56b0033c35ac84888cfd48f7013bf3790b3e85",
      "parents": [
        "1ac0ae062cecd37587f5b951089f90e1d9d91769"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Aug 04 11:59:05 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Aug 06 12:30:04 2008 +0200"
      },
      "message": "xen-blkfront.c: make blkif_ioctl() static\n\nThis patch makes the needlessly global blkif_ioctl() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a144ff09bc52ef3f3684ed23eadc9c7c0e57b3aa",
      "tree": "344aa7d4722c4b2c39ca3e2fed302f0ff4d5668b",
      "parents": [
        "5a60d0cd4ff227c4c5212898ecbeeaf5662eb5fa"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "xen: Avoid allocations causing swap activity on the resume path\n\nAvoid allocations causing swap activity on the resume path by\npreventing the allocations from doing IO and allowing them\nto access the emergency pools.\n\nThese paths are used when a frontend device is trying to connect\nto its backend driver over Xenbus.  These reconnections are triggered\non demand by IO, so by definition there is already IO underway,\nand further IO would naturally deadlock.  On resume, this path\nis triggered when the running system tries to continue using its\ndevices.  If it cannot then the resume will fail; to try to avoid this\nwe let it dip into the emergency pools.\n\n[ linux-2.6.18-xen changesets e8b49cfbdac, fdb998e79aba ]\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5a60d0cd4ff227c4c5212898ecbeeaf5662eb5fa",
      "tree": "ce2b2ae5b631c8cac52619acee27fd83d39f742a",
      "parents": [
        "04c0635058256e2f4618139c237e56b5a4bdbb8f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "xen/blkfront: add __exit to module_exit() handlers\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "04c0635058256e2f4618139c237e56b5a4bdbb8f",
      "tree": "37f7b3e44c52568fca7c51c28244fc84c4cb704b",
      "parents": [
        "440a01a7f46742400c74d9d346118523e81d188b"
      ],
      "author": {
        "name": "Wim Colgate",
        "email": "wim@xensource.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "xen/blkfront: Make sure that the device is fully ready before allowing release.\n\n[ linux-2.6.18-xen changeset c1c57fea77e9 ]\n\nSigned-off-by: Wim Colgate \u003cwim@xensource.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "440a01a7f46742400c74d9d346118523e81d188b",
      "tree": "7f79afef47dddad38b488c56e160d39ed034b0d5",
      "parents": [
        "1c91fe1a0d577f2e53475e789c9d63a0feb7d93c"
      ],
      "author": {
        "name": "Christian Limpach",
        "email": "Christian.Limpach@xensource.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "xen/blkfront: Add the CDROM_GET_CAPABILITY ioctl to blkfront.\n\nReturn 0 instead of -EINVAL if the blkfront device is a cdrom,\ni.e. had the VDISK_CDROM attribute.  This allows udev\u0027s cdrom_id\nto correctly detect the device as a cdrom device.\n\n[ Add blkif_ioctl, and CDROMMULTISESSION ]\n\n[ linux-2.6.18-xen changeset d2bd9af846b5 ]\n\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@xensource.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1c91fe1a0d577f2e53475e789c9d63a0feb7d93c",
      "tree": "1d0657d99382af8f268b4b4ec960e6d210a0ec96",
      "parents": [
        "244b4d56f85bcd11b21ab0b94845a3dabeed5c10"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@xensource.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "xen/blkfront: Make sure we don\u0027t use bounce buffers, we don\u0027t need them.\n\n[ linux-2.6.18-xen changeset 667228bf8fc5 ]\n\nSigned-off-by: Ian Campbell \u003cian.campbell@xensource.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "afe42d7dea2983faa593d289ab241ffdd94d37b3",
      "tree": "a407fc55cb1328041a031c0a78bc2e6ce38e8330",
      "parents": [
        "c9e587abfdec2c2aaa55fab83bcb4972e2f84f9b"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Tue Apr 29 00:59:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:06 2008 -0700"
      },
      "message": "xen: make blkif_getgeo static\n\nIntroduced between 2.6.25-rc2 and -rc3\ndrivers/block/xen-blkfront.c:139:5: warning: symbol \u0027blkif_getgeo\u0027 was not declared. Should it be static?\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\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": "4f93f09b72d6ff47b2399b79ed6d1cbc7dbf991b",
      "tree": "8f29c6914c3c9a8932c1dc715376034663b8511d",
      "parents": [
        "d2f0c52bec954460e72dee48f3a29c6f310d76be"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Wed Apr 02 10:54:06 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen: Add compatibility aliases for frontend drivers\n\nBefore getting merged, xen-blkfront was xenblk and\nxen-netfront was xennet.\n\nTemporarily adding compatibility module aliases\neases upgrades from older versions by e.g. allowing\nmkinitrd to find the new version of the module.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d2f0c52bec954460e72dee48f3a29c6f310d76be",
      "tree": "9793e3f539f9eacd37b3183c8becd3190df535c4",
      "parents": [
        "1d78d7055629e3f6300d6b8d7028259ee2bffc0e"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Wed Apr 02 10:54:05 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen: Module autoprobing support for frontend drivers\n\nAdd module aliases to support autoprobing modules\nfor xen frontend devices.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1d78d7055629e3f6300d6b8d7028259ee2bffc0e",
      "tree": "20bf47ccdd80ead20c69f8a536849c9cf8dd3223",
      "parents": [
        "53f0e8afcb0d57cfaff06b89eb8b5302f167577e"
      ],
      "author": {
        "name": "Christian Limpach",
        "email": "Christian.Limpach@xensource.com",
        "time": "Wed Apr 02 10:54:04 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen blkfront: Delay wait for block devices until after the disk is added\n\nWhen the xen block frontend driver is built as a module the module load\nis only synchronous up to the point where the frontend and the backend\nbecome connected rather than when the disk is added.\n\nThis means that there can be a race on boot between loading the module and\nloading the dm-* modules and doing the scan for LVM physical volumes (all\nin the initrd). In the failure case the disk is not present until after the\nscan for physical volumes is complete.\n\nTaken from:\n\n  http://xenbits.xensource.com/linux-2.6.18-xen.hg?rev/11483a00c017\n\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@xensource.com\u003e\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "53f0e8afcb0d57cfaff06b89eb8b5302f167577e",
      "tree": "2bfdddbb5b171bdae882b5ac829e0ecefc45f5a5",
      "parents": [
        "3e334239d89d4a71610be5a3e8432464d421d9ec"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Apr 02 10:54:03 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen/blkfront: use bdget_disk\n\ninfo-\u003edev is never initialized to anything, so bdget(info-\u003edev) is\nmeaningless.  Get rid of info-\u003edev, and use bdget_disk on the gendisk.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3e334239d89d4a71610be5a3e8432464d421d9ec",
      "tree": "cbe48c21488b81652c3feb179a7d6584e7b5278c",
      "parents": [
        "b15993fcc1bf15f717fb4414b32e4a11534dfdc4"
      ],
      "author": {
        "name": "Markus Armbruster",
        "email": "armbru@redhat.com",
        "time": "Wed Apr 02 10:54:02 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:32 2008 +0200"
      },
      "message": "xen: Make xen-blkfront write its protocol ABI to xenstore\n\nFrontends are expected to write their protocol ABI to xenstore.  Since\nthe protocol ABI defaults to the backend\u0027s native ABI, things work\nfine without that as long as the frontend\u0027s native ABI is identical to\nthe backend\u0027s native ABI.  This is not the case for xen-blkfront\nrunning 32-on-64, because its ABI differs between 32 and 64 bit, and\nthus needs this fix.\n\nBased on http://xenbits.xensource.com/xen-unstable.hg?rev/c545932a18f3\nand http://xenbits.xensource.com/xen-unstable.hg?rev/ffe52263b430 by\nGerd Hoffmann \u003ckraxel@suse.de\u003e\n\nSigned-off-by: Markus Armbruster \u003carmbru@redhat.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cJeremy.Fitzhardinge@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "597592d951cdca8e5edb29f7e8174f633a69685a",
      "tree": "7bbdf03e4cdc94086489616c65759962e6fb28f1",
      "parents": [
        "0f151e8b214c1df3f571020b849382933f2cdce7"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ijc@hellion.org.uk",
        "time": "Thu Feb 21 13:03:45 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 21 16:19:13 2008 -0800"
      },
      "message": "xen: Implement getgeo for Xen virtual block device.\n\nThe below implements the getgeo hook for Xen block devices. Extracted\nfrom the xen-unstable tree where it has been used for ages.\n\nIt is useful to have because it allows things like grub2 (used by the\nDebian installer images) to work in a guest domain without having to\nsprinkle Xen specific hacks around the place.\n\nSigned-off-by: Ian Campbell \u003cijc@hellion.org.uk\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f530f036378421fb0b59bb829a8097a50bca79e2",
      "tree": "74ff62e7b4a26fce50b4aea159f63fa56a737d06",
      "parents": [
        "b2aec24ea4c5836f9b3cbc7dca51f0ae639865ed"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Tue Dec 11 17:47:36 2007 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:36:46 2008 +0100"
      },
      "message": "blk_end_request: changing xen-blkfront (take 4)\n\nThis patch converts xen-blkfront to use blk_end_request interfaces.\nRelated \u0027uptodate\u0027 arguments are converted to \u0027error\u0027.\n\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6c92e699b56287da582ccb12a64b959b6d6109ba",
      "tree": "ac8c9f26640ff8b35cd96f8222f8ce84ba2c53e5",
      "parents": [
        "bc1c56fde6dd1c85e2047c276456c07bd4508b5c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Aug 16 13:43:12 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Fixup rq_for_each_segment() indentation\n\nRemove one level of nesting where appropriate.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5705f7021748a69d84d6567e68e8851dab551464",
      "tree": "5a6dbc8fc6055c0334f4a97540e36a7844b9c482",
      "parents": [
        "9dfa52831e96194b8649613e3131baa2c109f7dc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 25 12:35:59 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Introduce rq_for_each_segment replacing rq_for_each_bio\n\nEvery usage of rq_for_each_bio wraps a usage of\nbio_for_each_segment, so these can be combined into\nrq_for_each_segment.\n\nWe define \"struct req_iterator\" to hold the \u0027bio\u0027 and \u0027index\u0027 that\nare needed for the double iteration.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\n\nVarious compile fixes by me...\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9f27ee595038653ddf8bca871200d39247d6f4fc",
      "tree": "602b4fe83ccfd6cb65b146ed80e84baec0fb6cb7",
      "parents": [
        "4bac07c993d03434ea902d3d4290d9e45944b66c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:45 2007 -0700"
      },
      "message": "xen: add virtual block device driver.\n\nThe block device frontend driver allows the kernel to access block\ndevices exported exported by a virtual machine containing a physical\nblock device driver.\n\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    }
  ]
}
