)]}'
{
  "log": [
    {
      "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": "17f7f4d9fcce8f1b75b5f735569309dee7665968",
      "tree": "14d7e49ca0053a0fcab3c33b5023bf3f90c5c08a",
      "parents": [
        "041110a439e21cd40709ead4ffbfa8034619ad77",
        "d7c1255a3a21e98bdc64df8ccf005a174d7e6289"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 26 22:37:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 26 22:37:05 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tnet/ipv4/fib_frontend.c\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": "8aa0f413848708bca329c52358ae7a1a0e395b4e",
      "tree": "5bcc9480f60b9d992b4e5c457497c586d5fe2ff6",
      "parents": [
        "539253f6e13feedfa7bb6a3112c6707ebdf11e74"
      ],
      "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": "floppy: don\u0027t use flush_scheduled_work()\n\nflush_scheduled_work() is deprecated and scheduled to be removed.\nDirectly flush floppy_work instead.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "453434cf3fdcd3954bb52460e37d4945a0913d3e",
      "tree": "be2c6e3aa84e7ad10376e75a08665a649a8d1aac",
      "parents": [
        "8cad7f06e3b1d3f9a28bb7385e8fc09d5e1bf84c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 20 21:21:49 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 20 21:21:49 2010 -0800"
      },
      "message": "Fix build error in drivers/block/cciss.c\n\n.. caused by a missing semi-colon, introduced in commit 0fc13c8995cd\n(\"cciss: fix cciss_revalidate panic\").\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nReported-by: Thiago Farina \u003ctfransosi@gmail.com\u003e\nCc: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f8635cc9e66a26d7280ba680b044fa2f65104af",
      "tree": "0d8506e86d07e15c473aca1a09af7ad6ff7d8b49",
      "parents": [
        "3cb50ddf97a0a1ca4c68bc12fa1e727a6b45fbf2",
        "0fc13c8995cd96f4123de400c71c223d80400ed9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 20 09:19:46 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 20 09:19:46 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  cciss: fix cciss_revalidate panic\n  block: max hardware sectors limit wrapper\n  block: Deprecate QUEUE_FLAG_CLUSTER and use queue_limits instead\n  blk-throttle: Correct the placement of smp_rmb()\n  blk-throttle: Trim/adjust slice_end once a bio has been dispatched\n  block: check for proper length of iov entries earlier in blk_rq_map_user_iov()\n  drbd: fix for spin_lock_irqsave in endio callback\n  drbd: don\u0027t recvmsg with zero length\n"
    },
    {
      "commit": "0fc13c8995cd96f4123de400c71c223d80400ed9",
      "tree": "3cbd89861a75d494a104db7d8d129eecfb086782",
      "parents": [
        "72d4cd9f38b5ed96b75df4c622be25e1c2648dd3"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Fri Dec 17 09:01:37 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Dec 17 09:01:37 2010 +0100"
      },
      "message": "cciss: fix cciss_revalidate panic\n\nIf you delete a logical drive, and then run BLKRRPART (e.g. via fdisk)\non a logical drive which is \"after\" the deleted logical drive in the h-\u003edrv[]\narray, then cciss_revalidate panics because it will access the null pointer\nh-\u003edrv[x] when x hits the deleted drive.\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.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": "04ed0978d5ca5a3460a6f1f7443f8147a183669f",
      "tree": "91f71e29b0cb4a7d644fc64aa7d4c0ee2c4dc0a0",
      "parents": [
        "8520eeaa1235ee78d32558b6a57e02b236c9e588",
        "dfc5606dc51381186de765243bab340c8e021868"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 02 08:05:22 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 02 08:05:22 2010 -0800"
      },
      "message": "Merge branch \u0027rbd-sysfs\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027rbd-sysfs\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:\n  rbd: replace the rbd sysfs interface\n"
    },
    {
      "commit": "dfc5606dc51381186de765243bab340c8e021868",
      "tree": "663aa59ad40f1ff2e87fcd5256a7cc6aab7b1c00",
      "parents": [
        "3561d43fd289f590fdae672e5eb831b8d5cf0bf6"
      ],
      "author": {
        "name": "Yehuda Sadeh",
        "email": "yehuda@hq.newdream.net",
        "time": "Fri Nov 19 14:51:04 2010 -0800"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Dec 01 15:53:22 2010 -0800"
      },
      "message": "rbd: replace the rbd sysfs interface\n\nThe new interface creates directories per mapped image\nand under each it creates a subdir per available snapshot.\nThis allows keeping a cleaner interface within the sysfs\nguidelines. The ABI documentation was updated too.\n\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "a115413de13ae6beb0cbfc198afe385a261ab284",
      "tree": "45afb2173a442b8524cf70fc6b50eee80437c68a",
      "parents": [
        "c13f7e1a94007c4381814e7daf033e3e8f0663f3"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Sat Nov 13 20:42:29 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Nov 27 19:50:43 2010 +0100"
      },
      "message": "drbd: fix for spin_lock_irqsave in endio callback\n\nIn commit 9b7f76dc37919ea36caa9680a3f765e5b19b25fb,\n Author: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n Date:   Wed Aug 11 23:40:24 2010 +0200\n\n    drbd: new configuration parameter c-min-rate\n\na bad chunk slipped through, which is now reverted as well,\nrestoring the correct irqsave for the endio callback.\n\nThis patch also add comments at both req_mod()\nand in the endio callback so it should not happen again.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "c13f7e1a94007c4381814e7daf033e3e8f0663f3",
      "tree": "38115a45b39cd53204268238b8dc6e5bbfd9bafc",
      "parents": [
        "19650e8580987c0ffabc2fe2cbc16b944789df8b"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Fri Oct 29 23:32:01 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Nov 27 19:50:43 2010 +0100"
      },
      "message": "drbd: don\u0027t recvmsg with zero length\n\nThis should fix a performance degradation we observed recently.\n\nIf we don\u0027t expect any subheader, we should not call into the tcp stack,\nas that may add considerable latency if there is no data available at\nthis point.\n\nFor a synthetic synchronous write load with single outstanding writes,\nthis additional latency when processing the \"unplug remote\" packet\nadded up to a performance degradation factor \u003e\u003d 10.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "78daa87b1d332e4ac963c793a4157533d57501c7",
      "tree": "c133840b219a446c11fa2391bb0d887e71f5809f",
      "parents": [
        "d4d2ad948e9a9c316e72fdc09d7490dfda4773da",
        "bbe425cd9ae83eacd0c9f09df2bf56dc911a54cd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:17:50 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:17:50 2010 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  cciss: fix build for PROC_FS disabled\n  block: fix amiga and atari floppy driver compile warning\n  blk-throttle: Fix calculation of max number of WRITES to be dispatched\n  ioprio: grab rcu_read_lock in sys_ioprio_{set,get}()\n  xen/blkfront: cope with backend that fail empty BLKIF_OP_WRITE_BARRIER requests\n  xen/blkfront: Implement FUA with BLKIF_OP_WRITE_BARRIER\n  xen/blkfront: change blk_shadow.request to proper pointer\n  xen/blkfront: map REQ_FLUSH into a full barrier\n"
    },
    {
      "commit": "451a3c24b0135bce54542009b5fde43846c7cf67",
      "tree": "f0fbbcc155aef2a1ffcb8aa593fe7a966d0e6900",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 17 16:26:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 17 08:59:32 2010 -0800"
      },
      "message": "BKL: remove extraneous #include \u003csmp_lock.h\u003e\n\nThe big kernel lock has been removed from all these files at some point,\nleaving only the #include.\n\nRemove this too as a cleanup.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bbe425cd9ae83eacd0c9f09df2bf56dc911a54cd",
      "tree": "10d8079da77227e128ca38a4048ce8abe18f9fb4",
      "parents": [
        "3e9bb2a071614f1d185740f31ac503ecba11d783"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 17 11:56:13 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 17 11:56:13 2010 +0100"
      },
      "message": "cciss: fix build for PROC_FS disabled\n\nThe recent patch to fix the removal of a non-existing proc\ndirectory introduced this build problem for !CONFIG_PROC_FS:\n\ndrivers/block/cciss.c:4929: error: \u0027proc_cciss\u0027 undeclared (first use in this function)\n\nFix it by moving proc_cciss outside of the CONFIG_PROC_FS scope.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "f281233d3eba15fb225d21ae2e228fd4553d824a",
      "tree": "51134454ba8acb558735f90be5540f7d756483e3",
      "parents": [
        "bdbd01ac444bffb3c9aefed3059d12554059b320"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Nov 16 02:10:29 2010 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 13:33:23 2010 -0800"
      },
      "message": "SCSI host lock push-down\n\nMove the mid-layer\u0027s -\u003equeuecommand() invocation from being locked\nwith the host lock to being unlocked to facilitate speeding up the\ncritical path for drivers who don\u0027t need this lock taken anyway.\n\nThe patch below presents a simple SCSI host lock push-down as an\nequivalent transformation.  No locking or other behavior should change\nwith this patch.  All existing bugs and locking orders are preserved.\n\nAdditionally, add one parameter to queuecommand,\n\tstruct Scsi_Host *\nand remove one parameter from queuecommand,\n\tvoid (*done)(struct scsi_cmnd *)\n\nScsi_Host* is a convenient pointer that most host drivers need anyway,\nand \u0027done\u0027 is redundant to struct scsi_cmnd-\u003escsi_done.\n\nMinimal code disturbance was attempted with this change.  Most drivers\nneeded only two one-line modifications for their host lock push-down.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nAcked-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e9bb2a071614f1d185740f31ac503ecba11d783",
      "tree": "26266b33e40c522c734227946b03bf5557898f62",
      "parents": [
        "c2f6805d470af369a7337801deeecea800dbfe1c"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Mon Nov 15 19:32:43 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Nov 15 19:32:43 2010 +0100"
      },
      "message": "block: fix amiga and atari floppy driver compile warning\n\nGeert, my crosstool don\u0027t produce warning below. I guess this has to do\nsomething with compiler version.\n\n- Geert noticed following warning during compilation.\n\n  drivers/block/amiflop.c:1344: warning: ‘rq’ may be used uninitialized in\n  this function\n  drivers/block/ataflop.c:1402: warning: ‘rq’ may be used uninitialized in\n  this function\n\n- Initialize rq to NULL to fix the warning. If we can\u0027t find a suitable request\n  to dispatch, this function should return NULL instead of a possibly garbage\n  pointer.\n\n- Cross compile tested only. Don\u0027t have hardware to test it.\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "c25ecd0a21d5e08160cb5cc984f9e2b8ee347443",
      "tree": "0e4dcacf1bf603f259b8d27445a10e60fa8d00d7",
      "parents": [
        "190683a9d5457e6d962c232ffbecac3ab158dddd",
        "9457b24a0955bbdd2e89220a75de69fe09501bba"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 14 11:57:05 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 14 11:57:05 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "8a9f772c14f85e2a580baadc50c194835da2d4e5",
      "tree": "4ac04e465fa8295944f997fb517dc9904bb8e4f3",
      "parents": [
        "25a34554d600b799cbf5159bef372b02d3b4e1c6",
        "cedb4a7d9f6aedb0dce94d6285b69dcb3c10fa05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 08:52:47 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 08:52:47 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block: (27 commits)\n  block: remove unused copy_io_context()\n  Documentation: remove anticipatory scheduler info\n  block: remove REQ_HARDBARRIER\n  ioprio: rcu_read_lock/unlock protect find_task_by_vpid call (V2)\n  ioprio: fix RCU locking around task dereference\n  block: ioctl: fix information leak to userland\n  block: read i_size with i_size_read()\n  cciss: fix proc warning on attempt to remove non-existant directory\n  bio: take care not overflow page count when mapping/copying user data\n  block: limit vec count in bio_kmalloc() and bio_alloc_map_data()\n  block: take care not to overflow when calculating total iov length\n  block: check for proper length of iov entries in blk_rq_map_user_iov()\n  cciss: remove controllers supported by hpsa\n  cciss: use usleep_range not msleep for small sleeps\n  cciss: limit commands allocated on reset_devices\n  cciss: Use kernel provided PCI state save and restore functions\n  cciss: fix board status waiting code\n  drbd: Removed checks for REQ_HARDBARRIER on incomming BIOs\n  drbd: REQ_HARDBARRIER -\u003e REQ_FUA transition for meta data accesses\n  drbd: Removed the BIO_RW_BARRIER support form the receiver/epoch code\n  ...\n"
    },
    {
      "commit": "1ff5125fb85a46279421350eeaf812f728784d35",
      "tree": "e795ca6d427d136ea097f756eea8ea5cff1c4055",
      "parents": [
        "cedb4a7d9f6aedb0dce94d6285b69dcb3c10fa05",
        "dcb8baeceaa1c629bbd06f472cea023ad08a0c33"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Nov 12 08:47:04 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Nov 12 08:47:04 2010 +0100"
      },
      "message": "Merge branch \u0027upstream/blkfront\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen into for-linus\n\nConflicts:\n\tdrivers/block/xen-blkfront.c\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\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": "00e375e7e962f938f6b3c93e4cd097a5e26cc788",
      "tree": "9aacf8566c688273af830fc4e50186810068b028",
      "parents": [
        "f85acd81aa623e3dcf268c90e5cd8ecf36830984",
        "4205df34003eec4371020872cdfa228ffae5bd6a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 10 14:51:27 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 10 14:51:27 2010 +0100"
      },
      "message": "Merge branch \u0027for-2.6.37/drivers\u0027 into for-linus\n\nConflicts:\n\tdrivers/block/cciss.c\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "77304d2abac6101f7249754ffdd4421258877ab0",
      "tree": "8ee5914529d70120528a630a8e904c22f8c4f98c",
      "parents": [
        "90fdb0b98a62d78a0650b9fd3ddc58a48f71d740"
      ],
      "author": {
        "name": "Mike Snitzer",
        "email": "snitzer@redhat.com",
        "time": "Mon Nov 08 14:39:12 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 10 14:40:53 2010 +0100"
      },
      "message": "block: read i_size with i_size_read()\n\nConvert direct reads of an inode\u0027s i_size to using i_size_read().\n\ni_size_{read,write} use a seqcount to protect reads from accessing\nincomple writes.  Concurrent i_size_write()s require mutual exclussion\nto protect the seqcount that is used by i_size_{read,write}.  But\ni_size_read() callers do not need to use additional locking.\n\nSigned-off-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nAcked-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "90fdb0b98a62d78a0650b9fd3ddc58a48f71d740",
      "tree": "5133bd8b1d91bdcd4d56f5c6ee5fb5d94326654e",
      "parents": [
        "cb4644cac4a2797afc847e6c92736664d4b0ea34"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Nov 08 14:29:13 2010 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Nov 10 14:40:52 2010 +0100"
      },
      "message": "cciss: fix proc warning on attempt to remove non-existant directory\n\nRandy reports that he gets the following stack trace when\nremoving the cciss module:\n\n[  109.164277] Pid: 3463, comm: rmmod Not tainted 2.6.37-rc1 #7\n[  109.164280] Call Trace:\n[  109.164292]  [\u003cffffffff8107eb8d\u003e] warn_slowpath_common+0xc6/0xf3\n[  109.164299]  [\u003cffffffff8107ecaa\u003e] warn_slowpath_fmt+0x5b/0x6b\n[  109.164307]  [\u003cffffffff8155175b\u003e] ? _raw_spin_unlock+0x40/0x4b\n[  109.164313]  [\u003cffffffff8123dd1e\u003e] remove_proc_entry+0x156/0x35e\n[  109.164320]  [\u003cffffffff812cd91b\u003e] ? do_raw_spin_unlock+0xff/0x10f\n[  109.164327]  [\u003cffffffff8113823d\u003e] ? trace_hardirqs_on+0x10/0x4a\n[  109.164333]  [\u003cffffffff8155162d\u003e] ? _raw_spin_unlock_irq+0x4c/0x7b\n[  109.164339]  [\u003cffffffff8154d4d1\u003e] ? wait_for_common+0x145/0x15e\n[  109.164345]  [\u003cffffffff81075337\u003e] ? default_wake_function+0x0/0x22\n[  109.164357]  [\u003cffffffffa0615a8f\u003e] cciss_cleanup+0xa9/0xc7 [cciss]\n[  109.164365]  [\u003cffffffff810d3cb0\u003e] sys_delete_module+0x2d6/0x368\n[  109.164371]  [\u003cffffffff8155036b\u003e] ? lockdep_sys_exit_thunk+0x35/0x67\n[  109.164377]  [\u003cffffffff810fdfaf\u003e] ? audit_syscall_entry+0x172/0x1a5\n[  109.164383]  [\u003cffffffff815502f5\u003e] ? trace_hardirqs_on_thunk+0x3a/0x3f\n[  109.164389]  [\u003cffffffff8100ea72\u003e] system_call_fastpath+0x16/0x1b\n[  109.164394] ---[ end trace 88e8568246ed0b1d ]---\n\nwhich will happen if you don\u0027t actually have an HP CISS adapter,\nsince it\u0027ll do an uncondional removal of a proc directory it\nnever attempted to create in that case.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nTested-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "840a185dddfd098b78b96a30da4cad722a7aef18",
      "tree": "25ad5551e354762f765c57ee0e0993c129a60582",
      "parents": [
        "1d5439b9a29b1386d44a617cbaf2f7acde1d697c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 29 01:15:29 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 08 13:50:07 2010 -0800"
      },
      "message": "aoe: remove dev_base_lock use from aoecmd_cfg_pkts()\n\ndev_base_lock is the legacy way to lock the device list, and is planned\nto disappear. (writers hold RTNL, readers hold RCU lock)\n\nConvert aoecmd_cfg_pkts() to RCU locking.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: \"Ed L. Cashin\" \u003cecashin@coraid.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d017bf6b4ff57db16a481a48bdad79274610a403",
      "tree": "3b4cb3b4c3b5b024abdae29ec973cbd903afe6fc",
      "parents": [
        "151f52f09c5728ecfdd0c289da1a4b30bb416f2c"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Sat Nov 06 08:16:05 2010 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 06 07:49:56 2010 -0700"
      },
      "message": "floppy: fix another use-after-free\n\nWhile scanning the floopy code due to c093ee4f07f4 (\"floppy: fix\nuse-after-free in module load failure path\"), I found one more instance\nof trying to access disk-\u003equeue pointer after doing put_disk() on\ngendisk.  For some reason , floppy moule still loads/unloads fine.  The\nobject is probably still around with right pointer values.\n\n o There seems to be one more instance of trying to cleanup the request\n   queue after we have called put_disk() on associated gendisk.\n\n o This fix is more out of code inspection.  Even without this fix for\n   some reason I am able to load/unload floppy module without any\n   issues.\n\n o Floppy module loads/unloads fine after the fix.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c093ee4f07f46d3a835841cafa07514fa94878d2",
      "tree": "aafb816d450e3e3dd352c650b50fe2202919dd2c",
      "parents": [
        "433039e97f672b81e6c8f6daef385dcf035c6e29"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 05 17:45:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 05 17:45:59 2010 -0700"
      },
      "message": "floppy: fix use-after-free in module load failure path\n\nCommit 488211844e0c (\"floppy: switch to one queue per drive instead of\nsharing a queue\") introduced a use-after-free.  We do \"put_disk()\" on\nthe disk device _before_ we then clean up the queue associated with that\ndisk.\n\nMove the put_disk() down to avoid dereferencing a free\u0027d data structure.\n\nCc: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nReported-and-tested-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\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": "6fa977520871b1fc0be64247abad02b678c13fda",
      "tree": "940613e95371d675afae9e88b3353c6772423f27",
      "parents": [
        "7ab5118d7c2be650bc936894f159dc1c597badae"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Thu Oct 28 06:33:27 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Oct 28 06:33:27 2010 -0600"
      },
      "message": "cciss: remove overlapping PCI IDs\n\nThis patch removes the controller overlap between cciss and hpsa. It was\ndecided that no overlap should exist. All new controllers will use the hpsa\nSCSI based driver.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "7ab5118d7c2be650bc936894f159dc1c597badae",
      "tree": "ca1159b578e40251f79e25acd31a9d668bffece5",
      "parents": [
        "027b180d7405f2b2df25e2a8b1b796b00f3773cf"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segooon@gmail.com",
        "time": "Thu Oct 28 06:31:55 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Oct 28 06:31:55 2010 -0600"
      },
      "message": "block: cciss: fix information leak to userland\n\nStructure IOCTL_Command_struct is copied to userland with\nsome padding fields at the end of the struct unitialized.\nIt leads to leaking of contents of kernel stack memory.\n\nSigned-off-by: Vasiliy Kulikov \u003csegooon@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "027b180d7405f2b2df25e2a8b1b796b00f3773cf",
      "tree": "131c7744e2f4c2d3deeb8d74485c528e67707e80",
      "parents": [
        "e1fbd9210d5d172f951b1d21eb58383919c4d10d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "message": "drivers/block/aoe/aoeblk.c: ratelimit a warning printk\n\nAs described in https://bugzilla.kernel.org/show_bug.cgi?id\u003d19922\n\n: I had an AoE device go down overnight, and while a server was trying to\n: write to it, it was also writing this message to its logs:\n:\n: 209                 printk(KERN_INFO \"aoe: device %ld.%d is not up\\n\",\n: 210                         d-\u003eaoemajor, d-\u003eaoeminor);\n:\n: The message appeared many times per second, and over several hours\n: produced about 7.5 gigabytes of log files, filling up all free space on\n: the root filesystem.\n\nCc: \"Ed L. Cashin\" \u003cecashin@coraid.com\u003e\nSuggested-by: Roman Mamedov \u003croman@rm.pp.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "e1fbd9210d5d172f951b1d21eb58383919c4d10d",
      "tree": "487ba732770ea2f3ef39f57161a795477feaf6a6",
      "parents": [
        "5ad21a337420e82bffb7836ab34027dd7ad624b8"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "message": "drivers/block/z2ram.c: correct printing of sector_t\n\nIf CONFIG_LBDAF\u003dy, `sector_t\u0027 becomes `u64\u0027 instead of `unsigned long\u0027:\n\ndrivers/block/z2ram.c: In function ¡do_z2_request¢:\ndrivers/block/z2ram.c:83: warning: format %lu expects type `long unsigned int\u0027, but argument 2 has type `sector_t\u0027\n\nHence always cast it to `unsigned long long\u0027 for printing.  Also do the\npr_err() dance, while we\u0027re at it.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "5ad21a337420e82bffb7836ab34027dd7ad624b8",
      "tree": "64fea23f93077564abc0678262721b9d27b3d8d8",
      "parents": [
        "2027ae1fa914640c287171035cb607a03ad36e95"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "message": "aoe: don\u0027t use flush_scheduled_work()\n\nflush_scheduled_work() is deprecated and scheduled to be removed.\nDirectly cancel aoedev-\u003ework on free instead of depending on\nflush_scheduled_works().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: \"Ed L. Cashin\" \u003cecashin@coraid.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "2027ae1fa914640c287171035cb607a03ad36e95",
      "tree": "b691a7cd20b2fe1b6736f5a02497a9fc7f897a19",
      "parents": [
        "51a0bb0c2e614659132fce272c8a1815a12c5c2a"
      ],
      "author": {
        "name": "Nicolas Kaiser",
        "email": "nikai@nikai.net",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Oct 28 06:15:26 2010 -0600"
      },
      "message": "drivers/block/drbd/drbd_main.c: fix error path\n\nFailure to create drbd_ee_mempool appears not to get checked.  Looks like\na copy-and-paste problem to me.\n\nSigned-off-by: Nicolas Kaiser \u003cnikai@nikai.net\u003e\nCc: Lars Ellenberg \u003cdrbd-dev@lists.linbit.com\u003e\nCc: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "51a0bb0c2e614659132fce272c8a1815a12c5c2a",
      "tree": "93554b329e8e6cd9378641422dea4245c05a98dd",
      "parents": [
        "12ba8d1e9262ce81a695795410bd9ee5c9407ba1"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Wed Oct 27 19:51:30 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Wed Oct 27 19:51:30 2010 -0600"
      },
      "message": "loop: Properly clear sysfs in autoclear mode\n\nIn autoclear mode bdev is NULL but the sysfs\nentry should be destroyed otherwise this warning appears:\n\nWARNING: at fs/sysfs/dir.c:451 sysfs_add_one+0x82/0x95()\nsysfs: cannot create duplicate filename \u0027/devices/virtual/block/loop0/loop\u0027\n\nFixes commit ee86273062cbb310665fe49e1f1937d2cf85b0b9\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "61ecdb801ef2cd28e32442383106d7837d76deac",
      "tree": "3ec4f04e09cc4a9b76dafaaa0c4dfd07e825e632",
      "parents": [
        "2e30244a7cc1ff09013a1238d415b4076406388e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 26 14:21:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 16:52:08 2010 -0700"
      },
      "message": "mm: strictly nested kmap_atomic()\n\nEnsure kmap_atomic() usage is strictly nested\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51f00a471ce8f359627dd99aeac322947a0e491b",
      "tree": "de3f0c26359d7846fc5d6d0fdd147e225d979add",
      "parents": [
        "a7f505c6b15fb35c0de8136e370d2927ce29452c",
        "97ff46cb69da22037346670ae515217c658ace02"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 08:19:14 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 25 08:19:14 2010 -0700"
      },
      "message": "Merge branch \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027next-devicetree\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  mtd/m25p80: add support to parse the partitions by OF node\n  of/irq: of_irq.c needs to include linux/irq.h\n  of/mips: Cleanup some include directives/files.\n  of/mips: Add device tree support to MIPS\n  of/flattree: Eliminate need to provide early_init_dt_scan_chosen_arch\n  of/device: Rework to use common platform_device_alloc() for allocating devices\n  of/xsysace: Fix OF probing on little-endian systems\n  of: use __be32 types for big-endian device tree data\n  of/irq: remove references to NO_IRQ in drivers/of/platform.c\n  of/promtree: add package-to-path support to pdt\n  of/promtree: add of_pdt namespace to pdt code\n  of/promtree: no longer call prom_ functions directly; use an ops structure\n  of/promtree: make drivers/of/pdt.c no longer sparc-only\n  sparc: break out some PROM device-tree building code out into drivers/of\n  of/sparc: convert various prom_* functions to use phandle\n  sparc: stop exporting openprom.h header\n  powerpc, of_serial: Endianness issues setting up the serial ports\n  of: MTD: Fix OF probing on little-endian systems\n  of: GPIO: Fix OF probing on little-endian systems\n"
    },
    {
      "commit": "4205df34003eec4371020872cdfa228ffae5bd6a",
      "tree": "70b84cf9f1e64469db74ef5056c51e81d50f20e0",
      "parents": [
        "332c2f80a894d349bfb95fae00daf74477d4afcd"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Sat Oct 23 18:47:31 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:47:31 2010 +0200"
      },
      "message": "cciss: remove controllers supported by hpsa\n\nWe would prefer not to have any overlap between the two drivers.\nRemove the cciss_allow_hpsa option, as it it is no longer needed.\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "332c2f80a894d349bfb95fae00daf74477d4afcd",
      "tree": "e7d6ae2f818b0e75e8440046fbeaa5c2ea46b457",
      "parents": [
        "186fb9cf6a1154bc9b071adfd72fcf256285eb26"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Fri Oct 22 14:21:22 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:45:09 2010 +0200"
      },
      "message": "cciss: use usleep_range not msleep for small sleeps\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "186fb9cf6a1154bc9b071adfd72fcf256285eb26",
      "tree": "8d32facb996b7140aeb2abed2a52187a321f3f51",
      "parents": [
        "f442e64b93e16dba6bf9ab7e8dc5a90f6bcd8a85"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Fri Oct 22 14:21:17 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:45:08 2010 +0200"
      },
      "message": "cciss: limit commands allocated on reset_devices\n\nThis is to conserve memory in a memory-limited kdump scenario\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "f442e64b93e16dba6bf9ab7e8dc5a90f6bcd8a85",
      "tree": "c8418e1e6c7291232bbb531817740a86e582920a",
      "parents": [
        "afa842fa641e11a025725883b04d1e144e6bad39"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Fri Oct 22 14:21:12 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:45:07 2010 +0200"
      },
      "message": "cciss: Use kernel provided PCI state save and restore functions\n\nand use the doorbell reset method if available (which doesn\u0027t\nlock up the controller if you properly save and restore all\nthe PCI registers that you\u0027re supposed to.)\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "afa842fa641e11a025725883b04d1e144e6bad39",
      "tree": "3cb94bba43974ac3eac1f63ebd96ba1d743bb715",
      "parents": [
        "53c2eb24ff49abe1bfc45d067797f74b409690d8"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Fri Oct 22 14:21:07 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:45:06 2010 +0200"
      },
      "message": "cciss: fix board status waiting code\n\nAfter a reset, we should first wait for the board to become \"not ready\",\nand then wait for it to become \"ready\", instead of immediately\nwaiting for it to become \"ready\", and do this waiting *after*\nrestoring PCI config space registers.\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "53c2eb24ff49abe1bfc45d067797f74b409690d8",
      "tree": "9684ee71d2fda68cde3fd404ba5ffa094fde7351",
      "parents": [
        "7f3883962870dd28b5f2322ac44a9d03640ef448",
        "650789c87f16dcdf1dd0a67ac7461b7537534855"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:43:55 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Oct 23 18:43:55 2010 +0200"
      },
      "message": "Merge branch \u0027for-jens\u0027 of git://git.drbd.org/linux-2.6-drbd into for-2.6.37/drivers\n"
    },
    {
      "commit": "650789c87f16dcdf1dd0a67ac7461b7537534855",
      "tree": "47e8ffc3b45542fd4d447a8c902b977c108fc00f",
      "parents": [
        "a8a4e51e6965db84d2af041370ea2ab6232aa4f1"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Aug 25 10:47:17 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Sat Oct 23 13:02:34 2010 +0200"
      },
      "message": "drbd: Removed checks for REQ_HARDBARRIER on incomming BIOs\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "a8a4e51e6965db84d2af041370ea2ab6232aa4f1",
      "tree": "74f1301712fa631faf6c39337bced33060ca5038",
      "parents": [
        "2451fc3b2bd3a7205270da75a21dde0d5d7c96a2"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Aug 25 10:21:04 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Sat Oct 23 13:01:45 2010 +0200"
      },
      "message": "drbd: REQ_HARDBARRIER -\u003e REQ_FUA transition for meta data accesses\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "2451fc3b2bd3a7205270da75a21dde0d5d7c96a2",
      "tree": "60c31f1c6da680d44ee7492be4cd377127f2ac3d",
      "parents": [
        "8825f7c3e5c7b251b49fc594658a96f59417ee16"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Aug 24 13:43:11 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Sat Oct 23 13:00:48 2010 +0200"
      },
      "message": "drbd: Removed the BIO_RW_BARRIER support form the receiver/epoch code\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "5cc103506289de7ee0a0b526ae0381541990cad4",
      "tree": "ae8a4958e70c6d1295030b40e333dcc007b3c074",
      "parents": [
        "73ecf3a6e3f0206bf56a0fefe3b3eda042fb7034",
        "92ca0dc5ee022e4c0e488177e1d8865a0778c6c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 20:30:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 20:30:48 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (141 commits)\n  USB: mct_u232: fix broken close\n  USB: gadget: amd5536udc.c: fix error path\n  USB: imx21-hcd - fix off by one resource size calculation\n  usb: gadget: fix Kconfig warning\n  usb: r8a66597-udc: Add processing when USB was removed.\n  mxc_udc: add workaround for ENGcm09152 for i.MX35\n  USB: ftdi_sio: add device ids for ScienceScope\n  USB: musb: AM35x: Workaround for fifo read issue\n  USB: musb: add musb support for AM35x\n  USB: AM35x: Add musb support\n  usb: Fix linker errors with CONFIG_PM\u003dn\n  USB: ohci-sh - use resource_size instead of defining its own resource_len macro\n  USB: isp1362-hcd - use resource_size instead of defining its own resource_len macro\n  USB: isp116x-hcd - use resource_size instead of defining its own resource_len macro\n  USB: xhci: Fix compile error when CONFIG_PM\u003dn\n  USB: accept some invalid ep0-maxpacket values\n  USB: xHCI: PCI power management implementation\n  USB: xHCI: bus power management implementation\n  USB: xHCI: port remote wakeup implementation\n  USB: xHCI: port power management implementation\n  ...\n\nManually fix up (non-data) conflict: the SCSI merge gad renamed the\n\u0027hw_sector_size\u0027 member to \u0027physical_block_size\u0027, and the USB tree\nbrought a new use of it.\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": "8abfc6e7a45eb74e51904bbae676fae008b11366",
      "tree": "57d0a24558c0693e3a52e8e756616f6c72def1e9",
      "parents": [
        "e9dd2b6837e26fe202708cce5ea4bb4ee3e3482e",
        "6362beea8914cbd4630ccde3617d944aeca2d48f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:03:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:03:12 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.37/drivers\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.37/drivers\u0027 of git://git.kernel.dk/linux-2.6-block: (95 commits)\n  cciss: fix PCI IDs for new Smart Array controllers\n  drbd: add race-breaker to drbd_go_diskless\n  drbd: use dynamic_dev_dbg to optionally log uuid changes\n  dynamic_debug.h: Fix dynamic_dev_dbg() macro if CONFIG_DYNAMIC_DEBUG not set\n  drbd: cleanup: change \"\u003c\u003d 0\" to \"\u003d\u003d 0\"\n  drbd: relax the grace period of the md_sync timer again\n  drbd: add some more explicit drbd_md_sync\n  drbd: drop wrong debug asserts, fix recently introduced race\n  drbd: cleanup useless leftover warn/error printk\u0027s\n  drbd: add explicit drbd_md_sync to drbd_resync_finished\n  drbd: Do not log an ASSERT for P_OV_REQUEST packets while C_CONNECTED\n  drbd: fix for possible deadlock on IO error during resync\n  drbd: fix unlikely access after free and list corruption\n  drbd: fix for spurious fullsync (uuids rotated too fast)\n  drbd: allow for explicit resync-finished notifications\n  drbd: preparation commit, using full state in receive_state()\n  drbd: drbd_send_ack_dp must not rely on header information\n  drbd: Fix regression in recv_bm_rle_bits (compressed bitmap)\n  drbd: Fixed a stupid copy and paste error\n  drbd: Allow larger values for c-fill-target.\n  ...\n\nFix up trivial conflict in drivers/block/ataflop.c due to BKL removal\n"
    },
    {
      "commit": "e9dd2b6837e26fe202708cce5ea4bb4ee3e3482e",
      "tree": "f42fd892495bfc4cbb740d06b016d267c9c42d00",
      "parents": [
        "4f3a29dadaf999a273f1e7fe2476595d0283eef3",
        "b4627321e18582dcbdeb45d77df29d3177107c65"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:00:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 17:00:32 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.37/core\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.37/core\u0027 of git://git.kernel.dk/linux-2.6-block: (39 commits)\n  cfq-iosched: Fix a gcc 4.5 warning and put some comments\n  block: Turn bvec_k{un,}map_irq() into static inline functions\n  block: fix accounting bug on cross partition merges\n  block: Make the integrity mapped property a bio flag\n  block: Fix double free in blk_integrity_unregister\n  block: Ensure physical block size is unsigned int\n  blkio-throttle: Fix possible multiplication overflow in iops calculations\n  blkio-throttle: limit max iops value to UINT_MAX\n  blkio-throttle: There is no need to convert jiffies to milli seconds\n  blkio-throttle: Fix link failure failure on i386\n  blkio: Recalculate the throttled bio dispatch time upon throttle limit change\n  blkio: Add root group to td-\u003etg_list\n  blkio: deletion of a cgroup was causes oops\n  blkio: Do not export throttle files if CONFIG_BLK_DEV_THROTTLING\u003dn\n  block: set the bounce_pfn to the actual DMA limit rather than to max memory\n  block: revert bad fix for memory hotplug causing bounces\n  Fix compile error in blk-exec.c for !CONFIG_DETECT_HUNG_TASK\n  block: set the bounce_pfn to the actual DMA limit rather than to max memory\n  block: Prevent hang_check firing during long I/O\n  cfq: improve fsync performance for small files\n  ...\n\nFix up trivial conflicts due to __rcu sparse annotation in include/linux/genhd.h\n"
    },
    {
      "commit": "67ba37293e938208795d6a3562201bdb0cf43393",
      "tree": "3522e949ff19f3809583bfb3fa3973ddf264689d",
      "parents": [
        "cd07202cc8262e1669edff0d97715f3dd9260917",
        "5bba6c56dc99ff88f79a79572e29ecf445710878"
      ],
      "author": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Fri Oct 22 21:24:06 2010 +0100"
      },
      "committer": {
        "name": "Stefano Stabellini",
        "email": "stefano.stabellini@eu.citrix.com",
        "time": "Fri Oct 22 21:24:06 2010 +0100"
      },
      "message": "Merge commit \u0027konrad/stable/xen-pcifront-0.8.2\u0027 into 2.6.36-rc8-initial-domain-v6\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "c37927d4359e81b85de644f8fb08878717cf5f3f",
      "tree": "25dabf2d905e1410819d1bdaba0bf5f779100d3c",
      "parents": [
        "5704e44d283e907623e3775c1262f206a2c48cf3",
        "2a48fc0ab24241755dc93bfd4f01d68efab47f5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:49:54 2010 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  block: autoconvert trivial BKL users to private mutex\n  drivers: autoconvert trivial BKL users to private mutex\n  ipmi: autoconvert trivial BKL users to private mutex\n  mac: autoconvert trivial BKL users to private mutex\n  mtd: autoconvert trivial BKL users to private mutex\n  scsi: autoconvert trivial BKL users to private mutex\n\nFix up trivial conflicts (due to addition of private mutex right next to\ndeletion of a version string) in drivers/char/pcmcia/cm40[04]0_cs.c\n"
    },
    {
      "commit": "8fa7fd74ef398370383df276ca41082ba35aafd8",
      "tree": "eff3040f8e4b7ec1d2c611d811f790a2a96071ce",
      "parents": [
        "1992de83e375acc789daf66b7b72a812a5235b75"
      ],
      "author": {
        "name": "Michal Nazarewicz",
        "email": "mina86@mina86.com",
        "time": "Thu Oct 07 13:05:21 2010 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 22 10:21:49 2010 -0700"
      },
      "message": "USB: storage: Use USB_ prefix instead of US_ prefix\n\nThis commit changes prefix for some of the USB mass storage\nclass related macros (ie. USB_SC_ for subclass and USB_PR_\nfor class).\n\nSigned-off-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8825f7c3e5c7b251b49fc594658a96f59417ee16",
      "tree": "051e2d3c2c05e89c573297feeae315e541dc30d8",
      "parents": [
        "fb2c7a10eec051317ff091b2cb2d73c5ecd98c19"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 21 17:21:19 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:55:22 2010 +0200"
      },
      "message": "drbd: Silenced an assert\n\nThat assertion\u0027s condition needed adjustment for today\u0027s semantics\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "fb2c7a10eec051317ff091b2cb2d73c5ecd98c19",
      "tree": "71780ba6a3d19b9a79e076d99b2a4e85e8e04db9",
      "parents": [
        "bc571b8cb930ea78207851dd38b5a435fcb8891c"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Oct 19 12:08:13 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:53:10 2010 +0200"
      },
      "message": "drbd: rate limit an error message\n\nIf we don\u0027t rate limit it, and you happen to log err level messages via\nserial console, an IO error on a disconnected Primary may cause serious\nunresponsiveness.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "bc571b8cb930ea78207851dd38b5a435fcb8891c",
      "tree": "30181e1a2695cb59f72b182012adb41adbc8d077",
      "parents": [
        "6719fb036cea56a5ee9d0ac912ed8c7cabb27f49"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 21 18:07:31 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:51:22 2010 +0200"
      },
      "message": "drbd: fix a misleading printk\n\nThis codepath used to be called only for failed kmalloc GFP_ATOMIC,\nbut is now also triggered by other things.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "6719fb036cea56a5ee9d0ac912ed8c7cabb27f49",
      "tree": "eed4e4d3161cc6f7a4009c5c856e88c6707c88a3",
      "parents": [
        "82f59cc6353889b426cf13b6596d5a3d100fa09e"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Mon Oct 18 23:04:07 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:50:27 2010 +0200"
      },
      "message": "drbd: fix potential data divergence after multiple failures\n\nIf we get an IO-error during an activity log transaction,\nif we failed to write the bitmap of the evicted extent,\nwe must not write the transaction itself.\nIf we failed to write the transaction,\nwe must not even submit the corresponding bio,\nas its extent is not yet marked in the activity log.\n\nOtherwise, if this was a disconneted Primary (degraded cluster), which\nnow lost its disk as well, and we later re-attach the same backend\nstorage, we possibly \"forget\" to resync some parts of the disk that\npotentially have been changed.\n\nOn the receiving side, when receiving from a peer with unhealthy disk,\nchecking for pdsk \u003d\u003d D_DISKLESS is not enough, we need to set out of\nsync and do AL transactions for everything pdsk \u003c D_INCONSISTENT on the\nreceiving side.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "82f59cc6353889b426cf13b6596d5a3d100fa09e",
      "tree": "6d5a678516334f0a37a56a509b84322a0352719b",
      "parents": [
        "3beec1d446fba335f07787636920892dd3b2c658"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Sat Oct 16 12:13:47 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:46:11 2010 +0200"
      },
      "message": "drbd: fix potential deadlock on detach\n\nIf we have contention in drbd_al_begin_iod (heavy randon IO),\nan administrative request to detach the disk may deadlock\nfor similar reasons as the recently fixed deadlock if detaching\nbecause of IO-error.\n\nThe approach taken here is to either go through the intermediate\ncleanup state D_FAILED, or first lock out application io,\ndon\u0027t just go directly to D_DISKLESS.\n\nWe need an additional state bit (WAS_IO_ERROR) to distinguish\nthe -\u003e D_FAILED because of IO-error from other failures.\n\nSanitize D_ATTACHING -\u003e D_FAILED to D_ATTACHING -\u003e D_DISKLESS.\nIf only attaching, ldev may be missing still, but would be referenced\nfrom within the after_state_ch for -\u003e D_FAILED, potentially\ndereferencing a NULL pointer.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "3beec1d446fba335f07787636920892dd3b2c658",
      "tree": "fd4cad540fa79907562955e2584b60f68fda845f",
      "parents": [
        "aaa8e2b34c35d67abf1892cd62ea4e7565ca262c"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 14 13:31:48 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:41:20 2010 +0200"
      },
      "message": "drbd: tag a few error messages with \"assert failed\"\n\nIf those messages ever get logged, clearly state that they are\nactually failed ASSERTS, so our regression tests can pick them up\nfrom the logs more easily.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "aaa8e2b34c35d67abf1892cd62ea4e7565ca262c",
      "tree": "19e0cb68b9481dbfa89b26b58d33071f7f2db9bf",
      "parents": [
        "6362beea8914cbd4630ccde3617d944aeca2d48f"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Fri Oct 15 13:16:53 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 22 15:36:56 2010 +0200"
      },
      "message": "drbd: consolidate explicit drbd_md_sync into drbd_create_new_uuid\n\nEvery code path changing the current UUID needs to get it on stable\nstorage anyways. Flush it to disk right there, remove the now obsolte\nexplicit drbd_md_sync statements in the other code paths.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\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": "94ebd235c493f43681f609b0e02733337053e8f0",
      "tree": "3eb7ae304bd6268ab7793ffc0439525c9f285252",
      "parents": [
        "f6f0a6d6a7258eff41fd202fc70df18271a2de79",
        "fe5a50a10c7b3bf38e47045eadc6b87a5c157f44"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:40:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:40:33 2010 -0700"
      },
      "message": "Merge branch \u0027virtio\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027virtio\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  virtio_blk: remove BKL leftovers\n  virtio: console: Disable lseek(2) for port file operations\n  virtio: console: Send SIGIO in case of port unplug\n  virtio: console: Send SIGIO on new data arrival on ports\n  virtio: console: Send SIGIO to processes that request it for host events\n  virtio: console: Reference counting portdev structs is not needed\n  virtio: console: Add reference counting for port struct\n  virtio: console: Use cdev_alloc() instead of cdev_init()\n  virtio: console: Add a find_port_by_devt() function\n  virtio: console: Add a list of portdevs that are active\n  virtio: console: open: Use a common path for error handling\n  virtio: console: remove_port() should return void\n  virtio: console: Make write() return -ENODEV on hot-unplug\n  virtio: console: Make read() return -ENODEV on hot-unplug\n  virtio: console: Unblock poll on port hot-unplug\n  virtio: console: Un-block reads on chardev close\n  virtio: console: Check if portdev is valid in send_control_msg()\n  virtio: console: Remove control vq data only if using multiport support\n  virtio: console: Reset vdev before removing device\n"
    },
    {
      "commit": "2017bd19454ea7cdae19922d15b6930f6c8088a2",
      "tree": "53974657ab3a2c98f2da7b3fcb050ff5b697f876",
      "parents": [
        "9f1ad09493451c19d00c004da479acf699eeedd6",
        "efa4c1206eaff047c474af2136748a58eb8cc33b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:38:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:38:28 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (22 commits)\n  ceph: do not carry i_lock for readdir from dcache\n  fs/ceph/xattr.c: Use kmemdup\n  rbd: passing wrong variable to bvec_kunmap_irq()\n  rbd: null vs ERR_PTR\n  ceph: fix num_pages_free accounting in pagelist\n  ceph: add CEPH_MDS_OP_SETDIRLAYOUT and associated ioctl.\n  ceph: don\u0027t crash when passed bad mount options\n  ceph: fix debugfs warnings\n  block: rbd: removing unnecessary test\n  block: rbd: fixed may leaks\n  ceph: switch from BKL to lock_flocks()\n  ceph: preallocate flock state without locks held\n  ceph: add pagelist_reserve, pagelist_truncate, pagelist_set_cursor\n  ceph: use mapping-\u003enrpages to determine if mapping is empty\n  ceph: only invalidate on check_caps if we actually have pages\n  ceph: do not hide .snap in root directory\n  rbd: introduce rados block device (rbd), based on libceph\n  ceph: factor out libceph from Ceph file system\n  ceph-rbd: osdc support for osd call and rollback operations\n  ceph: messenger and osdc changes for rbd\n  ...\n"
    },
    {
      "commit": "fe5a50a10c7b3bf38e47045eadc6b87a5c157f44",
      "tree": "1b7a3161d13cbe2630b94d4030e817c8067a62b0",
      "parents": [
        "299fb61c08c2fcd1bb6d3a4e87e53dc368475416"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Sep 15 01:27:23 2010 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Oct 21 17:44:05 2010 +1030"
      },
      "message": "virtio_blk: remove BKL leftovers\n\nRemove the BKL usage added in \"block: push down BKL into .locked_ioctl\".\nVirtio-blk doesn\u0027t use the BKL for anything, and doesn\u0027t implement any\nioctl command by itself, but only uses the generic scsi_cmd_ioctl\nwhich is fine without the BKL.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "85b5aaa624aac568b8a3a88dbe4de6628c7cc527",
      "tree": "7051c9532750eb81fb76e1473a09fd82ba1f314c",
      "parents": [
        "b8d0638a98aa4a42ff322234b882487cd74e5c52"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Oct 11 21:15:11 2010 +0200"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Oct 20 15:38:25 2010 -0700"
      },
      "message": "rbd: passing wrong variable to bvec_kunmap_irq()\n\nWe should be passing \"buf\" here insead of \"bv\".  This is tricky because\nit\u0027s not the same as kmap() and kunmap().  GCC does warn about it if you\ncompile on i386 with CONFIG_HIGHMEM.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "b8d0638a98aa4a42ff322234b882487cd74e5c52",
      "tree": "4ab89ab0a293d404466106dd6bced5d68c171ce1",
      "parents": [
        "240634e9b3a8ae2a9e2b7effeea3b9a5b30d68fb"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Oct 11 21:14:23 2010 +0200"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Oct 20 15:38:24 2010 -0700"
      },
      "message": "rbd: null vs ERR_PTR\n\nceph_alloc_page_vector() returns ERR_PTR(-ENOMEM) on errors.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "f4cf3deef4c474381e8fee2e6099d49edd9105cb",
      "tree": "fbf21efa48b062e3a4af9a91c564f05e2b63090c",
      "parents": [
        "28f259b7cd78eb29d38b7ae6b475d656e08fd348"
      ],
      "author": {
        "name": "Yehuda Sadeh",
        "email": "yehuda@hq.newdream.net",
        "time": "Mon Sep 27 10:51:53 2010 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Oct 20 15:38:20 2010 -0700"
      },
      "message": "block: rbd: removing unnecessary test\n\nrbd_get_segment() can\u0027t return a negative value, we don\u0027t need to check\nthe return output.\n\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\n"
    },
    {
      "commit": "28f259b7cd78eb29d38b7ae6b475d656e08fd348",
      "tree": "4cbefc4ad9562af2c221b6fec52bb560772f0a40",
      "parents": [
        "496e59553c51ce18acc836de070106b583926b87"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segooon@gmail.com",
        "time": "Sun Sep 26 12:59:37 2010 +0400"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Oct 20 15:38:19 2010 -0700"
      },
      "message": "block: rbd: fixed may leaks\n\nrbd_client_create() doesn\u0027t free rbdc, this leads to many leaks.\n\nseg_len in rbd_do_op() is unsigned, so (seg_len \u003c 0) makes no sense.\nAlso if fixed check fails then seg_name is leaked.\n\nSigned-off-by: Vasiliy Kulikov \u003csegooon@gmail.com\u003e\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\n"
    },
    {
      "commit": "602adf400201636e95c3fed9f31fba54a3d7e844",
      "tree": "1b10046664d2c380a595ceaaafab2eed835dc937",
      "parents": [
        "3d14c5d2b6e15c21d8e5467dc62d33127c23a644"
      ],
      "author": {
        "name": "Yehuda Sadeh",
        "email": "yehuda@hq.newdream.net",
        "time": "Thu Aug 12 16:11:25 2010 -0700"
      },
      "committer": {
        "name": "Sage Weil",
        "email": "sage@newdream.net",
        "time": "Wed Oct 20 15:38:13 2010 -0700"
      },
      "message": "rbd: introduce rados block device (rbd), based on libceph\n\nThe rados block device (rbd), based on osdblk, creates a block device\nthat is backed by objects stored in the Ceph distributed object storage\ncluster.  Each device consists of a single metadata object and data\nstriped over many data objects.\n\nThe rbd driver supports read-only snapshots.\n\nSigned-off-by: Yehuda Sadeh \u003cyehuda@hq.newdream.net\u003e\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\n"
    },
    {
      "commit": "6362beea8914cbd4630ccde3617d944aeca2d48f",
      "tree": "f73f703e32b7018674ae26c35c91956bc4a10045",
      "parents": [
        "5dbfe7aedf54aa7f62fd659e34371d4ea0e7bffe"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Tue Oct 19 09:40:34 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Tue Oct 19 09:40:34 2010 +0200"
      },
      "message": "cciss: fix PCI IDs for new Smart Array controllers\n\ncciss: fix PCI IDs for new controllers\n\nThis patch fixes the botched up PCI IDs of new controllers. Please consider\nthis patch for inclusion.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\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": "bda80da469a93122121de601dd469ce1aaa6effa",
      "tree": "415fed71efabd2b2c529ef489785794354cae58d",
      "parents": [
        "a9fadeefdc869ff792591f57a9e33d8790d63292"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Mon Oct 18 15:33:09 2010 +1000"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Oct 18 09:50:09 2010 -0600"
      },
      "message": "of/xsysace: Fix OF probing on little-endian systems\n\nConvert big-endian DTB to little-endian if necessary.\n\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\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": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "5dbfe7aedf54aa7f62fd659e34371d4ea0e7bffe",
      "tree": "1ef5c18551186ba593010cbde9756e27b5d54685",
      "parents": [
        "ac7241211ded714873e8dc6d2f7c98ae7ea2cc30"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Fri Oct 15 09:52:46 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 15 14:06:53 2010 +0200"
      },
      "message": "drbd: add race-breaker to drbd_go_diskless\n\nThis adds a necessary race breaker to these commits:\n    drbd: fix for possible deadlock on IO error during resync\n    drbd: drop wrong debug asserts, fix recently introduced race\n\nWhat we do is get a refcount, check the state, then depending on the\nstate and the requested minimum disk state, either hold it (success),\nor give it back immediately (failed \"try lock\").\n\nSome code paths (flushing of drbd metadata) may still grab and hold a\nrefcount even if we are D_FAILED (application IO won\u0027t).\nSo even if we hit local_cnt \u003d\u003d 0 once after being D_FAILED,\nwe still need to wait for that again after we changed to D_DISKLESS.\nOnce local_cnt reaches 0 while we are D_DISKLESS, we can be sure that\nno one will look at the protected members anymore, so only then is it\nsafe to free them.\n\nWe cannot easily convert to standard locking primitives here, as we want\nto be able to use it in atomic context (we always do a \"try lock\"),\nas well as hold references for a \"long time\" (from IO submission to\ncompletion callback).\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "ac7241211ded714873e8dc6d2f7c98ae7ea2cc30",
      "tree": "9faa8e0012c9543978cc09654c9a5a3eac00057d",
      "parents": [
        "be70e2671b95a8982ff133ebaafff6399ad393d4"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 07 15:18:08 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Fri Oct 15 10:52:42 2010 +0200"
      },
      "message": "drbd: use dynamic_dev_dbg to optionally log uuid changes\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "2265769531afe267f864111c103b04b4427720b6",
      "tree": "da90c3ce2cb64b75288b7e2da600d3f9b9b5d5c4",
      "parents": [
        "ca0e6098aad127a555ba29d12e0503dbb1577aac"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Aug 12 00:38:45 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 19:17:23 2010 +0200"
      },
      "message": "drbd: cleanup: change \"\u003c\u003d 0\" to \"\u003d\u003d 0\"\n\ndt is unsigned so it\u0027s never less than zero.  We are calculating the\nelapsed time, and that\u0027s never less than zero (unless there is a bug or\nwe invent time travel).  The comparison here is just to guard against\ndivide by zero bugs.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\n"
    },
    {
      "commit": "ca0e6098aad127a555ba29d12e0503dbb1577aac",
      "tree": "c16a9288d2bd49df42aab46ccac98426710d5a77",
      "parents": [
        "856c50c7b616d50e1a3ccd4ce35f7814650fa594"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 14 15:01:21 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 19:15:38 2010 +0200"
      },
      "message": "drbd: relax the grace period of the md_sync timer again\n\nConsolidate the ifdef\u0027s for the debug level, accidentally the used both\nDEBUG and DRBD_DEBUG_MD_SYNC.  Default to off.\n\nFor production, we can safely reduce the grace period for this timer\nagain the the value we used to have.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "856c50c7b616d50e1a3ccd4ce35f7814650fa594",
      "tree": "4ffcbe5f1ce700813516c6d73d188748366fe42a",
      "parents": [
        "9d282875d85ebc2b49362310677fc0dcd91b9db9"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 14 13:37:40 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 19:08:58 2010 +0200"
      },
      "message": "drbd: add some more explicit drbd_md_sync\n\nIt sometimes may take a while for the after state change work to be\nscheduled, which does drbd_md_sync. At convenient places, we should do\nexplicit drbd_md_sync to have the new state information on disk as soon\nas possible.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "9d282875d85ebc2b49362310677fc0dcd91b9db9",
      "tree": "bbbb183462f56b4b065e6dcc5e686587f90ce192",
      "parents": [
        "0f8488e1608b6e30e705460f8110888c645f7f9f"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 14 13:57:07 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 19:08:32 2010 +0200"
      },
      "message": "drbd: drop wrong debug asserts, fix recently introduced race\n\n commit 2372c38caadeaebc68a5ee190782c2a0df01edc3\n drbd: fix for possible deadlock on IO error during resync\n\nintroduced a new ASSERT, which turns out to be wrong. Drop it.\n\nAlso serialize the state change to D_DISKLESS with the after state\nchange work of the -\u003e D_FAILED transition, don\u0027t open a new race.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "0f8488e1608b6e30e705460f8110888c645f7f9f",
      "tree": "00fa40d74f4db3cb666d079b962cb3f1d6136236",
      "parents": [
        "13d42685bec1f012dcbc5d187490eb1d15ec8219"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Oct 13 18:19:23 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:53 2010 +0200"
      },
      "message": "drbd: cleanup useless leftover warn/error printk\u0027s\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "13d42685bec1f012dcbc5d187490eb1d15ec8219",
      "tree": "977f7bdc5ed6c045a522e9bda46d456319dc9c91",
      "parents": [
        "b18b37befb37810ce50e1a9b0a6206dfe363d827"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Oct 13 17:37:54 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:52 2010 +0200"
      },
      "message": "drbd: add explicit drbd_md_sync to drbd_resync_finished\n\nAs we usually update the generation UUIDs here, we should explicitly\nsync them to disk.  So far this has been done only implicitly by related\ncode paths.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "b18b37befb37810ce50e1a9b0a6206dfe363d827",
      "tree": "02c8c204225c9214141abc14982eee82b1d22411",
      "parents": [
        "e9e6f3ec535d7b7c9e2ca64ad691e743e7d3c2f0"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Oct 13 15:32:44 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:51 2010 +0200"
      },
      "message": "drbd: Do not log an ASSERT for P_OV_REQUEST packets while C_CONNECTED\n\nThis might happen if on the VERIFY_S node the disk gets dropped.\nAlthough this is an cluster wide state transition, the VERIFY_T node,\nupdates it connection state first. Then the ack packet for the\ncluster wide state transition travels back, and the VERIFY_S node\nstops to produce the P_OV_REQUEST packets.\n\nThere is absolutely nothing wrong with that.\n\nFurther, do not log \"Can not satisfy peer\u0027s...\" on the VERIFY_S\nnode in this case, but pretend that they had equal checksum.\n\n[Bugz 327]\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "e9e6f3ec535d7b7c9e2ca64ad691e743e7d3c2f0",
      "tree": "cbc17d81b9d937b4fc515548f30f5ed00be193ee",
      "parents": [
        "22cc37a943832c948808884604ec6f5ff2594c1d"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Sep 14 20:26:27 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:50 2010 +0200"
      },
      "message": "drbd: fix for possible deadlock on IO error during resync\n\nScenario:\n\nSomething (say, flush-147:0) is in drbd_al_begin_io,\nholding a local_cnt, waiting for the resync to make progress.\n\nDisk fails, worker in after_state_ch does drbd_rs_cancel_all,\nthen waits for local_cnt to drop to zero.\n\nflush-147:0 is woken by drbd_rs_cancel_all, needs to write an AL\ntransaction, and queues that on the worker.\n\nDeadlock.\n\nFix: do not wait in the worker, have put_ldev() trigger the\nstate change D_FAILED -\u003e D_DISKLESS when necessary.\nput_ldev() cannot do the state change directly, as it may or may not\nalready hold various spinlocks. We queue a short work instead.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "22cc37a943832c948808884604ec6f5ff2594c1d",
      "tree": "5c0784f0010421c45c4fd847dac8692d03f399e6",
      "parents": [
        "af85e8e83d160f72a10e4467852646ac08614260"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Sep 14 20:40:41 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:49 2010 +0200"
      },
      "message": "drbd: fix unlikely access after free and list corruption\n\nVarious cleanup paths have been incomplete, for the very unlikely case\nthat we cannot allocate enough bios from process context when submitting\non behalf of the peer or resync process.\n\nNever observed.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "af85e8e83d160f72a10e4467852646ac08614260",
      "tree": "b2c842d6129065bbdd787a810038752e6239b0ef",
      "parents": [
        "e9ef7bb6f9696471ddddf0065afac8b435e5d051"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 07 16:07:55 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:48 2010 +0200"
      },
      "message": "drbd: fix for spurious fullsync (uuids rotated too fast)\n\nIf it was an \"empty\" resync, the SyncSource may have already \"finished\"\nthe resync and rotated the UUIDs, before noticing the connection loss\n(and generating a new uuid, if Primary, rotating again), while the\nSyncTarget did not change its uuids at all, or only got to the previous\nsync-uuid.\nThis would then again lead to a full sync on next handshake\n(see also Bug #251).\n\nFix:\nUse explicit resync finished notification even for empty resyncs,\ndo not finish an empty resync implicitly on the SyncSource.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "e9ef7bb6f9696471ddddf0065afac8b435e5d051",
      "tree": "565678cffe217fb8ca884626909632d4a360c7b4",
      "parents": [
        "4ac4aadacb5badc45679cd94cd362132daafe8c4"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Oct 07 15:55:39 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:47 2010 +0200"
      },
      "message": "drbd: allow for explicit resync-finished notifications\n\nPreparation patch so more drbd_send_state() usage on the peer\nwill not confuse drbd in receive_state().\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "4ac4aadacb5badc45679cd94cd362132daafe8c4",
      "tree": "3577305d13bd60a536cb8ed156d639e707bdeca4",
      "parents": [
        "2b2bf2148fd46874ee72a877c951e5c6675d1caa"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Thu Jul 22 17:39:26 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:46 2010 +0200"
      },
      "message": "drbd: preparation commit, using full state in receive_state()\n\nno functional change, just using full state instead of just the .conn\npart of it for comparisons.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "2b2bf2148fd46874ee72a877c951e5c6675d1caa",
      "tree": "15ec40dd736c5e7cf833deb61b6770d562fa11b5",
      "parents": [
        "004352fa60345e499379af310de73a2df1a5762a"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Wed Oct 06 11:46:55 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:45 2010 +0200"
      },
      "message": "drbd: drbd_send_ack_dp must not rely on header information\n\ndrbd commit 17c854fea474a5eb3cfa12e4fb019e46debbc4ec\ndrbd: receiving of big packets, for payloads between 64kByte and 4GByte\nintroduced a new on-the-wire packet header format.  We must no longer\nassume either format, but use the result of whatever drbd_recv_header\nhas decoded.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "004352fa60345e499379af310de73a2df1a5762a",
      "tree": "6a5e0651d30b1c7e4c0964875e44b23aad7f8ea8",
      "parents": [
        "f10f262349762c96ab247b6108af3a30b52b6f5a"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Oct 05 20:13:58 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:44 2010 +0200"
      },
      "message": "drbd: Fix regression in recv_bm_rle_bits (compressed bitmap)\n\nWe used to be16_to_cpu the length field in our received packet header.\ndrbd commit 17c854fea474a5eb3cfa12e4fb019e46debbc4ec\n    drbd: receiving of big packets, for payloads between 64kByte and 4GByte\nchanged this, but forgot to adjust a few places where we relied on\nh-\u003elength being in native byte order.\n\nThis broke the receiving side of the RLE compressed bitmap exchange.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "f10f262349762c96ab247b6108af3a30b52b6f5a",
      "tree": "a93a849cdfcad4264ac6313a9806254756a36013",
      "parents": [
        "00b425377d60e67e86721d4ce6d7cbf131a5d0fd"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Oct 05 16:50:17 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:43 2010 +0200"
      },
      "message": "drbd: Fixed a stupid copy and paste error\n\nThis caused rs_planed to be not in sync with the content of the fifo.\nThat in turn could cause that the resync comes to a complete halt.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "00b425377d60e67e86721d4ce6d7cbf131a5d0fd",
      "tree": "7e815cbdc90ebd1c801157f707e1e278a739ed68",
      "parents": [
        "f65363cfa05fe60874030461a0eeb84b7e60cba4"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Tue Oct 05 11:19:39 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:42 2010 +0200"
      },
      "message": "drbd: Allow larger values for c-fill-target.\n\nConnections through a compressing proxy might have more bits\non the fly. 500MByte instead of 50MByte\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "f65363cfa05fe60874030461a0eeb84b7e60cba4",
      "tree": "02bec26e82989cf7fff97e3f4ff0108b74032832",
      "parents": [
        "8979d9c9e0bc8e54cf5bd7a89abb2145f087b5e1"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Sep 14 20:14:09 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:41 2010 +0200"
      },
      "message": "drbd: fix possible access after free\n\nIf we release the page pointed to by md_io_tmpp, we need to zero out the\npointer, too, as that may be used later to decide whether we need to\nallocate a new page again.\n\nImpact: a previously freed page may be used and clobbered.  Depending on\nwhat that particular page is being used for meanwhile, this may result\nin silent data corruption of completely unrelated things.\n\nOnly of concern on devices with logical_block_size !\u003d 512 byte,\nif you re-attach after becoming diskless once.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "8979d9c9e0bc8e54cf5bd7a89abb2145f087b5e1",
      "tree": "2e22d97889ec466d954dd9db39de6b9ba5564703",
      "parents": [
        "fb22c402ffdf61dd121795b5809de587185d5240"
      ],
      "author": {
        "name": "Lars Ellenberg",
        "email": "lars.ellenberg@linbit.com",
        "time": "Tue Sep 14 15:56:29 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:41 2010 +0200"
      },
      "message": "drbd: protocol compatibility for maximum packet sizes\n\nTwo missing corner cases to the \"maximum packet size\" handshake.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    },
    {
      "commit": "fb22c402ffdf61dd121795b5809de587185d5240",
      "tree": "7c3de5410eff21b3a3b105dc63d5e2034f2c7c63",
      "parents": [
        "78db89287ce0f146a1f2a019a0b243ea4557caac"
      ],
      "author": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Wed Sep 08 23:20:21 2010 +0200"
      },
      "committer": {
        "name": "Philipp Reisner",
        "email": "philipp.reisner@linbit.com",
        "time": "Thu Oct 14 18:38:40 2010 +0200"
      },
      "message": "drbd: Track the reasons to suspend IO in dedicated state bits\n\nThere are three ways to get IO suspended:\n\n * Loss of any access to data\n * Fence-peer-handler running\n * User requested to suspend IO\n\nTrack those in different bits, so that one condition clearing its\nstate bit does not interfere with the other two conditions.\n\nOnly when the user resumes IO he overrules all three bits.\n\nThe fact is hidden from the user, he sees only a single suspend\nbit.\n\nSigned-off-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nSigned-off-by: Lars Ellenberg \u003clars.ellenberg@linbit.com\u003e\n"
    }
  ],
  "next": "78db89287ce0f146a1f2a019a0b243ea4557caac"
}
