)]}'
{
  "log": [
    {
      "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"
    },
    {
      "commit": "440a01a7f46742400c74d9d346118523e81d188b",
      "tree": "7f79afef47dddad38b488c56e160d39ed034b0d5",
      "parents": [
        "1c91fe1a0d577f2e53475e789c9d63a0feb7d93c"
      ],
      "author": {
        "name": "Christian Limpach",
        "email": "Christian.Limpach@xensource.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:13 2008 +0200"
      },
      "message": "xen/blkfront: Add the CDROM_GET_CAPABILITY ioctl to blkfront.\n\nReturn 0 instead of -EINVAL if the blkfront device is a cdrom,\ni.e. had the VDISK_CDROM attribute.  This allows udev\u0027s cdrom_id\nto correctly detect the device as a cdrom device.\n\n[ Add blkif_ioctl, and CDROMMULTISESSION ]\n\n[ linux-2.6.18-xen changeset d2bd9af846b5 ]\n\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@xensource.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1c91fe1a0d577f2e53475e789c9d63a0feb7d93c",
      "tree": "1d0657d99382af8f268b4b4ec960e6d210a0ec96",
      "parents": [
        "244b4d56f85bcd11b21ab0b94845a3dabeed5c10"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@xensource.com",
        "time": "Tue Jun 17 10:47:08 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 03 13:21:12 2008 +0200"
      },
      "message": "xen/blkfront: Make sure we don\u0027t use bounce buffers, we don\u0027t need them.\n\n[ linux-2.6.18-xen changeset 667228bf8fc5 ]\n\nSigned-off-by: Ian Campbell \u003cian.campbell@xensource.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "afe42d7dea2983faa593d289ab241ffdd94d37b3",
      "tree": "a407fc55cb1328041a031c0a78bc2e6ce38e8330",
      "parents": [
        "c9e587abfdec2c2aaa55fab83bcb4972e2f84f9b"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Tue Apr 29 00:59:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:06 2008 -0700"
      },
      "message": "xen: make blkif_getgeo static\n\nIntroduced between 2.6.25-rc2 and -rc3\ndrivers/block/xen-blkfront.c:139:5: warning: symbol \u0027blkif_getgeo\u0027 was not declared. Should it be static?\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4f93f09b72d6ff47b2399b79ed6d1cbc7dbf991b",
      "tree": "8f29c6914c3c9a8932c1dc715376034663b8511d",
      "parents": [
        "d2f0c52bec954460e72dee48f3a29c6f310d76be"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Wed Apr 02 10:54:06 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen: Add compatibility aliases for frontend drivers\n\nBefore getting merged, xen-blkfront was xenblk and\nxen-netfront was xennet.\n\nTemporarily adding compatibility module aliases\neases upgrades from older versions by e.g. allowing\nmkinitrd to find the new version of the module.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d2f0c52bec954460e72dee48f3a29c6f310d76be",
      "tree": "9793e3f539f9eacd37b3183c8becd3190df535c4",
      "parents": [
        "1d78d7055629e3f6300d6b8d7028259ee2bffc0e"
      ],
      "author": {
        "name": "Mark McLoughlin",
        "email": "markmc@redhat.com",
        "time": "Wed Apr 02 10:54:05 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen: Module autoprobing support for frontend drivers\n\nAdd module aliases to support autoprobing modules\nfor xen frontend devices.\n\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1d78d7055629e3f6300d6b8d7028259ee2bffc0e",
      "tree": "20bf47ccdd80ead20c69f8a536849c9cf8dd3223",
      "parents": [
        "53f0e8afcb0d57cfaff06b89eb8b5302f167577e"
      ],
      "author": {
        "name": "Christian Limpach",
        "email": "Christian.Limpach@xensource.com",
        "time": "Wed Apr 02 10:54:04 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen blkfront: Delay wait for block devices until after the disk is added\n\nWhen the xen block frontend driver is built as a module the module load\nis only synchronous up to the point where the frontend and the backend\nbecome connected rather than when the disk is added.\n\nThis means that there can be a race on boot between loading the module and\nloading the dm-* modules and doing the scan for LVM physical volumes (all\nin the initrd). In the failure case the disk is not present until after the\nscan for physical volumes is complete.\n\nTaken from:\n\n  http://xenbits.xensource.com/linux-2.6.18-xen.hg?rev/11483a00c017\n\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@xensource.com\u003e\nSigned-off-by: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "53f0e8afcb0d57cfaff06b89eb8b5302f167577e",
      "tree": "2bfdddbb5b171bdae882b5ac829e0ecefc45f5a5",
      "parents": [
        "3e334239d89d4a71610be5a3e8432464d421d9ec"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Apr 02 10:54:03 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:33 2008 +0200"
      },
      "message": "xen/blkfront: use bdget_disk\n\ninfo-\u003edev is never initialized to anything, so bdget(info-\u003edev) is\nmeaningless.  Get rid of info-\u003edev, and use bdget_disk on the gendisk.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3e334239d89d4a71610be5a3e8432464d421d9ec",
      "tree": "cbe48c21488b81652c3feb179a7d6584e7b5278c",
      "parents": [
        "b15993fcc1bf15f717fb4414b32e4a11534dfdc4"
      ],
      "author": {
        "name": "Markus Armbruster",
        "email": "armbru@redhat.com",
        "time": "Wed Apr 02 10:54:02 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 24 23:57:32 2008 +0200"
      },
      "message": "xen: Make xen-blkfront write its protocol ABI to xenstore\n\nFrontends are expected to write their protocol ABI to xenstore.  Since\nthe protocol ABI defaults to the backend\u0027s native ABI, things work\nfine without that as long as the frontend\u0027s native ABI is identical to\nthe backend\u0027s native ABI.  This is not the case for xen-blkfront\nrunning 32-on-64, because its ABI differs between 32 and 64 bit, and\nthus needs this fix.\n\nBased on http://xenbits.xensource.com/xen-unstable.hg?rev/c545932a18f3\nand http://xenbits.xensource.com/xen-unstable.hg?rev/ffe52263b430 by\nGerd Hoffmann \u003ckraxel@suse.de\u003e\n\nSigned-off-by: Markus Armbruster \u003carmbru@redhat.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cJeremy.Fitzhardinge@citrix.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "597592d951cdca8e5edb29f7e8174f633a69685a",
      "tree": "7bbdf03e4cdc94086489616c65759962e6fb28f1",
      "parents": [
        "0f151e8b214c1df3f571020b849382933f2cdce7"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ijc@hellion.org.uk",
        "time": "Thu Feb 21 13:03:45 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 21 16:19:13 2008 -0800"
      },
      "message": "xen: Implement getgeo for Xen virtual block device.\n\nThe below implements the getgeo hook for Xen block devices. Extracted\nfrom the xen-unstable tree where it has been used for ages.\n\nIt is useful to have because it allows things like grub2 (used by the\nDebian installer images) to work in a guest domain without having to\nsprinkle Xen specific hacks around the place.\n\nSigned-off-by: Ian Campbell \u003cijc@hellion.org.uk\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f530f036378421fb0b59bb829a8097a50bca79e2",
      "tree": "74ff62e7b4a26fce50b4aea159f63fa56a737d06",
      "parents": [
        "b2aec24ea4c5836f9b3cbc7dca51f0ae639865ed"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Tue Dec 11 17:47:36 2007 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:36:46 2008 +0100"
      },
      "message": "blk_end_request: changing xen-blkfront (take 4)\n\nThis patch converts xen-blkfront to use blk_end_request interfaces.\nRelated \u0027uptodate\u0027 arguments are converted to \u0027error\u0027.\n\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6c92e699b56287da582ccb12a64b959b6d6109ba",
      "tree": "ac8c9f26640ff8b35cd96f8222f8ce84ba2c53e5",
      "parents": [
        "bc1c56fde6dd1c85e2047c276456c07bd4508b5c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Aug 16 13:43:12 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Fixup rq_for_each_segment() indentation\n\nRemove one level of nesting where appropriate.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5705f7021748a69d84d6567e68e8851dab551464",
      "tree": "5a6dbc8fc6055c0334f4a97540e36a7844b9c482",
      "parents": [
        "9dfa52831e96194b8649613e3131baa2c109f7dc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Sep 25 12:35:59 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:56 2007 +0200"
      },
      "message": "Introduce rq_for_each_segment replacing rq_for_each_bio\n\nEvery usage of rq_for_each_bio wraps a usage of\nbio_for_each_segment, so these can be combined into\nrq_for_each_segment.\n\nWe define \"struct req_iterator\" to hold the \u0027bio\u0027 and \u0027index\u0027 that\nare needed for the double iteration.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\n\nVarious compile fixes by me...\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9f27ee595038653ddf8bca871200d39247d6f4fc",
      "tree": "602b4fe83ccfd6cb65b146ed80e84baec0fb6cb7",
      "parents": [
        "4bac07c993d03434ea902d3d4290d9e45944b66c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Tue Jul 17 18:37:06 2007 -0700"
      },
      "committer": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Jul 18 08:47:45 2007 -0700"
      },
      "message": "xen: add virtual block device driver.\n\nThe block device frontend driver allows the kernel to access block\ndevices exported exported by a virtual machine containing a physical\nblock device driver.\n\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    }
  ]
}
