)]}'
{
  "log": [
    {
      "commit": "8605067fb9b8e34aecf44ec258657c9cc009fc5a",
      "tree": "5c646866a1ef241674600764158c9eb340a5d543",
      "parents": [
        "e77c78c02290c27925f67cd35b497e99ee0d6fe1"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Thu Apr 05 16:04:52 2012 +0100"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri May 11 16:11:54 2012 -0400"
      },
      "message": "xen-blkfront: module exit handling adjustments\n\nThe blkdev major must be released upon exit, or else the module can\u0027t\nattach to devices using the same majors upon being loaded again. Also\navoid leaking the minor tracking bitmap.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "e77c78c02290c27925f67cd35b497e99ee0d6fe1",
      "tree": "779e1f9d6e3a8abf5e14711043504b768cc1ef97",
      "parents": [
        "e816b57a337ea3b755de72bec38c10c864f23015"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Thu Apr 05 16:37:22 2012 +0100"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri May 11 16:11:52 2012 -0400"
      },
      "message": "xen-blkfront: properly name all devices\n\n- devices beyond xvdzz didn\u0027t get proper names assigned at all\n- extended devices with minors not representable within the kernel\u0027s\n  major/minor bit split spilled into foreign majors\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "c104f1fa1ecf4ee0fc06e31b1f77630b2551be81",
      "tree": "31c9e009409cc0b26b6d69adf48d49b08aded978",
      "parents": [
        "d8dd0b6d4836bce81cece60509ef3b157a420776",
        "63634806519b49bb43f37e53a1e8366eb3e846a4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 13 18:45:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 13 18:45:13 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4/drivers\u0027 of git://git.kernel.dk/linux-block\n\nPull block driver bits from Jens Axboe:\n\n - A series of fixes for mtip32xx.  Most from Asai at Micron, but also\n   one from Greg, getting rid of the dependency on PCIE_HOTPLUG.\n\n - A few bug fixes for xen-blkfront, and blkback.\n\n - A virtio-blk fix for Vivek, making resize actually work.\n\n - Two fixes from Stephen, making larger transfers possible on cciss.\n   This is needed for tape drive support.\n\n* \u0027for-3.4/drivers\u0027 of git://git.kernel.dk/linux-block:\n  block: mtip32xx: remove HOTPLUG_PCI_PCIE dependancy\n  mtip32xx: dump tagmap on failure\n  mtip32xx: fix handling of commands in various scenarios\n  mtip32xx: Shorten macro names\n  mtip32xx: misc changes\n  mtip32xx: Add new sysfs entry \u0027status\u0027\n  mtip32xx: make setting comp_time as common\n  mtip32xx: Add new bitwise flag \u0027dd_flag\u0027\n  mtip32xx: fix error handling in mtip_init()\n  virtio-blk: Call revalidate_disk() upon online disk resize\n  xen/blkback: Make optional features be really optional.\n  xen/blkback: Squash the discard support for \u0027file\u0027 and \u0027phy\u0027 type.\n  mtip32xx: fix incorrect value set for drv_cleanup_done, and re-initialize and start port in mtip_restart_port()\n  cciss: Fix scsi tape io with more than 255 scatter gather elements\n  cciss: Initialize scsi host max_sectors for tape drive support\n  xen-blkfront: make blkif_io_lock spinlock per-device\n  xen/blkfront: don\u0027t put bdev right after getting it\n  xen-blkfront: use bitmap_set() and bitmap_clear()\n  xen/blkback: Enable blkback on HVM guests\n  xen/blkback: use grant-table.c hypercall wrappers\n"
    },
    {
      "commit": "9479f0f8018a0317b0b5e0c2b338bec6e26fdf2d",
      "tree": "7eab154e6eef458f0612b3f80604be73812e0737",
      "parents": [
        "1ddca05743525689421383d2dda1ec34df26157e",
        "f09d8432e39797abf39531f41ac8a46a3fbf442a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 06 17:54:53 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 06 17:54:53 2012 -0700"
      },
      "message": "Merge tag \u0027stable/for-linus-3.4-rc1-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\nPull xen fixes from Konrad Rzeszutek Wilk:\n \"Two fixes for regressions:\n   * one is a workaround that will be removed in v3.5 with proper fix in\n     the tip/x86 tree,\n   * the other is to fix drivers to load on PV (a previous patch made\n     them only load in PVonHVM mode).\n\n  The rest are just minor fixes in the various drivers and some cleanup\n  in the core code.\"\n\n* tag \u0027stable/for-linus-3.4-rc1-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen/pcifront: avoid pci_frontend_enable_msix() falsely returning success\n  xen/pciback: fix XEN_PCI_OP_enable_msix result\n  xen/smp: Remove unnecessary call to smp_processor_id()\n  xen/x86: Workaround \u0027x86/ioapic: Add register level checks to detect bogus io-apic entries\u0027\n  xen: only check xen_platform_pci_unplug if hvm\n"
    },
    {
      "commit": "e95ae5a4939c52ccab02a49238d5d15d492b2598",
      "tree": "0b531cd78d48bc56d4046201094e164db7982d4e",
      "parents": [
        "df7a3ee29b775edd1c2d75cf0b128b174bd4091e"
      ],
      "author": {
        "name": "Igor Mammedov",
        "email": "imammedo@redhat.com",
        "time": "Tue Mar 27 19:31:08 2012 +0200"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Apr 06 12:12:52 2012 -0400"
      },
      "message": "xen: only check xen_platform_pci_unplug if hvm\n\ncommit b9136d207f08\n  xen: initialize platform-pci even if xen_emul_unplug\u003dnever\n\nbreaks blkfront/netfront by not loading them because of\nxen_platform_pci_unplug\u003d0 and it is never set for PV guest.\n\nSigned-off-by: Andrew Jones \u003cdrjones@redhat.com\u003e\nSigned-off-by: Igor Mammedov \u003cimammedo@redhat.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "e22057c8599373e5caef0bc42bdb95d2a361ab0d",
      "tree": "04e9f51835f4d5c08aada38597c30de1113c03d9",
      "parents": [
        "496b919b3bdd957d4b1727df79bfa3751bced1c1",
        "df7a3ee29b775edd1c2d75cf0b128b174bd4091e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 12:20:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 12:20:25 2012 -0700"
      },
      "message": "Merge tag \u0027stable/for-linus-3.4-tag-two\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\nPull more xen updates from Konrad Rzeszutek Wilk:\n \"One tiny feature that accidentally got lost in the initial git pull:\n   * Add fast-EOI acking of interrupts (clear a bit instead of\n     hypercall)\n  And bug-fixes:\n   * Fix CPU bring-up code missing a call to notify other subsystems.\n   * Fix reading /sys/hypervisor even if PVonHVM drivers are not loaded.\n   * In Xen ACPI processor driver: remove too verbose WARN messages, fix\n     up the Kconfig dependency to be a module by default, and add\n     dependency on CPU_FREQ.\n   * Disable CPU frequency drivers from loading when booting under Xen\n     (as we want the Xen ACPI processor to be used instead).\n   * Cleanups in tmem code.\"\n\n* tag \u0027stable/for-linus-3.4-tag-two\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen/acpi: Fix Kconfig dependency on CPU_FREQ\n  xen: initialize platform-pci even if xen_emul_unplug\u003dnever\n  xen/smp: Fix bringup bug in AP code.\n  xen/acpi: Remove the WARN\u0027s as they just create noise.\n  xen/tmem: cleanup\n  xen: support pirq_eoi_map\n  xen/acpi-processor: Do not depend on CPU frequency scaling drivers.\n  xen/cpufreq: Disable the cpu frequency scaling drivers from loading.\n  provide disable_cpufreq() function to disable the API.\n"
    },
    {
      "commit": "b9136d207f0c05c96c6b9c980fa7f7fd541a65a8",
      "tree": "c5782f620475131fbd838cec21376c1a2dad7ff5",
      "parents": [
        "106b44388d8f76373149c4ea144f717b6d4d9a6d"
      ],
      "author": {
        "name": "Igor Mammedov",
        "email": "imammedo@redhat.com",
        "time": "Wed Mar 21 15:08:38 2012 +0100"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Mar 22 11:37:11 2012 -0400"
      },
      "message": "xen: initialize platform-pci even if xen_emul_unplug\u003dnever\n\nWhen xen_emul_unplug\u003dnever is specified on kernel command line\nreading files from /sys/hypervisor is broken (returns -EBUSY).\nIt is caused by xen_bus dependency on platform-pci and\nplatform-pci isn\u0027t initialized when xen_emul_unplug\u003dnever is\nspecified.\n\nFix it by allowing platform-pci to ignore xen_emul_unplug\u003dnever,\nand do not intialize xen_[blk|net]front instead.\n\nSigned-off-by: Igor Mammedov \u003cimammedo@redhat.com\u003e\nAcked-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "3467811e26660eb46bc655234573d22d6876d5f9",
      "tree": "b57b2cdc3d373af79062bc26cd71500773c64fb5",
      "parents": [
        "dad5cf659b202b5070c8616b5c515f6ca4db0c42"
      ],
      "author": {
        "name": "Steven Noonan",
        "email": "snoonan@amazon.com",
        "time": "Fri Feb 17 12:04:44 2012 -0800"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Tue Mar 20 12:52:41 2012 +0100"
      },
      "message": "xen-blkfront: make blkif_io_lock spinlock per-device\n\nThis patch moves the global blkif_io_lock to the per-device structure. The\nspinlock seems to exists for two reasons: to disable IRQs when in the interrupt\nhandlers for blkfront, and to protect the blkfront VBDs when a detachment is\nrequested.\n\nHaving a global blkif_io_lock doesn\u0027t make sense given the use case, and it\ndrastically hinders performance due to contention. All VBDs with pending IOs\nhave to take the lock in order to get work done, which serializes everything\npretty badly.\n\nSigned-off-by: Steven Noonan \u003csnoonan@amazon.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "dad5cf659b202b5070c8616b5c515f6ca4db0c42",
      "tree": "0ca624ebdcf62e2ddc7a25b749ba8f3c3c953bde",
      "parents": [
        "34ae2e47d97216d8c66a1c5dff5b530c29b746b8"
      ],
      "author": {
        "name": "Andrew Jones",
        "email": "drjones@redhat.com",
        "time": "Thu Feb 16 13:16:25 2012 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Tue Mar 20 12:52:41 2012 +0100"
      },
      "message": "xen/blkfront: don\u0027t put bdev right after getting it\n\nWe should hang onto bdev until we\u0027re done with it.\n\nSigned-off-by: Andrew Jones \u003cdrjones@redhat.com\u003e\n[v1: Fixed up git commit description]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "34ae2e47d97216d8c66a1c5dff5b530c29b746b8",
      "tree": "0e155e534ec47258522800ab36b609fbaadf550c",
      "parents": [
        "b2167ba6dd89d55ced26a867fad8f0fe388fd595"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Sat Jan 21 00:15:26 2012 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Tue Mar 20 12:52:41 2012 +0100"
      },
      "message": "xen-blkfront: use bitmap_set() and bitmap_clear()\n\nUse bitmap_set and bitmap_clear rather than modifying individual bits\nin a memory region.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: xen-devel@lists.xensource.com\nCc: virtualization@lists.linux-foundation.org\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "16008d641670571ff4cd750b416c7caf2d89f467",
      "tree": "6dc32821bd4576106cee50d52a90a8106a9d481f",
      "parents": [
        "b3c9dd182ed3bdcdaf0e42625a35924b0497afdc",
        "85a0f7b220777cd3c232fd2f079db5c4a874c4ee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 12:48:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 12:48:41 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.3/drivers\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-3.3/drivers\u0027 of git://git.kernel.dk/linux-block:\n  mtip32xx: do rebuild monitoring asynchronously\n  xen-blkfront: Use kcalloc instead of kzalloc to allocate array\n  mtip32xx: uninitialized variable in mtip_quiesce_io()\n  mtip32xx: updates based on feedback\n  xen-blkback: convert hole punching to discard request on loop devices\n  xen/blkback: Move processing of BLKIF_OP_DISCARD from dispatch_rw_block_io\n  xen/blk[front|back]: Enhance discard support with secure erasing support.\n  xen/blk[front|back]: Squash blkif_request_rw and blkif_request_discard together\n  mtip32xx: update to new -\u003emake_request() API\n  mtip32xx: add module.h include to avoid conflict with moduleh tree\n  mtip32xx: mark a few more items static\n  mtip32xx: ensure that all local functions are static\n  mtip32xx: cleanup compat ioctl handling\n  mtip32xx: fix warnings/errors on 32-bit compiles\n  block: Add driver for Micron RealSSD pcie flash cards\n"
    },
    {
      "commit": "73db144b58a32fc39733db6a7e1fe582072ad26a",
      "tree": "f03edee848be5aa085c30d493c02a5ee1b8fc3da",
      "parents": [
        "2e16341438c9eca15a2e0bb2ad8555bbdf24b86d"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Thu Dec 22 09:08:13 2011 +0000"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Wed Jan 04 17:01:17 2012 -0500"
      },
      "message": "Xen: consolidate and simplify struct xenbus_driver instantiation\n\nThe \u0027name\u0027, \u0027owner\u0027, and \u0027mod_name\u0027 members are redundant with the\nidentically named fields in the \u0027driver\u0027 sub-structure. Rather than\nswitching each instance to specify these fields explicitly, introduce\na macro to simplify this.\n\nEliminate further redundancy by allowing the drvname argument to\nDEFINE_XENBUS_DRIVER() to be blank (in which case the first entry from\nthe ID table will be used for .driver.name).\n\nAlso eliminate the questionable xenbus_register_{back,front}end()\nwrappers - their sole remaining purpose was the checking of the\n\u0027owner\u0027 field, proper setting of which shouldn\u0027t be an issue anymore\nwhen the macro gets used.\n\nv2: Restore DRV_NAME for the driver name in xen-pciback.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Florian Tobias Schandinat \u003cFlorianSchandinat@gmx.de\u003e\nCc: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "f094148a1751d6ece9374851eb2926bc3cfd16ef",
      "tree": "9fd00d17a10378b443ef4d783c77df6bdbe78b82",
      "parents": [
        "ae18be11b5ccc3be9e268592616488c5f9d987f5"
      ],
      "author": {
        "name": "Thomas Meyer",
        "email": "thomas@m3y3r.de",
        "time": "Tue Nov 29 22:08:00 2011 +0100"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Dec 16 12:36:52 2011 -0500"
      },
      "message": "xen-blkfront: Use kcalloc instead of kzalloc to allocate array\n\nThe advantage of kcalloc is, that will prevent integer overflows which could\nresult from the multiplication of number of elements and size and it is also\na bit nicer to read.\n\nThe semantic patch that makes this change is available\nin https://lkml.org/lkml/2011/11/25/107\n\nSigned-off-by: Thomas Meyer \u003cthomas@m3y3r.de\u003e\n[v1: Seperated the drivers/block/cciss_scsi.c out of this patch]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "5ea42986694a96542644f9cae8b122d3a00c508f",
      "tree": "dd74685d8cd41e39ad14e708cb6e00e0ed016fb1",
      "parents": [
        "97e36834f5a106459ab1b290e663a4eb6264639e"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Wed Oct 12 16:23:30 2011 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Nov 18 13:28:01 2011 -0500"
      },
      "message": "xen/blk[front|back]: Enhance discard support with secure erasing support.\n\nPart of the blkdev_issue_discard(xx) operation is that it can also\nissue a secure discard operation that will permanantly remove the\nsectors in question. We advertise that we can support that via the\n\u0027discard-secure\u0027 attribute and on the request, if the \u0027secure\u0027 bit\nis set, we will attempt to pass in REQ_DISCARD | REQ_SECURE.\n\nCC: Li Dongyang \u003clidongyang@novell.com\u003e\n[v1: Used \u0027flag\u0027 instead of \u0027secure:1\u0027 bit]\n[v2: Use \u0027reserved\u0027 uint8_t instead of adding a new value]\n[v3: Check for nseg when mapping instead of operation]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "97e36834f5a106459ab1b290e663a4eb6264639e",
      "tree": "39e4843998cb7f75b94d80f27e4b11ffb3662f28",
      "parents": [
        "cfcfc9eca2bcbd26a8e206baeb005b055dbf8e37"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Wed Oct 12 12:12:36 2011 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Nov 18 13:27:59 2011 -0500"
      },
      "message": "xen/blk[front|back]: Squash blkif_request_rw and blkif_request_discard together\n\nIn a union type structure to deal with the overlapping\nattributes in a easier manner.\n\nSuggested-by: Ian Campbell \u003cIan.Campbell@citrix.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "3d0a8d10cfb4cc3d1877c29a866ee7d8a46aa2fa",
      "tree": "11a85044d1472f5972ae47ce10a2f446ad981e9f",
      "parents": [
        "b4fdcb02f1e39c27058a885905bd0277370ba441",
        "a0eda62552eba4e1f92d5354bb65c68fb6b45f87"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 04 17:22:14 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 04 17:22:14 2011 -0700"
      },
      "message": "Merge branch \u0027for-3.2/drivers\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-3.2/drivers\u0027 of git://git.kernel.dk/linux-block: (30 commits)\n  virtio-blk: use ida to allocate disk index\n  hpsa: add small delay when using PCI Power Management to reset for kump\n  cciss: add small delay when using PCI Power Management to reset for kump\n  xen/blkback: Fix two races in the handling of barrier requests.\n  xen/blkback: Check for proper operation.\n  xen/blkback: Fix the inhibition to map pages when discarding sector ranges.\n  xen/blkback: Report VBD_WSECT (wr_sect) properly.\n  xen/blkback: Support \u0027feature-barrier\u0027 aka old-style BARRIER requests.\n  xen-blkfront: plug device number leak in xlblk_init() error path\n  xen-blkfront: If no barrier or flush is supported, use invalid operation.\n  xen-blkback: use kzalloc() in favor of kmalloc()+memset()\n  xen-blkback: fixed indentation and comments\n  xen-blkfront: fix a deadlock while handling discard response\n  xen-blkfront: Handle discard requests.\n  xen-blkback: Implement discard requests (\u0027feature-discard\u0027)\n  xen-blkfront: add BLKIF_OP_DISCARD and discard request struct\n  drivers/block/loop.c: remove unnecessary bdev argument from loop_clr_fd()\n  drivers/block/loop.c: emit uevent on auto release\n  drivers/block/cpqarray.c: use pci_dev-\u003erevision\n  loop: always allow userspace partitions and optionally support automatic scanning\n  ...\n\nFic up trivial header file includsion conflict in drivers/block/loop.c\n"
    },
    {
      "commit": "469738e675524b6aa029ecd46bdda3f878b12eff",
      "tree": "3eb7ba048443b12adebebff8b76d9b60633c4f49",
      "parents": [
        "d11e6158307bed3f178399a4e6216eec67d16200"
      ],
      "author": {
        "name": "Laszlo Ersek",
        "email": "lersek@redhat.com",
        "time": "Fri Oct 07 21:34:38 2011 +0200"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Oct 13 09:48:35 2011 -0400"
      },
      "message": "xen-blkfront: plug device number leak in xlblk_init() error path\n\n... though after a failed xenbus_register_frontend() all may be lost.\n\nAcked-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nSigned-off-by: Laszlo Ersek \u003clersek@redhat.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "d11e6158307bed3f178399a4e6216eec67d16200",
      "tree": "c5fa6989bcba7d39b3924628c60e386e3f24edcc",
      "parents": [
        "8e6dc6fe51957116d363204a725c1262b4b78e19"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Fri Sep 16 15:15:14 2011 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Oct 13 09:48:35 2011 -0400"
      },
      "message": "xen-blkfront: If no barrier or flush is supported, use invalid operation.\n\nGuard against issuing BLKIF_OP_WRITE_BARRIER or BLKIF_OP_FLUSH_CACHE\nby checking whether we successfully negotiated with the backend.\nThe negotiation with the backend also sets the q-\u003eflush_flags which\nfortunately for us is also used when submitting an bio to us. If\nwe don\u0027t support barriers or flushes it would be set to zero so\nwe should never end up having to deal with REQ_FLUSH | REQ_FUA.\n\nHowever, other third party implementations of __make_request that\nmight be stacked on top of us might not be so smart, so lets fix this up.\n\nAcked-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "69ef68cef961a934c35308843a04b26d91cad4a8",
      "tree": "bf7bebecdcd53aa75f80fb1e066f2293a2483916",
      "parents": [
        "ed30bf317c5ceb25166cdbce3e0b35e33c82b509"
      ],
      "author": {
        "name": "Li Dongyang",
        "email": "lidongyang@novell.com",
        "time": "Wed Sep 14 14:02:40 2011 +0800"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Oct 13 09:48:32 2011 -0400"
      },
      "message": "xen-blkfront: fix a deadlock while handling discard response\n\nWhen we get -EOPNOTSUPP response for a discard request, we will clear\nthe discard flag on the request queue so we won\u0027t attempt to send discard\nrequests to backend again, and this should be protected under rq-\u003equeue_lock.\nHowever, when we setup the request queue, we pass blkif_io_lock to\nblk_init_queue so rq-\u003equeue_lock is blkif_io_lock indeed, and this lock\nis already taken when we are in blkif_interrpt, so remove the\nspin_lock/spin_unlock when we clear the discard flag or we will end up\nwith deadlock here\n\nSigned-off-by: Li Dongyang \u003clidongyang@novell.com\u003e\n[v1: Updated description a bit and removed comment from source]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "ed30bf317c5ceb25166cdbce3e0b35e33c82b509",
      "tree": "112e4e184a29e64b618f83da873333abae25f11e",
      "parents": [
        "b3cb0d6adc4bbc70b5e37e49a6068e973545ead7"
      ],
      "author": {
        "name": "Li Dongyang",
        "email": "lidongyang@novell.com",
        "time": "Thu Sep 01 18:39:09 2011 +0800"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Oct 13 09:48:31 2011 -0400"
      },
      "message": "xen-blkfront: Handle discard requests.\n\nIf the backend advertises \u0027feature-discard\u0027, then interrogate\nthe backend for alignment and granularity. Setup the request\nqueue with the appropiate values and send the discard operation\nas required.\n\nSigned-off-by: Li Dongyang \u003clidongyang@novell.com\u003e\n[v1: Amended commit description]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "89153b5cae9f40c224a5d321665a97bf14220c2c",
      "tree": "00290a8a37e49c1dea67be06e2640f26677364c2",
      "parents": [
        "196cfe2ae8fcdc03b3c7d627e7dfe8c0ce7229f9"
      ],
      "author": {
        "name": "Stefan Bader",
        "email": "stefan.bader@canonical.com",
        "time": "Thu Jul 14 15:30:37 2011 +0200"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Jul 14 14:19:51 2011 -0400"
      },
      "message": "xen-blkfront: Fix one off warning about name clash\n\nAvoid telling users to use xvde and onwards when using xvde.\n\nAcked-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nSigned-off-by: Stefan Bader \u003cstefan.bader@canonical.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "196cfe2ae8fcdc03b3c7d627e7dfe8c0ce7229f9",
      "tree": "6d9150912d9ad4c9d6749430532e87e98a47c360",
      "parents": [
        "a7e9357f10744c3392ce3cd735c690ee513c7375"
      ],
      "author": {
        "name": "Stefan Bader",
        "email": "stefan.bader@canonical.com",
        "time": "Thu Jul 14 15:30:22 2011 +0200"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu Jul 14 14:19:33 2011 -0400"
      },
      "message": "xen-blkfront: Drop name and minor adjustments for emulated scsi devices\n\nThese were intended to avoid the namespace clash when representing\nemulated IDE and SCSI devices. However that seems to confuse users\nmore than expected (a disk defined as sda becomes xvde).\nSo for now go back to the scheme which does no adjustments. This\nwill break when mixing IDE and SCSI names in the configuration of\nguests but should be by now expected.\n\nAcked-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nSigned-off-by: Stefan Bader \u003cstefan.bader@canonical.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "edf6ef59ec7ee82cadc93528229c4097b6c92a7e",
      "tree": "b864418f5ba692535f619b7fd38dc7cf4960f830",
      "parents": [
        "6dcfb751c927879399e404b3885cbdef7d8d368b"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Tue May 03 12:01:11 2011 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu May 12 08:56:03 2011 -0400"
      },
      "message": "xen-blkfront: Introduce BLKIF_OP_FLUSH_DISKCACHE support.\n\nIf the backend supports the \u0027feature-flush-cache\u0027 mode, use that\ninstead of the \u0027feature-barrier\u0027 support.\n\nCurrently there are three backends that support the \u0027feature-flush-cache\u0027\nmode: NetBSD, Solaris and Linux kernel. The \u0027flush\u0027 option is much\nlight-weight version than the \u0027barrier\u0027 support so lets try to use as\nthere are no filesystems in the kernel that use full barriers anymore.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "4352b47ab7918108b389a48d2163c9a4c2aaf139",
      "tree": "0cff95e7f551f838de24c516d241449bfb4e07d3",
      "parents": [
        "edc83d47a9928281ecf6fb709753edb3c58ae7f1"
      ],
      "author": {
        "name": "Marek Marczykowski",
        "email": "marmarek@mimuw.edu.pl",
        "time": "Tue May 03 12:04:52 2011 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Thu May 12 08:55:51 2011 -0400"
      },
      "message": "xen-blkfront: fix data size for xenbus_gather in blkfront_connect\n\nbarrier variable is int, not long. This overflow caused another variable\noverride: \"err\" (in PV code) and \"binfo\" (in xenlinux code -\ndrivers/xen/blkfront/blkfront.c). The later caused incorrect device\nflags (RO/removable etc).\n\nSigned-off-by: Marek Marczykowski \u003cmarmarek@mimuw.edu.pl\u003e\nAcked-by: Ian Campbell \u003cIan.Campbell@citrix.com\u003e\n[v1: Changed title]\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "76ca07832842100b14a31ad8996dab7b0c28aa42",
      "tree": "496df81083fda9be38f8ff88cdc3ef59c2d72a8d",
      "parents": [
        "27d2a8b97ebc4467e47722415b81ebe72d5f654f",
        "b056b6a0144de90707cd22cf7b4f60bf69c86d59"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 10:59:09 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 15 10:59:09 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://xenbits.xen.org/people/sstabellini/linux-pvhvm\n\n* \u0027for-linus\u0027 of git://xenbits.xen.org/people/sstabellini/linux-pvhvm:\n  xen: suspend: remove xen_hvm_suspend\n  xen: suspend: pull pre/post suspend hooks out into suspend_info\n  xen: suspend: move arch specific pre/post suspend hooks into generic hooks\n  xen: suspend: refactor non-arch specific pre/post suspend hooks\n  xen: suspend: add \"arch\" to pre/post suspend hooks\n  xen: suspend: pass extra hypercall argument via suspend_info struct\n  xen: suspend: refactor cancellation flag into a structure\n  xen: suspend: use HYPERVISOR_suspend for PVHVM case instead of open coding\n  xen: switch to new schedop hypercall by default.\n  xen: use new schedop interface for suspend\n  xen: do not respond to unknown xenstore control requests\n  xen: fix compile issue if XEN is enabled but XEN_PVHVM is disabled\n  xen: PV on HVM: support PV spinlocks and IPIs\n  xen: make the ballon driver work for hvm domains\n  xen-blkfront: handle Xen major numbers other than XENVBD\n  xen: do not use xen_info on HVM, set pv_info name to \"Xen HVM\"\n  xen: no need to delay xen_setup_shutdown_event for hvm guests anymore\n"
    },
    {
      "commit": "51de69523ffe1c17994dc2f260369f29dfdce71c",
      "tree": "8e118a1c94cf6aec4cf4a42d0510f85b6a2b669a",
      "parents": [
        "c56eb8fb6dccb83d9fe62fd4dc00c834de9bc470"
      ],
      "author": {
        "name": "Owen Smith",
        "email": "owen.smith@citrix.com",
        "time": "Wed Dec 22 15:05:00 2010 +0000"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Tue Mar 08 15:07:00 2011 -0500"
      },
      "message": "xen: Union the blkif_request request specific fields\n\nPrepare for extending the block device ring to allow request\nspecific fields, by moving the request specific fields for\nreads, writes and barrier requests to a union member.\n\nAcked-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nSigned-off-by: Owen Smith \u003cowen.smith@citrix.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "c80a420995e721099906607b07c09a24543b31d9",
      "tree": "14b5a0b6b7af7b183e6d8f3f7623591de09872dd",
      "parents": [
        "cff520b9c2ee1486ea9ff1dbc774510c62e5ecb9"
      ],
      "author": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Thu Dec 02 17:55:00 2010 +0000"
      },
      "committer": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Fri Feb 25 16:43:05 2011 +0000"
      },
      "message": "xen-blkfront: handle Xen major numbers other than XENVBD\n\nThis patch makes sure blkfront handles correctly virtual device numbers\ncorresponding to Xen emulated IDE and SCSI disks: in those cases\nblkfront translates the major number to XENVBD and the minor number to a\nlow xvd minor.\n\nNote: this behaviour is different from what old xenlinux PV guests used\nto do: they used to steal an IDE or SCSI major number and use it\ninstead.\n\nSigned-off-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\n"
    },
    {
      "commit": "23d69b09b78c4876e134f104a3814c30747c53f1",
      "tree": "40744de4f4126c21027ce537264524095e0e7979",
      "parents": [
        "e744070fd4ff9d3114277e52d77afa21579adce2",
        "569ff2de2e1c8ac67c8df3a7367d46d0d9460a35"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 16:58:04 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (33 commits)\n  usb: don\u0027t use flush_scheduled_work()\n  speedtch: don\u0027t abuse struct delayed_work\n  media/video: don\u0027t use flush_scheduled_work()\n  media/video: explicitly flush request_module work\n  ioc4: use static work_struct for ioc4_load_modules()\n  init: don\u0027t call flush_scheduled_work() from do_initcalls()\n  s390: don\u0027t use flush_scheduled_work()\n  rtc: don\u0027t use flush_scheduled_work()\n  mmc: update workqueue usages\n  mfd: update workqueue usages\n  dvb: don\u0027t use flush_scheduled_work()\n  leds-wm8350: don\u0027t use flush_scheduled_work()\n  mISDN: don\u0027t use flush_scheduled_work()\n  macintosh/ams: don\u0027t use flush_scheduled_work()\n  vmwgfx: don\u0027t use flush_scheduled_work()\n  tpm: don\u0027t use flush_scheduled_work()\n  sonypi: don\u0027t use flush_scheduled_work()\n  hvsi: don\u0027t use flush_scheduled_work()\n  xen: don\u0027t use flush_scheduled_work()\n  gdrom: don\u0027t use flush_scheduled_work()\n  ...\n\nFixed up trivial conflict in drivers/media/video/bt8xx/bttv-input.c\nas per Tejun.\n"
    },
    {
      "commit": "30d65030fd14fd3696d927c5e452bee84c589b09",
      "tree": "f671d851bd0e7dc296aa2947a3ba3c26d24f9978",
      "parents": [
        "0ead5c86ac4c9903da93c76716135bc29d9cd83b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 24 15:59:06 2010 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 24 15:59:06 2010 +0100"
      },
      "message": "xen: don\u0027t use flush_scheduled_work()\n\nflush_scheduled_work() is deprecated and scheduled to be removed.\nDirectly flush info-\u003ework instead.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n"
    },
    {
      "commit": "667c78afaec0ac500908e191e8f236e9578d7b1f",
      "tree": "11a469d8a4cfefea2fd3a56be2cda4c7784d54a1",
      "parents": [
        "6c965ff5e7ca844494f1dcf0ec0440146db01294"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Dec 08 12:39:12 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 15 12:34:28 2010 -0800"
      },
      "message": "xen: Provide a variant of __RING_SIZE() that is an integer constant expression\n\nWithout this, gcc 4.5 won\u0027t compile xen-netfront and xen-blkfront, where\nthis is being used to specify array sizes.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Stable Kernel \u003cstable@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02e031cbc843b010e72fcc05c76113c688b2860f",
      "tree": "9f68559ec3acc39bcc4ce2ff87043a094eaa2e8f",
      "parents": [
        "00e375e7e962f938f6b3c93e4cd097a5e26cc788"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Nov 10 14:54:09 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 10 14:54:09 2010 +0100"
      },
      "message": "block: remove REQ_HARDBARRIER\n\nREQ_HARDBARRIER is dead now, so remove the leftovers.  What\u0027s left\nat this point is:\n\n - various checks inside the block layer.\n - sanity checks in bio based drivers.\n - now unused bio_empty_barrier helper.\n - Xen blockfront use of BLKIF_OP_WRITE_BARRIER - it\u0027s dead for a while,\n   but Xen really needs to sort out it\u0027s barrier situaton.\n - setting of ordered tags in uas - dead code copied from old scsi\n   drivers.\n - scsi different retry for barriers - it\u0027s dead and should have been\n   removed when flushes were converted to FS requests.\n - blktrace handling of barriers - removed.  Someone who knows blktrace\n   better should add support for REQ_FLUSH and REQ_FUA, though.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "dcb8baeceaa1c629bbd06f472cea023ad08a0c33",
      "tree": "72145e182cac0705e80553565356db24a41387e6",
      "parents": [
        "be2f8373c188ed1f5d36003c9928e4d695213080"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Nov 02 11:55:58 2010 -0400"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Nov 02 13:46:46 2010 -0400"
      },
      "message": "xen/blkfront: cope with backend that fail empty BLKIF_OP_WRITE_BARRIER requests\n\nSome(?) Xen block backends fail BLKIF_OP_WRITE_BARRIER requests, which\nLinux uses as a cache flush operation.  In that case, disable use\nof FLUSH.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\n"
    },
    {
      "commit": "be2f8373c188ed1f5d36003c9928e4d695213080",
      "tree": "9cc7d9db48770b2468705d275dcefae5f26c60d1",
      "parents": [
        "a945b9801a9bfd4a98bcfd9f6656b5027b254e3f"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Nov 02 10:38:33 2010 -0400"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Nov 02 11:27:59 2010 -0400"
      },
      "message": "xen/blkfront: Implement FUA with BLKIF_OP_WRITE_BARRIER\n\nThe BLKIF_OP_WRITE_BARRIER is a full ordered barrier, so we can use it\nto implement FUA as well as a plain FLUSH.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "a945b9801a9bfd4a98bcfd9f6656b5027b254e3f",
      "tree": "5b84d36975e5ebe2a34d73e58726795293f818f9",
      "parents": [
        "c64e38ea17a81721da0393584fd807f8434050fa"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Nov 01 17:03:14 2010 -0400"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Nov 02 11:27:58 2010 -0400"
      },
      "message": "xen/blkfront: change blk_shadow.request to proper pointer\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "c64e38ea17a81721da0393584fd807f8434050fa",
      "tree": "b4c7203aa006fd618cb3477fcddf8c74b509da3f",
      "parents": [
        "c8ddb2713c624f432fa5fe3c7ecffcdda46ea0d4"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Nov 01 14:32:27 2010 -0400"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Tue Nov 02 10:43:51 2010 -0400"
      },
      "message": "xen/blkfront: map REQ_FLUSH into a full barrier\n\nImplement a flush as a full barrier, since we have nothing weaker.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "18cb657ca1bafe635f368346a1676fb04c512edf",
      "tree": "b0eb6a4ceddf98e7bf820be7ff24bf131ff56b0c",
      "parents": [
        "2301b65b86df8b80e6779ce9885ad62a5c4adc38",
        "e28c31a96b1570f17731b18e8efabb7308d0c22c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 17:11:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 17:11:17 2010 -0700"
      },
      "message": "Merge branch \u0027stable/xen-pcifront-0.8.2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n  and branch \u0027for-linus\u0027 of git://xenbits.xen.org/people/sstabellini/linux-pvhvm\n\n* \u0027for-linus\u0027 of git://xenbits.xen.org/people/sstabellini/linux-pvhvm:\n  xen: register xen pci notifier\n  xen: initialize cpu masks for pv guests in xen_smp_init\n  xen: add a missing #include to arch/x86/pci/xen.c\n  xen: mask the MTRR feature from the cpuid\n  xen: make hvc_xen console work for dom0.\n  xen: add the direct mapping area for ISA bus access\n  xen: Initialize xenbus for dom0.\n  xen: use vcpu_ops to setup cpu masks\n  xen: map a dummy page for local apic and ioapic in xen_set_fixmap\n  xen: remap MSIs into pirqs when running as initial domain\n  xen: remap GSIs as pirqs when running as initial domain\n  xen: introduce XEN_DOM0 as a silent option\n  xen: map MSIs into pirqs\n  xen: support GSI -\u003e pirq remapping in PV on HVM guests\n  xen: add xen hvm acpi_register_gsi variant\n  acpi: use indirect call to register gsi in different modes\n  xen: implement xen_hvm_register_pirq\n  xen: get the maximum number of pirqs from xen\n  xen: support pirq !\u003d irq\n\n* \u0027stable/xen-pcifront-0.8.2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: (27 commits)\n  X86/PCI: Remove the dependency on isapnp_disable.\n  xen: Update Makefile with CONFIG_BLOCK dependency for biomerge.c\n  MAINTAINERS: Add myself to the Xen Hypervisor Interface and remove Chris Wright.\n  x86: xen: Sanitse irq handling (part two)\n  swiotlb-xen: On x86-32 builts, select SWIOTLB instead of depending on it.\n  MAINTAINERS: Add myself for Xen PCI and Xen SWIOTLB maintainer.\n  xen/pci: Request ACS when Xen-SWIOTLB is activated.\n  xen-pcifront: Xen PCI frontend driver.\n  xenbus: prevent warnings on unhandled enumeration values\n  xenbus: Xen paravirtualised PCI hotplug support.\n  xen/x86/PCI: Add support for the Xen PCI subsystem\n  x86: Introduce x86_msi_ops\n  msi: Introduce default_[teardown|setup]_msi_irqs with fallback.\n  x86/PCI: Export pci_walk_bus function.\n  x86/PCI: make sure _PAGE_IOMAP it set on pci mappings\n  x86/PCI: Clean up pci_cache_line_size\n  xen: fix shared irq device passthrough\n  xen: Provide a variant of xen_poll_irq with timeout.\n  xen: Find an unbound irq number in reverse order (high to low).\n  xen: statically initialize cpu_evtchn_mask_p\n  ...\n\nFix up trivial conflicts in drivers/pci/Makefile\n"
    },
    {
      "commit": "a2887097f25cd38cadfc11d10769e2b349fb5eca",
      "tree": "cd4adcb305365d6ba9acd2c02d4eb9d0125c6f8d",
      "parents": [
        "8abfc6e7a45eb74e51904bbae676fae008b11366",
        "005a1d15f5a6b2bb4ada80349513effbf22b4588"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:07:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:07:18 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.37/barrier\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.37/barrier\u0027 of git://git.kernel.dk/linux-2.6-block: (46 commits)\n  xen-blkfront: disable barrier/flush write support\n  Added blk-lib.c and blk-barrier.c was renamed to blk-flush.c\n  block: remove BLKDEV_IFL_WAIT\n  aic7xxx_old: removed unused \u0027req\u0027 variable\n  block: remove the BH_Eopnotsupp flag\n  block: remove the BLKDEV_IFL_BARRIER flag\n  block: remove the WRITE_BARRIER flag\n  swap: do not send discards as barriers\n  fat: do not send discards as barriers\n  ext4: do not send discards as barriers\n  jbd2: replace barriers with explicit flush / FUA usage\n  jbd2: Modify ASYNC_COMMIT code to not rely on queue draining on barrier\n  jbd: replace barriers with explicit flush / FUA usage\n  nilfs2: replace barriers with explicit flush / FUA usage\n  reiserfs: replace barriers with explicit flush / FUA usage\n  gfs2: replace barriers with explicit flush / FUA usage\n  btrfs: replace barriers with explicit flush / FUA usage\n  xfs: replace barriers with explicit flush / FUA usage\n  block: pass gfp_mask and flags to sb_issue_discard\n  dm: convey that all flushes are processed as empty\n  ...\n"
    },
    {
      "commit": "005a1d15f5a6b2bb4ada80349513effbf22b4588",
      "tree": "e9baa3b1ced078041ac98c1179eb51a18cc37569",
      "parents": [
        "4d1529043705737ba442f5a0048043718e601ce4"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Oct 22 10:58:33 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Oct 22 10:58:33 2010 +0200"
      },
      "message": "xen-blkfront: disable barrier/flush write support\n\nThe driver doesn\u0027t handle empty flushes. Disable barrier/flush\nwrite support until this is fixed up.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "fa251f89903d73989e2f63e13d0eaed1e07ce0da",
      "tree": "3f7fe779941e3b6d67754dd7c44a32f48ea47c74",
      "parents": [
        "dd3932eddf428571762596e17b65f5dc92ca361b",
        "cd07202cc8262e1669edff0d97715f3dd9260917"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Oct 19 09:13:04 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Oct 19 09:13:04 2010 +0200"
      },
      "message": "Merge branch \u0027v2.6.36-rc8\u0027 into for-2.6.37/barrier\n\nConflicts:\n\tblock/blk-core.c\n\tdrivers/block/loop.c\n\tmm/swapfile.c\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "b78c9512563780d86a178f11b648bcf73b8d87ec",
      "tree": "bc2d239ab1a0e6bafe004a5283228b710c1c5f55",
      "parents": [
        "89afb6e46a0f72e0e5c51ef44aa900b74681664b"
      ],
      "author": {
        "name": "Noboru Iwamatsu",
        "email": "n_iwamatsu@jp.fujitsu.com",
        "time": "Tue Oct 13 17:22:29 2009 -0400"
      },
      "committer": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Oct 18 10:49:36 2010 -0400"
      },
      "message": "xenbus: prevent warnings on unhandled enumeration values\n\nXenbusStateReconfiguring/XenbusStateReconfigured were introduced by\nc/s 437, but aren\u0027t handled in many switch statements.\n\n.. also pulled from the linux-2.6-sparse-tree tree.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "2a48fc0ab24241755dc93bfd4f01d68efab47f5a",
      "tree": "fa9ae10ce89b26b7d8ae9ce24bdfda5e3007b763",
      "parents": [
        "613655fa39ff6957754fa8ceb8559980920eb8ee"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 05 15:01:10 2010 +0200"
      },
      "message": "block: autoconvert trivial BKL users to private mutex\n\nThe block device drivers have all gained new lock_kernel\ncalls from a recent pushdown, and some of the drivers\nwere already using the BKL before.\n\nThis turns the BKL into a set of per-driver mutexes.\nStill need to check whether this is safe to do.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "4913efe456c987057e5d36a3f0a55422a9072cae",
      "tree": "295f04a7214e1933df3301dd42c12ff3f282a22c",
      "parents": [
        "6958f145459ca7ad9715024de97445addacb8510"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Sep 03 11:56:16 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:35:36 2010 +0200"
      },
      "message": "block: deprecate barrier and replace blk_queue_ordered() with blk_queue_flush()\n\nBarrier is deemed too heavy and will soon be replaced by FLUSH/FUA\nrequests.  Deprecate barrier.  All REQ_HARDBARRIERs are failed with\n-EOPNOTSUPP and blk_queue_ordered() is replaced with simpler\nblk_queue_flush().\n\nblk_queue_flush() takes combinations of REQ_FLUSH and FUA.  If a\ndevice has write cache and can flush it, it should set REQ_FLUSH.  If\nthe device can handle FUA writes, it should also set REQ_FUA.\n\nAll blk_queue_ordered() users are converted.\n\n* ORDERED_DRAIN is mapped to 0 which is the default value.\n* ORDERED_DRAIN_FLUSH is mapped to REQ_FLUSH.\n* ORDERED_DRAIN_FLUSH_FUA is mapped to REQ_FLUSH | REQ_FUA.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "6958f145459ca7ad9715024de97445addacb8510",
      "tree": "c8c945eb68ceb88bd34647d7bcaedd13a0d753ca",
      "parents": [
        "589d7ed02ade0d06a3510da2e15a7edfdb2ef3d8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Sep 03 11:56:16 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:35:36 2010 +0200"
      },
      "message": "block: kill QUEUE_ORDERED_BY_TAG\n\nNobody is making meaningful use of ORDERED_BY_TAG now and queue\ndraining for barrier requests will be removed soon which will render\nthe advantage of tag ordering moot.  Kill ORDERED_BY_TAG.  The\nfollowing users are affected.\n\n* brd: converted to ORDERED_DRAIN.\n* virtio_blk: ORDERED_TAG path was already marked deprecated.  Removed.\n* xen-blkfront: ORDERED_TAG case dropped.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "1dc7ce99b091a11cce0f34456c1ffcb928f17edd",
      "tree": "b9f125fc324a86ff4af64fb0799d20330f61084c",
      "parents": [
        "c93a4dfb31f2c023da3ad1238c352452f2cc0e05"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Mon Aug 23 11:59:29 2010 +0100"
      },
      "committer": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Mon Aug 23 11:59:29 2010 +0100"
      },
      "message": "xen: pvhvm: rename xen_emul_unplug\u003dignore to \u003dunnnecessary\n\nIt is not immediately clear what this option causes to become\nignored. The actual meaning is that it is not necessary to unplug the\nemulated devices to safely use the PV ones, even if the platform does\nnot support the unplug protocol. (pressumably the user will only add\nthis option if they have ensured that their domain configuration is\nsafe).\n\nI think xen_emul_unplug\u003dunnecessary better captures this.\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nAcked-by: Stefano Stabellini \u003cStefano.Stabellini@eu.citrix.com\u003e\n"
    },
    {
      "commit": "2f9e825d3e0e2b407ae8f082de5c00afcf7378fb",
      "tree": "f8b3ee40674ce4acd5508a0a0bf52a30904caf6c",
      "parents": [
        "7ae0dea900b027cd90e8a3e14deca9a19e17638b",
        "de75d60d5ea235e6e09f4962ab22541ce0fe176a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block: (149 commits)\n  block: make sure that REQ_* types are seen even with CONFIG_BLOCK\u003dn\n  xen-blkfront: fix missing out label\n  blkdev: fix blkdev_issue_zeroout return value\n  block: update request stacking methods to support discards\n  block: fix missing export of blk_types.h\n  writeback: fix bad _bh spinlock nesting\n  drbd: revert \"delay probes\", feature is being re-implemented differently\n  drbd: Initialize all members of sync_conf to their defaults [Bugz 315]\n  drbd: Disable delay probes for the upcomming release\n  writeback: cleanup bdi_register\n  writeback: add new tracepoints\n  writeback: remove unnecessary init_timer call\n  writeback: optimize periodic bdi thread wakeups\n  writeback: prevent unnecessary bdi threads wakeups\n  writeback: move bdi threads exiting logic to the forker thread\n  writeback: restructure bdi forker loop a little\n  writeback: move last_active to bdi\n  writeback: do not remove bdi from bdi_list\n  writeback: simplify bdi code a little\n  writeback: do not lose wake-ups in bdi threads\n  ...\n\nFixed up pretty trivial conflicts in drivers/block/virtio_blk.c and\ndrivers/scsi/scsi_error.c as per Jens.\n"
    },
    {
      "commit": "a4cc14ec9f0ef579262a81170a2eaf760844c471",
      "tree": "7bc1403e02185fb5da801bb4826313d4bcd0c9bc",
      "parents": [
        "18edc8eaa68070771bdb2098260e44efe74de722"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sun Aug 08 21:50:05 2010 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sun Aug 08 21:50:05 2010 -0400"
      },
      "message": "xen-blkfront: fix missing out label\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "7901d14144311c930918b1222aae7611284c63eb",
      "tree": "53e882fd0b0588b0c43c2935d634ea97a9e1c9ed",
      "parents": [
        "4dab46ff26c6003a13ec769312c50938b93c359d"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Wed Jul 28 10:49:29 2010 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:52:53 2010 +0200"
      },
      "message": "xen/blkfront: Use QUEUE_ORDERED_DRAIN for old backends\n\nIf there\u0027s no feature-barrier key in xenstore, then it means its a fairly\nold backend which does uncached in-order writes, which means ORDERED_DRAIN\nis appropriate.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "4dab46ff26c6003a13ec769312c50938b93c359d",
      "tree": "02d6f99222034dfeb73ccb388663570db883cb52",
      "parents": [
        "e96f6abe02fc3320d669985443e8c68ff8e83294"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Jul 22 14:17:00 2010 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:52:53 2010 +0200"
      },
      "message": "xen/blkfront: use tagged queuing for barriers\n\nWhen barriers are supported, then use QUEUE_ORDERED_TAG to tell the block\nsubsystem that it doesn\u0027t need to do anything else with the barriers.\nPreviously we used ORDERED_DRAIN which caused the block subsystem to\ndrain all pending IO before submitting the barrier, which would be\nvery expensive.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "d54142c71f05b608b7360d80bdab74eed0f17a98",
      "tree": "05bae4d49f360b4b18b8a69014f1489fae8a9fe5",
      "parents": [
        "7b32d1044ae791a1e53a53023bf2668438d5301b"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Sat Aug 07 18:51:21 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:51:21 2010 +0200"
      },
      "message": "blkfront: Klog the unclean release path\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "7b32d1044ae791a1e53a53023bf2668438d5301b",
      "tree": "8e751d41c7754f8b89eb4076ae76e2e7b028f152",
      "parents": [
        "acfca3c622a009fb62b566604452ab9fb3a11019"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Fri Apr 30 22:01:23 2010 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:49:20 2010 +0200"
      },
      "message": "blkfront: Remove obsolete info-\u003eusers\n\nThis is just bd_openers, protected by the bd_mutex.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "acfca3c622a009fb62b566604452ab9fb3a11019",
      "tree": "3125607a3f41283839605d18f004765d0268e5d5",
      "parents": [
        "fa1bd3591a669b92b635dbdb11d1a32a5630821b"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Sat Aug 07 18:47:26 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:47:26 2010 +0200"
      },
      "message": "blkfront: Remove obsolete info-\u003eusers\n\nThis is just bd_openers, protected by the bd_mutex.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "fa1bd3591a669b92b635dbdb11d1a32a5630821b",
      "tree": "41309de6425e854420b26bdcfd94accaf52c3cee",
      "parents": [
        "7fd152f4b6ae4f3cf89e4b7a0383cc3c470772fc"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Fri Apr 30 22:01:22 2010 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:45:27 2010 +0200"
      },
      "message": "blkfront: Lock blockfront_info during xbdev removal\n\nSame approach as blkfront_closing:\n * Grab the bdev safely, holding the info mutex.\n * Zap xbdev safely, holding the info mutex.\n * Try bdev removal safely, holding bd_mutex.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "7fd152f4b6ae4f3cf89e4b7a0383cc3c470772fc",
      "tree": "105d00acbdd635aa30f0a0f8257714d5cbb6699e",
      "parents": [
        "139617437aff1f0d3b57c2d7cc60e60efc8fe6c3"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Sat Aug 07 18:45:12 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:45:12 2010 +0200"
      },
      "message": "blkfront: Fix blkfront backend switch race (bdev release)\n\nWe cannot read backend state within bdev operations, because it risks\ngrabbing the state change before xenbus gets to do it.\n\nFixed by tracking deferral with a frontend switch to Closing. State\nexposure isn\u0027t strictly necessary, but the backends won\u0027t mind.\n\nFor a \u0027clean\u0027 deferral this seems actually a more decent protocol than\nraising errors.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "139617437aff1f0d3b57c2d7cc60e60efc8fe6c3",
      "tree": "2c903b3f6456ab4a7d70c16c864ceb63bc366a5e",
      "parents": [
        "b70f5fa043b318659c936d8c3c696250e6528944"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Sat Aug 07 18:36:53 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:38:43 2010 +0200"
      },
      "message": "blkfront: Fix blkfront backend switch race (bdev open)\n\nWe need not mind if users grab a late handle on a closing disk. We\nprobably even should not. But we have to make sure it\u0027s not a dead\none already\n\nLet the bdev deal with a gendisk deleted under its feet. Takes the\ninfo mutex to decide a race against backend closing.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "b70f5fa043b318659c936d8c3c696250e6528944",
      "tree": "ca627bca1a32250206d0af888b2c9e98a7a3c4ef",
      "parents": [
        "a66b5aebb7dc9e695dcb4b528906fd398b63f3d9"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Fri Apr 30 22:01:19 2010 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:38:43 2010 +0200"
      },
      "message": "blkfront: Lock blkfront_info when closing\n\nThe bdev .open/.release fops race against backend switches to Closing,\nhandled by the XenBus thread.\n\nThe original code attempted to serialize block device holders and\nxenbus only via bd_mutex. This is insufficient, the info-\u003ebd pointer\nmay already be stale (or null) while xenbus tries to bump up the\nrefcount.\n\nProtect blkfront_info with a dedicated mutex.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "a66b5aebb7dc9e695dcb4b528906fd398b63f3d9",
      "tree": "684df2ec45c83f1dc267803f4fdf4ac684bf30d0",
      "parents": [
        "9897cb532382f075b337f7933b5a50f0ffc32d35"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Sat Aug 07 18:33:17 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:38:43 2010 +0200"
      },
      "message": "blkfront: Clean up vbd release\n\n * Current blkfront_closing is rather a xlvbd_release_gendisk.\n   Renamed in preparation of later patches (need the name again).\n\n * Removed the misleading comment -- this only applied to the backend\n   switch handler, and the queue is already flushed btw.\n\n * Break out the xenbus call, callers know better when to switch\n   frontend state.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "9897cb532382f075b337f7933b5a50f0ffc32d35",
      "tree": "9e8c94e27f2e7a773c6703b249f420bc1be3973d",
      "parents": [
        "89de1669ace055b56f1de1c9f5aca26dd7f17f25"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Fri Apr 30 22:01:17 2010 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:31:37 2010 +0200"
      },
      "message": "blkfront: Fix gendisk leak\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "89de1669ace055b56f1de1c9f5aca26dd7f17f25",
      "tree": "c67f2fa68f79eb9e4c31ef6991b23a58602039d6",
      "parents": [
        "5b61cb90c2ad8c853b4dd53eec200bacd2f02172"
      ],
      "author": {
        "name": "Daniel Stodden",
        "email": "daniel.stodden@citrix.com",
        "time": "Fri Apr 30 22:01:16 2010 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:31:35 2010 +0200"
      },
      "message": "blkfront: Fix backtrace in del_gendisk\n\nThe call to del_gendisk follows an non-refcounted gd-\u003equeue\npointer. We release the last ref in blk_cleanup_queue. Fixed by\nreordering releases accordingly.\n\nSigned-off-by: Daniel Stodden \u003cdaniel.stodden@citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "2def141e71d54eccac98dc2c2ba71a82c91b324e",
      "tree": "434ce86801037c7c8cee21f24b310a43db2f9445",
      "parents": [
        "b4dddb498c0feaff413b2a79c64e910021983775"
      ],
      "author": {
        "name": "K. Y. Srinivasan",
        "email": "ksrinivasan@novell.com",
        "time": "Thu Mar 18 15:00:54 2010 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:31:31 2010 +0200"
      },
      "message": "xen/blkfront: revalidate after setting capacity\n\nSigned-off-by: K. Y. Srinivasan \u003cksrinivasan@novell.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "b4dddb498c0feaff413b2a79c64e910021983775",
      "tree": "9db2959caadbf22f8bd7de160ff0ec0805e0f435",
      "parents": [
        "1fa73be6be65028a7543bba8f14474b42e064a1b"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Mar 11 15:10:40 2010 -0800"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:31:29 2010 +0200"
      },
      "message": "xen/blkfront: avoid compiler warning from missing cases\n\nFix:\ndrivers/block/xen-blkfront.c: In function ‘blkfront_connect’:\ndrivers/block/xen-blkfront.c:933: warning: enumeration value ‘BLKIF_STATE_DISCONNECTED’ not handled in switch\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "1fa73be6be65028a7543bba8f14474b42e064a1b",
      "tree": "1bd0e5a44c99231afefe53e447bddc4b73d091cb",
      "parents": [
        "5d7ed20e822ef82117a4d9928b030fa0247b789d"
      ],
      "author": {
        "name": "K. Y. Srinivasan",
        "email": "ksrinivasan@novell.com",
        "time": "Thu Mar 11 13:42:26 2010 -0800"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:31:27 2010 +0200"
      },
      "message": "xen/front: Propagate changed size of VBDs\n\nSupport dynamic resizing of virtual block devices. This patch supports\nboth file backed block devices as well as physical devices that can be\ndynamically resized on the host side.\n\nSigned-off-by: K. Y. Srinivasan \u003cksrinivasan@novell.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "5d7ed20e822ef82117a4d9928b030fa0247b789d",
      "tree": "dff5db85b4c7ff8f978a3f737c5c595baf82519b",
      "parents": [
        "0e34582699392d67910bd3919bc8fd9bedce115e"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Aug 07 18:31:12 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:31:12 2010 +0200"
      },
      "message": "blkfront: don\u0027t access freed struct xenbus_device\n\nUnfortunately commit \"blkfront: fixes for \u0027xm block-detach ... --force\u0027\"\nstill wasn\u0027t quite right - there was a reference to freed memory left\nfrom blkfront_closing().\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 \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "0e34582699392d67910bd3919bc8fd9bedce115e",
      "tree": "8726f57eead44ecce90112e969e12a33e119acd9",
      "parents": [
        "203fd61f42fec81f43bc5abbf2d3755e04e000af"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Aug 07 18:28:55 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:28:55 2010 +0200"
      },
      "message": "blkfront: fixes for \u0027xm block-detach ... --force\u0027\n\nPrevent prematurely freeing \u0027struct blkfront_info\u0027 instances (when the\nxenbus data structures are gone, but the Linux ones are still needed).\n\nPrevent adding a disk with the same (major, minor) [and hence the same\nname and sysfs entries, which leads to oopses] when the previous\ninstance wasn\u0027t fully de-allocated yet.\n\nThis still doesn\u0027t address all issues resulting from forced detach:\nI/O submitted after the detach still blocks forever, likely preventing\nsubsequent un-mounting from completing. It\u0027s not clear to me (not\nknowing much about the block layer) how this can be avoided.\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 \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "203fd61f42fec81f43bc5abbf2d3755e04e000af",
      "tree": "6069f457c559327b52f5fe2b68d74d625dd80057",
      "parents": [
        "96dccab1d63cb35d3f5e75d2ef275fdbff4d5f3b"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Fri Dec 04 15:33:54 2009 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:26:39 2010 +0200"
      },
      "message": "xen: use less generic names in blkfront driver.\n\nAll Xen frontend drivers have a couple of identically named functions which\nmakes figuring out which device went wrong from a stacktrace harder than it\nneeds to be. Rename them to something specificto the device type.\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "commit": "6e9624b8caec290d28b4c6d9ec75749df6372b87",
      "tree": "47225b544e1da82742795553dc4e8aa70c17afdc",
      "parents": [
        "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "message": "block: push down BKL into .open and .release\n\nThe open and release block_device_operations are currently\ncalled with the BKL held. In order to change that, we must\nfirst make sure that all drivers that currently rely\non this have no regressions.\n\nThis blindly pushes the BKL into all .open and .release\noperations for all block drivers to prepare for the\nnext step. The drivers can subsequently replace the BKL\nwith their own locks or remove it completely when it can\nbe shown that it is not needed.\n\nThe functions blkdev_get and blkdev_put are the only\nremaining users of the big kernel lock in the block\nlayer, besides a few uses in the ioctl code, none\nof which need to serialize with blkdev_{get,put}.\n\nMost of these two functions is also under the protection\nof bdev-\u003ebd_mutex, including the actual calls to\n-\u003eopen and -\u003erelease, and the common code does not\naccess any global data structures that need the BKL.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368",
      "tree": "9a633ad48c3b1ada0519ee7bade0602f940037f6",
      "parents": [
        "34484062445fe905bf02c72f87ddda21881acda3"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 08 10:18:46 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:00 2010 +0200"
      },
      "message": "block: push down BKL into .locked_ioctl\n\nAs a preparation for the removal of the big kernel\nlock in the block layer, this removes the BKL\nfrom the common ioctl handling code, moving it\ninto every single driver still using it.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "00fff26539bfe3fad21c164fc4002d9ede056fb0",
      "tree": "4909c8eed03133b1d46f689e465ed1f579b8e282",
      "parents": [
        "afc23068103ccfbf1917eb2a007bc15ab5418cc9"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Sat Jul 03 17:45:40 2010 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:24:15 2010 +0200"
      },
      "message": "block: remove q-\u003eprepare_flush_fn completely\n\nThis removes q-\u003eprepare_flush_fn completely (changes the\nblk_queue_ordered API).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "33659ebbae262228eef4e0fe990f393d1f0ed941",
      "tree": "fcb537f09359c8dad3a6f6e16dc4319562dc42cc",
      "parents": [
        "7e005f79791dcd58436c88ded4a7f5aed1b82147"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sat Aug 07 18:17:56 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:17:56 2010 +0200"
      },
      "message": "block: remove wrappers for request type/flags\n\nRemove all the trivial wrappers for the cmd_type and cmd_flags fields in\nstruct requests.  This allows much easier grepping for different request\ntypes instead of unwinding through macros.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "b98a409b80ac510c95b4f1bafdef28edaeabd3e7",
      "tree": "2c109585fa1354eae60e739a67955b4176cd3eac",
      "parents": [
        "c7f52cdc2f3e1733d3864e439ac2e92edd99ef31"
      ],
      "author": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Thu Jul 29 14:53:16 2010 +0100"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Thu Jul 29 11:11:08 2010 -0700"
      },
      "message": "blkfront: do not create a PV cdrom device if xen_hvm_guest\n\nIt is not possible to unplug emulated cdrom devices, and PV cdroms don\u0027t\nhandle media insert, eject and stream, so we are better off disabling PV\ncdroms when running as a Xen HVM guest.\n\nSigned-off-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\n"
    },
    {
      "commit": "c1c5413ad58cb73267d328e6020268aa2e50d8ca",
      "tree": "f2c66141ab8d9fdb7b16a13d4d510ad09b2430ed",
      "parents": [
        "409771d258e9dd71c30f3c9520fd2b796ffc40f0"
      ],
      "author": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Fri May 14 12:44:30 2010 +0100"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy.fitzhardinge@citrix.com",
        "time": "Mon Jul 26 23:13:25 2010 -0700"
      },
      "message": "x86: Unplug emulated disks and nics.\n\nAdd a xen_emul_unplug command line option to the kernel to unplug\nxen emulated disks and nics.\n\nSet the default value of xen_emul_unplug depending on whether or\nnot the Xen PV frontends and the Xen platform PCI driver have\nbeen compiled for this kernel (modules or built-in are both OK).\n\nThe user can specify xen_emul_unplug\u003dignore to enable PV drivers on HVM\neven if the host platform doesn\u0027t support unplug.\n\nSigned-off-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\n"
    },
    {
      "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"
    }
  ],
  "next": "440a01a7f46742400c74d9d346118523e81d188b"
}
