)]}'
{
  "log": [
    {
      "commit": "275220f0fcff1adf28a717076e00f575edf05fda",
      "tree": "d249bccc80c64443dab211639050c4fb14332648",
      "parents": [
        "fe3c560b8a22cb28e54fe8950abef38e88d75831",
        "81c5e2ae33c4b19e53966b427e33646bf6811830"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 10:45:01 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 10:45:01 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38/core\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.38/core\u0027 of git://git.kernel.dk/linux-2.6-block: (43 commits)\n  block: ensure that completion error gets properly traced\n  blktrace: add missing probe argument to block_bio_complete\n  block cfq: don\u0027t use atomic_t for cfq_group\n  block cfq: don\u0027t use atomic_t for cfq_queue\n  block: trace event block fix unassigned field\n  block: add internal hd part table references\n  block: fix accounting bug on cross partition merges\n  kref: add kref_test_and_get\n  bio-integrity: mark kintegrityd_wq highpri and CPU intensive\n  block: make kblockd_workqueue smarter\n  Revert \"sd: implement sd_check_events()\"\n  block: Clean up exit_io_context() source code.\n  Fix compile warnings due to missing removal of a \u0027ret\u0027 variable\n  fs/block: type signature of major_to_index(int) to major_to_index(unsigned)\n  block: convert !IS_ERR(p) \u0026\u0026 p to !IS_ERR_NOR_NULL(p)\n  cfq-iosched: don\u0027t check cfqg in choose_service_tree()\n  fs/splice: Pull buf-\u003eops-\u003econfirm() from splice_from_pipe actors\n  cdrom: export cdrom_check_events()\n  sd: implement sd_check_events()\n  sr: implement sr_check_events()\n  ...\n"
    },
    {
      "commit": "09a8e7adcf960bd6a7204f3f3b377a89ce22efbf",
      "tree": "837be99a9d6d7e2019233c5a27efe38974c7ead7",
      "parents": [
        "e4dbb0f2b5dd6a836d0e5c60aa5f573e0bbcf76a"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Jan 05 12:48:07 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:30 2011 +0100"
      },
      "message": "[S390] dasd: Correct retry counter for terminated I/O.\n\nIn case the DASD driver needs to term a running I/O the retry counter\nis decreased twice.\nRemove the unnecessary retry counter decrease in das_term_IO.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e4dbb0f2b5dd6a836d0e5c60aa5f573e0bbcf76a",
      "tree": "cb18d0b08f2ccc8d6a078456b77f111805777db8",
      "parents": [
        "6f272b9cec285a9610a2acf101f694bc58bed37e"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Jan 05 12:48:06 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:30 2011 +0100"
      },
      "message": "[S390] dasd: Add support for raw ECKD access.\n\nNormal I/O operations through the DASD device driver give only access\nto the data fields of an ECKD device even for track based I/O.\nThis patch extends the DASD device driver to give access to whole\nECKD tracks including count, key and data fields.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6f272b9cec285a9610a2acf101f694bc58bed37e",
      "tree": "5c333d47bfaefa34ccd827744f35381133f4444b",
      "parents": [
        "5a27e60dec59a95bd7f8ae9a19ae2ede4f76395b"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Jan 05 12:48:05 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:30 2011 +0100"
      },
      "message": "[S390] dasd: Prevent deadlock during suspend/resume.\n\nThe freeze callback may set a stop bit so that a worker thread could\nnot start I/O. The discipline specific freeze function waits for the\nworker to be completed.\nSet the stop_bit after the discipline specific freeze function has\nreturned and no worker is running.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "5a27e60dec59a95bd7f8ae9a19ae2ede4f76395b",
      "tree": "20595cba0caebf7a8a5f0afac9785c7d717f3e8c",
      "parents": [
        "a4d26c6aeceea330ee5e0fb6b017d57e3b252d29"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Wed Jan 05 12:48:04 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:30 2011 +0100"
      },
      "message": "[S390] dasd: Improve handling of stolen DASD reservation\n\nIf a DASD device has been reserved by a Linux system, and later\nthis reservation is ‘stolen’ by a second system by means of an\nunconditional reserve, then the first system receives a\nnotification about this fact. With this patch such an event can\nbe either ignored, as before, or it can be used to let the device\nfail all I/O request, so that the device will not block anymore.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a4d26c6aeceea330ee5e0fb6b017d57e3b252d29",
      "tree": "eed358de48ff28e4fba73d9925abafa2699a7b6c",
      "parents": [
        "ef19298b406f93af4bb249f0776deb8366e97532"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Wed Jan 05 12:48:03 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:30 2011 +0100"
      },
      "message": "[S390] dasd: do path verification for paths added at runtime\n\nWhen a new path is added at runtime, the CIO layer will call the drivers\npath_event callback. The DASD device driver uses this callback to trigger\na path verification for the new path. The driver will use only those\npaths for I/O, which have been successfully verified.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ef19298b406f93af4bb249f0776deb8366e97532",
      "tree": "8b729739a57fd50e9fe67232b1c3b1264bf678a5",
      "parents": [
        "9062014cb60194630272709da82d5879d563865e"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Wed Jan 05 12:48:02 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:29 2011 +0100"
      },
      "message": "[S390] dasd: add High Performance FICON multitrack support\n\nSome storage systems support multitrack High Performance FICON\nrequests, which read or write data to more than one track.\nThis patch enables the DASD device driver to generate multitrack\nHigh Performance FICON requests.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3283942b71eb5023184b378230f5f0e3fbb40991",
      "tree": "269d2d33b7eade2a3dc1092e217ff00bcc8a6e6f",
      "parents": [
        "30d77c3e1cbdff304b16ae02cb56baaa308e42fd"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 05 12:47:30 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:25 2011 +0100"
      },
      "message": "[S390] dasd: add support for irq statistics\n\nAdd support for DASD I/O interrupt statistics in /proc/interrupts.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "052ff461c8427629aee887ccc27478fc7373237c",
      "tree": "1b2cae2956cc94c5b32730d467e20ff447b8c072",
      "parents": [
        "545b288dcbdea58a2ce2afba5f6a8302d31ac459"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 05 12:47:28 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:25 2011 +0100"
      },
      "message": "[S390] irq: have detailed statistics for interrupt types\n\nUp to now /proc/interrupts only has statistics for external and i/o\ninterrupts but doesn\u0027t split up them any further.\nThis patch adds a line for every single interrupt source so that it\nis possible to easier tell what the machine is/was doing.\nPart of the output now looks like this;\n\n           CPU0       CPU2       CPU4\nEXT:       3898       4232       2305\nI/O:        782        315        245\nCLK:       1029       1964        727   [EXT] Clock Comparator\nIPI:       2868       2267       1577   [EXT] Signal Processor\nTMR:          0          0          0   [EXT] CPU Timer\nTAL:          0          0          0   [EXT] Timing Alert\nPFL:          0          0          0   [EXT] Pseudo Page Fault\n[...]\nNMI:          0          1          1   [NMI] Machine Checks\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6f9a3c330652b0fdb65d89e94977a8e79fe730e7",
      "tree": "bdf071266d5b2d423ee7d4adb8cf25621d598ed9",
      "parents": [
        "53ec24b1e6c7118a127cf029a1519a2ce55268ec"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Jan 05 12:47:15 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 05 12:47:23 2011 +0100"
      },
      "message": "[S390] cleanup s390 Kconfig\n\nMake use of def_bool and def_tristate where possible and add sensible\ndefaults to the config symbols where applicable. This shortens the\ndefconfig file by another ~40 lines.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\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": "e525fd89d380c4a94c0d63913a1dd1a593ed25e7",
      "tree": "d226ef40d3f99e42fcf272ad432585cbd641ebec",
      "parents": [
        "e09b457bdb7e8d23fc54dcef0930ac697d8de895"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Nov 13 11:55:17 2010 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Nov 13 11:55:17 2010 +0100"
      },
      "message": "block: make blkdev_get/put() handle exclusive access\n\nOver time, block layer has accumulated a set of APIs dealing with bdev\nopen, close, claim and release.\n\n* blkdev_get/put() are the primary open and close functions.\n\n* bd_claim/release() deal with exclusive open.\n\n* open/close_bdev_exclusive() are combination of open and claim and\n  the other way around, respectively.\n\n* bd_link/unlink_disk_holder() to create and remove holder/slave\n  symlinks.\n\n* open_by_devnum() wraps bdget() + blkdev_get().\n\nThe interface is a bit confusing and the decoupling of open and claim\nmakes it impossible to properly guarantee exclusive access as\nin-kernel open + claim sequence can disturb the existing exclusive\nopen even before the block layer knows the current open if for another\nexclusive access.  Reorganize the interface such that,\n\n* blkdev_get() is extended to include exclusive access management.\n  @holder argument is added and, if is @FMODE_EXCL specified, it will\n  gain exclusive access atomically w.r.t. other exclusive accesses.\n\n* blkdev_put() is similarly extended.  It now takes @mode argument and\n  if @FMODE_EXCL is set, it releases an exclusive access.  Also, when\n  the last exclusive claim is released, the holder/slave symlinks are\n  removed automatically.\n\n* bd_claim/release() and close_bdev_exclusive() are no longer\n  necessary and either made static or removed.\n\n* bd_link_disk_holder() remains the same but bd_unlink_disk_holder()\n  is no longer necessary and removed.\n\n* open_bdev_exclusive() becomes a simple wrapper around lookup_bdev()\n  and blkdev_get().  It also has an unexpected extra bdev_read_only()\n  test which probably should be moved into blkdev_get().\n\n* open_by_devnum() is modified to take @holder argument and pass it to\n  blkdev_get().\n\nMost of bdev open/close operations are unified into blkdev_get/put()\nand most exclusive accesses are tested atomically at the open time (as\nit should).  This cleans up code and removes some, both valid and\ninvalid, but unnecessary all the same, corner cases.\n\nopen_bdev_exclusive() and open_by_devnum() can use further cleanup -\nrename to blkdev_get_by_path() and blkdev_get_by_devt() and drop\nspecial features.  Well, let\u0027s leave them for another day.\n\nMost conversions are straight-forward.  drbd conversion is a bit more\ninvolved as there was some reordering, but the logic should stay the\nsame.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Ryusuke Konishi \u003ckonishi.ryusuke@lab.ntt.co.jp\u003e\nAcked-by: Mike Snitzer \u003csnitzer@redhat.com\u003e\nAcked-by: Philipp Reisner \u003cphilipp.reisner@linbit.com\u003e\nCc: Peter Osterlund \u003cpetero2@telia.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Jan Kara \u003cjack@suse.cz\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Andreas Dilger \u003cadilger.kernel@dilger.ca\u003e\nCc: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nCc: Joel Becker \u003cjoel.becker@oracle.com\u003e\nCc: Alex Elder \u003caelder@sgi.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: dm-devel@redhat.com\nCc: drbd-dev@lists.linbit.com\nCc: Leo Chen \u003cleochen@broadcom.com\u003e\nCc: Scott Branden \u003csbranden@broadcom.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nCc: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nCc: Joern Engel \u003cjoern@logfs.org\u003e\nCc: reiserfs-devel@vger.kernel.org\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "196339f1733726ffd69ab81ec1c66678585f5846",
      "tree": "2974211770a2d0ead128f80fef972748673e7e3c",
      "parents": [
        "b25c477b3456ce87a5938d2ea511bf13187d0f0d"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Fri Oct 29 16:50:43 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Oct 29 16:50:50 2010 +0200"
      },
      "message": "[S390] dasd: provide a Sense Path Group ID ioctl\n\nThe BIODASDSNID ioctl executes a \u0027Sense Path Group ID\u0027\ncommand on a DASD ECKD device. The returned path group data\nallows user space programs to determine path state and\npath group ID of the channel paths to the device.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "56b86b615b807e043339979878a2de88f900ee4f",
      "tree": "7ca79c9f6c39ff7cef764aad4240d3ec353e13f4",
      "parents": [
        "6d00d00bf23b86b352e2d075cfe751acd1908278"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon Oct 25 16:10:49 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Oct 25 16:10:21 2010 +0200"
      },
      "message": "[S390] dasd: ignore unsolicited interrupts for DIAG\n\nFor the DASD DIAG discipline IO is started through special diagnose\ncalls. Unsolicited interrupts may contain information about the device\nitself. But this information is not needed because the device is not\nused directly.\nFix the case that an unimplemented dicipline function may be called\nby ignoring unsolicited interrupts for the DIAG disciplin.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a5a0061fb3a22bbd9b108af8382142fd0f41ebee",
      "tree": "03e643e12b634b201201cddb162de46aa744595b",
      "parents": [
        "26cffecf84c8cb33787dd13a72bd2124d107d413"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Oct 25 16:10:47 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Oct 25 16:10:20 2010 +0200"
      },
      "message": "[S390] dasd: fix unsolicited interrupt recognition\n\nThe dasd interrupt handler needs to distinguish solicited from\nunsolicited interrupts, as unsolicited interrupts may require special\nhandling (e.g. summary unit checks) and solicited interrupts require\nproper error recovery for the failed I/O request.\nThe interrupt handler needs to check several bit fields in the\ninterrupt response block (irb) to make this distinction.\nSo far our check of the status control bits has not been specific\nenough, which may lead to a failed request getting just retried\ninstead of the necessary error recovery.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "26cffecf84c8cb33787dd13a72bd2124d107d413",
      "tree": "aa50aaad1c06c9a3adb5d5bc15066f6167c2851d",
      "parents": [
        "e05ef9bdb899e2f3798be74691842fc597d8ce60"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Mon Oct 25 16:10:46 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Oct 25 16:10:20 2010 +0200"
      },
      "message": "[S390] dasd: fix use after free in dbf\n\nWriting to /proc/dasd/statistics while the debug level of the\ngeneric dasd debug entry is set to DBF_DEBUG will lead to an\nuse after free when accessing the debug entry later.\nSince for the format string \"%s\" in the s390 dbf only a pointer\nto the string is stored in the debug feature and the buffer used\nhere is freed afterwards.\n\nTo fix this just remove the debug message.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f6649a7e5a9ee99e9623878f4a5579cc2f6cdd51",
      "tree": "183438313c7593565980a1445f208e0ba30162cd",
      "parents": [
        "1e54622e0403891b10f2105663e0f9dd595a1f17"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Oct 25 16:10:38 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Oct 25 16:10:19 2010 +0200"
      },
      "message": "[S390] cleanup lowcore access from external interrupts\n\nRead external interrupts parameters from the lowcore in the first\nlevel interrupt handler in entry[64].S.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ed3640b285d831065eb0507cdca7d125f6f78e8d",
      "tree": "1a2d6988d4bcdb4bae61098fc98d92149994adfa",
      "parents": [
        "a8481c2afeed297426f67ce3fd4ad7eea6b7ddf5"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon Oct 25 16:10:24 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Oct 25 16:10:17 2010 +0200"
      },
      "message": "[S390] dasd fix dump_sense_dbf\n\nThe dasd_eckd_dump_sense_dbf function uses a macro for s390 debug\nfeature that can handle up to 8 parameters (for the DASD device\ndriver).\nFix the function to use only the maximum number of parameters.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "7ea8d32199a3751527bf06b91c03de92d5ad5b3e",
      "tree": "20d1fd5138ee695f647dbc7dd9c3d0459a09ffe0",
      "parents": [
        "238ec4efeee4461d5cff2ed3e5a15a3ab850959b"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Oct 25 16:10:08 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Oct 25 16:10:14 2010 +0200"
      },
      "message": "[S390] dasd: let recovery cqr inherit flags from failed cqr\n\nThe usual way to recover a failed DASD ECKD request (cqr) is to create\na new request with an appropriate recovery CCW program.  Certain\nfeatures, e.g. failfast, can be enabled per request and are stored in\nthe requests flags. These flags have to be copied from the failed to\nthe recovery request, to let the recovery request use the same\nfeatures as the original one.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "229aebb873e29726b91e076161649cf45154b0bf",
      "tree": "acc02a3702215bce8d914f4c8cc3d7a1382b1c67",
      "parents": [
        "8de547e1824437f3c6af180d3ed2162fa4b3f389",
        "50a23e6eec6f20d55a3a920e47adb455bff6046e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 24 13:41:39 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)\n  Update broken web addresses in arch directory.\n  Update broken web addresses in the kernel.\n  Revert \"drivers/usb: Remove unnecessary return\u0027s from void functions\" for musb gadget\n  Revert \"Fix typo: configuation \u003d\u003e configuration\" partially\n  ida: document IDA_BITMAP_LONGS calculation\n  ext2: fix a typo on comment in ext2/inode.c\n  drivers/scsi: Remove unnecessary casts of private_data\n  drivers/s390: Remove unnecessary casts of private_data\n  net/sunrpc/rpc_pipe.c: Remove unnecessary casts of private_data\n  drivers/infiniband: Remove unnecessary casts of private_data\n  drivers/gpu/drm: Remove unnecessary casts of private_data\n  kernel/pm_qos_params.c: Remove unnecessary casts of private_data\n  fs/ecryptfs: Remove unnecessary casts of private_data\n  fs/seq_file.c: Remove unnecessary casts of private_data\n  arm: uengine.c: remove C99 comments\n  arm: scoop.c: remove C99 comments\n  Fix typo configue \u003d\u003e configure in comments\n  Fix typo: configuation \u003d\u003e configuration\n  Fix typo interrest[ing|ed] \u003d\u003e interest[ing|ed]\n  Fix various typos of valid in comments\n  ...\n\nFix up trivial conflicts in:\n\tdrivers/char/ipmi/ipmi_si_intf.c\n\tdrivers/usb/gadget/rndis.c\n\tnet/irda/irnet/irnet_ppp.c\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": "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": "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": "cfdb00a77ea7d5fb922fd985e5dfbcb36873411b",
      "tree": "d5b70c7edc95cad7271342214d3e4338f37e02c2",
      "parents": [
        "54066a57c584ee8ce767053116fc4943ed1168b5"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon May 31 22:38:40 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Sep 26 16:25:51 2010 +0200"
      },
      "message": "s390/block: kill the big kernel lock\n\nThe dasd and dcssblk drivers gained the big\nkernel lock in the recent pushdown from the\nblock layer, but they don\u0027t really need it,\nso remove the calls without a replacement.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: linux-s390@vger.kernel.org\n"
    },
    {
      "commit": "817f2c842d6c38acfd58d20d29ba583ec467ae35",
      "tree": "f1afe7175e0a2b3ecf465f26804ad8c3f6f7d263",
      "parents": [
        "0bc79f7f58f5d0670c776818e38f482555bc27ae"
      ],
      "author": {
        "name": "Nikanth Karthikesan",
        "email": "knikanth@suse.de",
        "time": "Mon Sep 20 11:44:00 2010 +0530"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Sep 21 17:04:50 2010 +0200"
      },
      "message": "Fix various typos of valid in comments\n\nFix various typos of valid.\n\nSigned-off-by: Nikanth Karthikesan \u003cknikanth@suse.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "4913efe456c987057e5d36a3f0a55422a9072cae",
      "tree": "295f04a7214e1933df3301dd42c12ff3f282a22c",
      "parents": [
        "6958f145459ca7ad9715024de97445addacb8510"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Sep 03 11:56:16 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Fri Sep 10 12:35:36 2010 +0200"
      },
      "message": "block: deprecate barrier and replace blk_queue_ordered() with blk_queue_flush()\n\nBarrier is deemed too heavy and will soon be replaced by FLUSH/FUA\nrequests.  Deprecate barrier.  All REQ_HARDBARRIERs are failed with\n-EOPNOTSUPP and blk_queue_ordered() is replaced with simpler\nblk_queue_flush().\n\nblk_queue_flush() takes combinations of REQ_FLUSH and FUA.  If a\ndevice has write cache and can flush it, it should set REQ_FLUSH.  If\nthe device can handle FUA writes, it should also set REQ_FUA.\n\nAll blk_queue_ordered() users are converted.\n\n* ORDERED_DRAIN is mapped to 0 which is the default value.\n* ORDERED_DRAIN_FLUSH is mapped to REQ_FLUSH.\n* ORDERED_DRAIN_FLUSH_FUA is mapped to REQ_FLUSH | REQ_FUA.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Alasdair G Kergon \u003cagk@redhat.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "625c94df22fb4247c8ccd54635a8ec77cb60d651",
      "tree": "1641e24f21b2a89a718244957c25701e3fc2a242",
      "parents": [
        "320b2b8de12698082609ebbc1a17165727f4c893"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Aug 13 10:06:38 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Aug 13 10:06:54 2010 +0200"
      },
      "message": "[S390] dasd: fix format string types\n\nGet rid of these warnings:\n\ndrivers/s390/block/dasd.c: In function \u0027__dasd_device_check_expire\u0027:\ndrivers/s390/block/dasd.c:1330: warning: format \u0027%i\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027long unsigned int\u0027\ndrivers/s390/block/dasd.c:1337: warning: format \u0027%i\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027long unsigned int\u0027\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6396fc3b3ff3f6b942992b653a62df11dcef9bea",
      "tree": "db3c7cbe833b43c653adc99f70941431c5ff7c4e",
      "parents": [
        "4785879e4d340e24e54f6de2ccfc42728b912808",
        "3d30701b58970425e1d45994d6cb82f828924fdd"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 11 09:36:51 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Aug 11 09:36:51 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nConflicts:\n\tfs/exofs/inode.c\n"
    },
    {
      "commit": "2f9e825d3e0e2b407ae8f082de5c00afcf7378fb",
      "tree": "f8b3ee40674ce4acd5508a0a0bf52a30904caf6c",
      "parents": [
        "7ae0dea900b027cd90e8a3e14deca9a19e17638b",
        "de75d60d5ea235e6e09f4962ab22541ce0fe176a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 15:22:42 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.36\u0027 of git://git.kernel.dk/linux-2.6-block: (149 commits)\n  block: make sure that REQ_* types are seen even with CONFIG_BLOCK\u003dn\n  xen-blkfront: fix missing out label\n  blkdev: fix blkdev_issue_zeroout return value\n  block: update request stacking methods to support discards\n  block: fix missing export of blk_types.h\n  writeback: fix bad _bh spinlock nesting\n  drbd: revert \"delay probes\", feature is being re-implemented differently\n  drbd: Initialize all members of sync_conf to their defaults [Bugz 315]\n  drbd: Disable delay probes for the upcomming release\n  writeback: cleanup bdi_register\n  writeback: add new tracepoints\n  writeback: remove unnecessary init_timer call\n  writeback: optimize periodic bdi thread wakeups\n  writeback: prevent unnecessary bdi threads wakeups\n  writeback: move bdi threads exiting logic to the forker thread\n  writeback: restructure bdi forker loop a little\n  writeback: move last_active to bdi\n  writeback: do not remove bdi from bdi_list\n  writeback: simplify bdi code a little\n  writeback: do not lose wake-ups in bdi threads\n  ...\n\nFixed up pretty trivial conflicts in drivers/block/virtio_blk.c and\ndrivers/scsi/scsi_error.c as per Jens.\n"
    },
    {
      "commit": "0d6ffdb8f151a2b685c7b45bde7ab2d49fc1bb00",
      "tree": "1768c906e87750dc897a2f113e335886d9b906e8",
      "parents": [
        "7233e392760b3493095d3d5885cb15e44493d74a",
        "7c8faa86290c1a2607d6b768a0b874ec392a5c2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 14:01:26 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 14:01:26 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6:\n  [S390] dasd: tunable missing interrupt handler\n  [S390] dasd: allocate fallback cqr for reserve/release\n  [S390] topology: use default MC domain initializer\n  [S390] initrd: change default load address\n  [S390] cmm, smsgiucv_app: convert sender to uppercase\n  [S390] cmm: add missing __init/__exit annotations\n  [S390] cio: use all available paths for some internal I/O\n  [S390] ccwreq: add ability to use all paths\n  [S390] cio: ccw_device_online_store return -EINVAL in case of missing driver\n  [S390] cio: Log the response from the unit check handler\n  [S390] cio: CHSC SIOSL Support\n"
    },
    {
      "commit": "fb8231a8b139035476f2a8aaac837d0099b66dad",
      "tree": "2875806beb96ea0cdab292146767a5085721dc6a",
      "parents": [
        "426d31071ac476ea62c62656b242930c17b58c00",
        "f6cec0ae58c17522a7bc4e2f39dae19f199ab534"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Aug 10 13:22:08 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Aug 10 13:22:08 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nConflicts:\n\tarch/arm/mach-omap1/board-nokia770.c\n"
    },
    {
      "commit": "547415d5edf8660aee040dc81d8c71b081a59bda",
      "tree": "21221c9702e65a71354ce5c672a085d00ff9b5a6",
      "parents": [
        "b329becfc78b180d5c422c9cb24a6ab378603305"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Aug 09 17:20:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "s390: remove WARN_ON for misc_deregister() failures\n\nThe previous change added WARN_ON() in misc_deregister().  So it is not\nnecessary to WARN_ON() misc_deregister() failure by callers.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c8faa86290c1a2607d6b768a0b874ec392a5c2a",
      "tree": "7cb94efdbd3ce3c5eb8fb7a2b7d8a5bedebcb1a2",
      "parents": [
        "f932bcea6b7317312ab38df12a84710fc6c67a81"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon Aug 09 18:13:00 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Aug 09 18:12:54 2010 +0200"
      },
      "message": "[S390] dasd: tunable missing interrupt handler\n\nThis feature provides a user interface to specify the timeout for\nmissing interrupts for standard I/O operations.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f932bcea6b7317312ab38df12a84710fc6c67a81",
      "tree": "6476fb6c8423ee65bc8b73182436ccfc7361ed05",
      "parents": [
        "eafd2b6ddd8604998bdfbf7550b23795c07f03bb"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Aug 09 18:12:59 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Aug 09 18:12:54 2010 +0200"
      },
      "message": "[S390] dasd: allocate fallback cqr for reserve/release\n\nThe DASD reserve and release ioctls use the preallocated memory pool\nof the respective device to build their CCW requests. However, when\nthe device is busy, the pool may already be empty and the ioctl fails.\nUsually this can be recovered by calling the ioctl again, but in\na situation in which we need to issue an unconditional reserve to\nmake a device operational again, this would be not recoverable.\nTo avoid a failure due to lack of memory, DASD device driver will\npreallocate enough memory for a single reserve/release request, which\ncan be used if normal allocation fails.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "eef35c2d41ddcc653c20d26b977acaa45c811e1f",
      "tree": "616db0eb06b6a3881902db59a0a5bd590277b5a1",
      "parents": [
        "3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4"
      ],
      "author": {
        "name": "Stefan Weil",
        "email": "weil@mail.berlios.de",
        "time": "Fri Aug 06 21:11:15 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Aug 09 11:22:49 2010 +0200"
      },
      "message": "Fix spelling fuction -\u003e function in comments\n\nTo avoid more patches, I also fixed other spelling\nand grammar bugs when they were in the same or\nfollowing line:\n\nsuccessfull -\u003e successful\nparse -\u003e parses\ncontroler -\u003e controller\ncontrolers -\u003e controllers\n\nCc: Jiri Kosina \u003ctrivial@kernel.org\u003e\nCc: linux-kernel@vger.kernel.org\nSigned-off-by: Stefan Weil \u003cweil@mail.berlios.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "6e9624b8caec290d28b4c6d9ec75749df6372b87",
      "tree": "47225b544e1da82742795553dc4e8aa70c17afdc",
      "parents": [
        "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "message": "block: push down BKL into .open and .release\n\nThe open and release block_device_operations are currently\ncalled with the BKL held. In order to change that, we must\nfirst make sure that all drivers that currently rely\non this have no regressions.\n\nThis blindly pushes the BKL into all .open and .release\noperations for all block drivers to prepare for the\nnext step. The drivers can subsequently replace the BKL\nwith their own locks or remove it completely when it can\nbe shown that it is not needed.\n\nThe functions blkdev_get and blkdev_put are the only\nremaining users of the big kernel lock in the block\nlayer, besides a few uses in the ioctl code, none\nof which need to serialize with blkdev_{get,put}.\n\nMost of these two functions is also under the protection\nof bdev-\u003ebd_mutex, including the actual calls to\n-\u003eopen and -\u003erelease, and the common code does not\naccess any global data structures that need the BKL.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "00fff26539bfe3fad21c164fc4002d9ede056fb0",
      "tree": "4909c8eed03133b1d46f689e465ed1f579b8e282",
      "parents": [
        "afc23068103ccfbf1917eb2a007bc15ab5418cc9"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Sat Jul 03 17:45:40 2010 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:24:15 2010 +0200"
      },
      "message": "block: remove q-\u003eprepare_flush_fn completely\n\nThis removes q-\u003eprepare_flush_fn completely (changes the\nblk_queue_ordered API).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "0abccf77402af44855da739b439d01cfb65b4bfd",
      "tree": "125232a749ad17ae39db7ce6c52205233f51e240",
      "parents": [
        "cffab6bc5511cd6f67a60bf16b62de4267b68c4c"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon Jul 19 09:22:36 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Jul 19 09:22:50 2010 +0200"
      },
      "message": "[S390] add missing device put\n\nThe dasd_alias_show function does not return a device reference\nin case the device is an alias.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a23ed009a726feeafdbabeaf5f0bde1a3f04d121",
      "tree": "cd2448ca9544f23acacc40e5ab2b95b4636ef923",
      "parents": [
        "094f2100d6bb16ef0c4f82167cc55173ca22ee93"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed May 26 23:27:09 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed May 26 23:27:09 2010 +0200"
      },
      "message": "[S390] dasd: unit check handling during internal cio I/O\n\nReact on unit checks during cio internal I/O.\nHandle as unsolicited interrupt and advice cio to retry.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "2dedf0d9eadf39660f2e1686b5d36e4a7515803f",
      "tree": "39fefcb959ee6e7c9c15b07b58eb9ef6a9e6304d",
      "parents": [
        "501183f2ed74434e30a1b039b2f3af30f1f3f461"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon May 17 10:00:11 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon May 17 10:00:16 2010 +0200"
      },
      "message": "[S390] dasd: remove uid from devmap\n\nRemove the duplicate of the DASD uid from the devmap structure.\nUse the uid from the device private structure instead.\nThis also removes a lockdep warning complaining about a possible\nSOFTIRQ-safe -\u003e SOFTIRQ-unsafe lock order.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "501183f2ed74434e30a1b039b2f3af30f1f3f461",
      "tree": "785b6f2b2d5c7858e557354f71bdb0928fa098b1",
      "parents": [
        "f3cb31e495668eae568c584c666631e26c68bdea"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon May 17 10:00:10 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon May 17 10:00:16 2010 +0200"
      },
      "message": "[S390] dasd: add dynamic pav toleration\n\nFor base Parallel Access Volume (PAV) there is a fixed mapping of\nbase and alias devices. With dynamic PAV this mapping can be changed\nso that an alias device is used with another base device.\nThis patch enables the DASD device driver to tolerate dynamic PAV\nchanges.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "1c1e093cbf6d3a7576ba0bd10363362a1c5c74ee",
      "tree": "a3970653539aa4a9b71536a204efbe7d5ba8ff07",
      "parents": [
        "cea0d767c29669bf89f86e4aee46ef462d2ebae8"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Wed May 12 09:32:11 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed May 12 09:32:26 2010 +0200"
      },
      "message": "[S390] dasd: fix race between tasklet and dasd_sleep_on\n\nThe various dasd_sleep_on functions use a global wait queue when\nwaiting for a cqr. The wait condition checks the status and devlist\nfields of the cqr to determine if it is safe to continue. This\nevaluation may return true, although the tasklet has not finished\nprocessing of the cqr and the callback function has not been called\nyet. When the callback is finally called, the data in the cqr may\nalready be invalid. The sleep_on wait condition needs a safe way to\ndetermine if the tasklet has finished processing. Use the\ncallback_data field of the cqr to store a token, which is set by\nthe callback function itself.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6a5176c474e3e722ab273d940442238e554e5e58",
      "tree": "0a623a707647b4511e99822fee37a7e2139689e4",
      "parents": [
        "1ef6ce7a340f9ed139a73147ff9cf7ad56889414"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Thu Apr 22 17:17:02 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Thu Apr 22 17:17:19 2010 +0200"
      },
      "message": "[S390] dasd: fix endless loop in erp\n\nIf not enough memory is available to build a new erp request it ended\nup in an endless loop trying to build erp requests. Fixed the loop to\nproceed the next request instead.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "b8fde7224d771ce55bfd67cb57d7c4c8f430972f",
      "tree": "a9baa7a98c798d0e8477d168bfa543aae39b0952",
      "parents": [
        "4a31ba57cae853ce1ac00a22c0f5d80bd36685ed"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Mar 24 11:49:54 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Mar 24 11:49:53 2010 +0100"
      },
      "message": "[S390] dasd: check tsb validity\n\nCheck tsb validity before the tcw_get_tsb function is called.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4a31ba57cae853ce1ac00a22c0f5d80bd36685ed",
      "tree": "c604002362185f60f02b4ad364e23030e15b8f26",
      "parents": [
        "1bff779285f89cd0b62955c20cca70ada4074236"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Wed Mar 24 11:49:53 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Mar 24 11:49:53 2010 +0100"
      },
      "message": "[S390] dasd: fix alignment of transport mode recovery TCW\n\nAll TCWs need to be aligned on a 64 byte boundary or the I/O will be\nrejected. For recovery requests we create fresh TCWs, so we need to\ndo the proper alignment here as well.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "33b62a30f78536b976183cc764c08038ac011e0a",
      "tree": "60a18b4478c68082835fa6fee9a24bb1e7e8b312",
      "parents": [
        "584dfddfce1bd81d877f14de2b56d4bc747af821"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Mar 08 12:26:24 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Mar 08 12:26:27 2010 +0100"
      },
      "message": "[S390] dasd: automatic recognition of read-only devices\n\nIn z/VM it is possible to attach a device as read-only. To prevent\nunintentional write requests and subsequent I/O errors, we can detect\nthis configuration using the z/VM DIAG 210 interface and set the\nrespective linux block device to read-only as well.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "52898025cf7d458d029c18773d0ef49b4789d829",
      "tree": "f7a7b99a6001d4edb625d669fc6d59073269bb82",
      "parents": [
        "91a970d9889c7d6f451ee91ed361d0f0119d3778"
      ],
      "author": {
        "name": "Nigel Hislop",
        "email": "hislop_nigel@emc.com",
        "time": "Mon Mar 08 12:25:16 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Mar 08 12:25:30 2010 +0100"
      },
      "message": "[S390] dasd: security and PSF update patch for EMC CKD ioctl\n\nRemove the PSF order/suborder check from the Symmetrix CKD dasd ioctl.\nIn exchange restrict the ioctl to CAP_SYS_ADMIN and CAP_SYS_RAWIO.\n\nSigned-off-by: Nigel Hislop \u003chislop_nigel@emc.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b1bf9368407ae7e89d8a005bb40beb70a41df539",
      "tree": "3815c8aab19c6c186736673c624fef5f3faab716",
      "parents": [
        "524df55725217b13d5a232fb5badb5846418ea0e",
        "4671a1322052425afa38fcb7980d2fd2bb0fc99b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 01 09:00:29 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 01 09:00:29 2010 -0800"
      },
      "message": "Merge branch \u0027for-2.6.34\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.34\u0027 of git://git.kernel.dk/linux-2.6-block: (38 commits)\n  block: don\u0027t access jiffies when initialising io_context\n  cfq: remove 8 bytes of padding from cfq_rb_root on 64 bit builds\n  block: fix for \"Consolidate phys_segment and hw_segment limits\"\n  cfq-iosched: quantum check tweak\n  blktrace: perform cleanup after setup error\n  blkdev: fix merge_bvec_fn return value checks\n  cfq-iosched: requests \"in flight\" vs \"in driver\" clarification\n  cciss: Fix problem with scatter gather elements in the scsi half of the driver\n  cciss: eliminate unnecessary pointer use in cciss scsi code\n  cciss: do not use void pointer for scsi hba data\n  cciss: factor out scatter gather chain block mapping code\n  cciss: fix scatter gather chain block dma direction kludge\n  cciss: simplify scatter gather code\n  cciss: factor out scatter gather chain block allocation and freeing\n  cciss: detect bad alignment of scsi commands at build time\n  cciss: clarify command list padding calculation\n  cfq-iosched: rethink seeky detection for SSDs\n  cfq-iosched: rework seeky detection\n  block: remove padding from io_context on 64bit builds\n  block: Consolidate phys_segment and hw_segment limits\n  ...\n"
    },
    {
      "commit": "34b9243a300736c08dc32eaeb2f359401fcf9c0a",
      "tree": "b20eb0bf67e5cf169e378d3686cda83ca418058d",
      "parents": [
        "618708ff04f3a7b74f54210bd518aa1d827d8e65"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Feb 26 22:37:50 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Feb 26 22:37:32 2010 +0100"
      },
      "message": "[S390] seq_file: convert drivers/s390/\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b695adfaa118fd7c50eca8990e348dd7372ee0aa",
      "tree": "feaa24ac072741256220f039fc2e22c27fe7f8b6",
      "parents": [
        "589c74d5076dd1bde13a5a36d97ca79be8bd72b2"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Feb 26 22:37:48 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Feb 26 22:37:32 2010 +0100"
      },
      "message": "[S390] dasd: correct offline processing\n\nFlushing the dasd ccw request queue may stop the processing of the\nblock device request queue. Destroy partitions may wait for\noutstanding requests and thus hang.\nSwapping dasd_destroy_partitions and dasd_flush_request_queue so that\nthe request queue is empty before dasd_destroy_partitions is called.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "589c74d5076dd1bde13a5a36d97ca79be8bd72b2",
      "tree": "252349a17326853d7e026b357921da6192958d26",
      "parents": [
        "9eb251225ab4dbea3119cfcf4c5194eed223a740"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Feb 26 22:37:47 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Feb 26 22:37:32 2010 +0100"
      },
      "message": "[S390] dasd: fix refcounting.\n\nThe function dasd_device_from_cdev returns a reference to the dasd\ndevice and increases the refcount by one. If an exception occurs,\nthe refcount was not decreased in all cases\ne.g. in dasd_discipline_show.\nPrevent the offline processing from hang by correcting two functions\nto decrease the refcount even if an error occured.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9eb251225ab4dbea3119cfcf4c5194eed223a740",
      "tree": "6305782cf36aee2949b7a6d1661db24ef618e2ce",
      "parents": [
        "22e0a0467292222214d1974d9bc2664a6c05980d"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Feb 26 22:37:46 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Feb 26 22:37:32 2010 +0100"
      },
      "message": "[S390] dasd: fix online/offline race\n\nSetting a DASD online and offline in quick succession may cause\na kernel panic or let the chhccwdev command wait forever.\nThe Online process is split into two parts. After the first part\nis finished the offline process may be called. This may result\nin a situation where the second online processing part tries to\nset the DASD offline as well.\nUse a mutex to protect online and offline against each other.\nAlso correct some checking.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "8a78362c4eefc1deddbefe2c7f38aabbc2429d6b",
      "tree": "c095d95af1aec0f9cee5975b1dcdc6bc1d17d401",
      "parents": [
        "086fa5ff0854c676ec333760f4c0154b3b242616"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri Feb 26 00:20:39 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Feb 26 13:58:08 2010 +0100"
      },
      "message": "block: Consolidate phys_segment and hw_segment limits\n\nExcept for SCSI no device drivers distinguish between physical and\nhardware segment limits.  Consolidate the two into a single segment\nlimit.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "086fa5ff0854c676ec333760f4c0154b3b242616",
      "tree": "ee63fb3c7c7d964bd799355b7cde18ba95f91f07",
      "parents": [
        "eb28d31bc97e6374d81f404da309401ffaed467b"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri Feb 26 00:20:38 2010 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Feb 26 13:58:08 2010 +0100"
      },
      "message": "block: Rename blk_queue_max_sectors to blk_queue_max_hw_sectors\n\nThe block layer calling convention is blk_queue_\u003climit name\u003e.\nblk_queue_max_sectors predates this practice, leading to some confusion.\nRename the function to appropriately reflect that its intended use is to\nset max_hw_sectors.\n\nAlso introduce a temporary wrapper for backwards compability.  This can\nbe removed after the merge window is closed.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "294001a80c9810e2fe27aaaad7df8be12a103065",
      "tree": "1615733697057a38054f68bf46109fffeeb5e549",
      "parents": [
        "b04da8bfdfbbd79544cab2fadfdc12e87eb01600"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Jan 27 10:12:35 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 27 10:12:48 2010 +0100"
      },
      "message": "[S390] dasd: fix possible NULL pointer errors\n\nFix possible NULL pointer in DASD messages and correct discipline\nchecking.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f8b068593db4a4184c8963fcd5a7f34584fde8ad",
      "tree": "59d28afa0aaa454e4d6a2634226da02cb255e46b",
      "parents": [
        "d381589834aa69f51f95b1e364fe79688692aab4"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 13 20:44:40 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 13 20:44:46 2010 +0100"
      },
      "message": "[S390] dasd: add proper compat pointer conversion for symmetrix ioctl\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "880348653ec2eda81550a8aa37c2eb625922f695",
      "tree": "9997fdf7f92a98a12b3dfbbe5b06409175e056e0",
      "parents": [
        "bebf023d415fd8984994a596aaa83cd0a3046d0b"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 13 20:44:29 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Jan 13 20:44:44 2010 +0100"
      },
      "message": "[S390] dasd: add missing compat ptr conversion\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6d53cfe590c17c28ebae2c869bb7a5ab9554b4da",
      "tree": "a331cc9c6e5485b8562075dd05e77f536bd0a838",
      "parents": [
        "ea058544542a60e92fd023d93aa901709be18daa"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Fri Dec 18 17:43:17 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Dec 18 17:43:31 2009 +0100"
      },
      "message": "[S390] dasd: PTR_ERR return of wrong pointer in\n\nReturn the PTR_ERR of the correct pointer.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ea058544542a60e92fd023d93aa901709be18daa",
      "tree": "5bf13d151c84aa5ab954c733c38e4ef888f8a9fa",
      "parents": [
        "ffa8d2a3e80a3f0dee9886947dbd506d2bb226d2"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Dec 18 17:43:16 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Fri Dec 18 17:43:31 2009 +0100"
      },
      "message": "[S390] dasd: move dasd-diag kmsg to dasd\n\nThe DIAG discipline does not have a own driver name. It shows up as\ndasd-eckd or dasd-fba. So messages for dasd-diag are moved to the\ngeneric dasd part.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e7d2860b690d4f3bed6824757c540579638e3d1e",
      "tree": "84268ee28893256fd6a6a7e1d4474f61dbee74e7",
      "parents": [
        "84c95c9acf088c99d8793d78036b67faa5d0b851"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Mon Dec 14 18:01:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:32 2009 -0800"
      },
      "message": "tree-wide: convert open calls to remove spaces to skip_spaces() lib function\n\nMakes use of skip_spaces() defined in lib/string.c for removing leading\nspaces from strings all over the tree.\n\nIt decreases lib.a code size by 47 bytes and reuses the function tree-wide:\n   text    data     bss     dec     hex filename\n  64688     584     592   65864   10148 (TOTALS-BEFORE)\n  64641     584     592   65817   10119 (TOTALS-AFTER)\n\nAlso, while at it, if we see (*str \u0026\u0026 isspace(*str)), we can be sure to\nremove the first condition (*str) as the second one (isspace(*str)) also\nevaluates to 0 whenever *str \u003d\u003d 0, making it redundant. In other words,\n\"a char equals zero is never a space\".\n\nJulia Lawall tried the semantic patch (http://coccinelle.lip6.fr) below,\nand found occurrences of this pattern on 3 more files:\n    drivers/leds/led-class.c\n    drivers/leds/ledtrig-timer.c\n    drivers/video/output.c\n\n@@\nexpression str;\n@@\n\n( // ignore skip_spaces cases\nwhile (*str \u0026\u0026  isspace(*str)) { \\(str++;\\|++str;\\) }\n|\n- *str \u0026\u0026\nisspace(*str)\n)\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.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: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "471452104b8520337ae2fb48c4e61cd4896e025d",
      "tree": "8594ae4a8362014e3cccf72a4e8834cdbb610bdd",
      "parents": [
        "0ead0f84e81a41c3e98aeceab04af8ab1bb08d1f"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Dec 14 18:00:08 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:25 2009 -0800"
      },
      "message": "const: constify remaining dev_pm_ops\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "5e24eb08e8f4df1f6ef913b6ff94c16b9c51d85a",
      "tree": "a78095a07202cc17db5ca54a1f9215110fcbc0ac",
      "parents": [
        "3b47f9d5ec646bc50148c664ce5895ff9837699f"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Dec 07 12:52:24 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:39 2009 +0100"
      },
      "message": "[S390] dasd: remove BKL from extended error reporting code\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f4ac1d0255748fe0f8e128a26b1c29490cae5c08",
      "tree": "2e5e9c31f32194c1042440bce54301e86125f142",
      "parents": [
        "b8ed5dd54895647c2690575aad6f07748c2c618a"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Dec 07 12:51:53 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:35 2009 +0100"
      },
      "message": "[S390] dasd: let device initialization wait for LCU setup\n\nThe first DASD that is set online for a specific logical control unit\nhas to do certain setup steps on the storage server to make full use\nof it, for example it will enable PAV.\nThe features and characteristics reported by the storage server will\ndepend on this setup, so all other devices on the same LCU will need\nto wait for the setup to be finished.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b8ed5dd54895647c2690575aad6f07748c2c618a",
      "tree": "aee2f9cd2a418691828bd95c09406e6424fd2235",
      "parents": [
        "eb6e199bef288611157b8198c25d12b32bf058d0"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon Dec 07 12:51:52 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:35 2009 +0100"
      },
      "message": "[S390] dasd: remove strings from s390dbf\n\nRemove strings from s390 debugfeature entries that could lead to a\ncrash when the data is read from dbf because the strings do not exist\nany more.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "eb6e199bef288611157b8198c25d12b32bf058d0",
      "tree": "80737a2703a9f4d09cee2410342aeccb281413ae",
      "parents": [
        "626350b63ef2cd447023d3dc2a34eaa7ca01bfff"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Dec 07 12:51:51 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:34 2009 +0100"
      },
      "message": "[S390] dasd: improve error recovery for internal I/O\n\nMost of the error conditions reported by a FICON storage server\nindicate situations which can be recovered. Sometimes the host just\nneeds to retry an I/O request, but sometimes the recovery\nis more complex and requires the device driver to wait, choose\na different path, etc.\n\nThe DASD device driver has a fully featured error recovery\nfor normal block layer I/O, but not for internal I/O request which\nare for example used during the device bring up.\nThis can lead to situations where the IPL of a system fails because\nDASD devices are not properly recognized.\nThis patch will extend the internal I/O handling to use the existing\nerror recovery procedures.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "626350b63ef2cd447023d3dc2a34eaa7ca01bfff",
      "tree": "f31776d47d7b9200d9d13c33f767785fec070d3f",
      "parents": [
        "779c27820a6bd53523a34551aa6004045a060dcf"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Dec 07 12:51:50 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:34 2009 +0100"
      },
      "message": "[S390] dasd: enable prefix independent of pav support\n\nThe DASD device driver needs to explicitly enable the prefix command\non the storage server, before it can be used. Originally we enabled\nthis command along with others only if we wanted to support PAV.\nHowever, today we require this command for other features like\nHigh Performance FICON as well, so we need to always enable prefix.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "779c27820a6bd53523a34551aa6004045a060dcf",
      "tree": "9835d06ffea950be1d623840939cdadd388361b4",
      "parents": [
        "22825ab7693fd29769518a0d25ba43c01a50092a"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Mon Dec 07 12:51:49 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:34 2009 +0100"
      },
      "message": "[S390] dasd: remove dead code\n\nthe todclk.h header file is dead code. Remove it.\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "22825ab7693fd29769518a0d25ba43c01a50092a",
      "tree": "b4cc2d22baafb8851efac2fed87fda4982dd8209",
      "parents": [
        "6c1e3e79430615d0472dbf9f8fed89c571e66423"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Mon Dec 07 12:51:48 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:34 2009 +0100"
      },
      "message": "[S390] dasd: support DIAG access for read-only devices\n\nWhen a DASD device is used with the DIAG discipline, the DIAG\ninitialization will indicate success or error with a respective\nreturn code. So far we have interpreted a return code of 4 as error,\nbut it actually means that the initialization was successful, but\nthe device is read-only. To allow read-only devices to be used with\nDIAG we need to accept a return code of 4 as success.\n\nRe-initialization of the DIAG access is also part of the DIAG error\nrecovery. If we find that the access mode of a device has been\nchanged from writable to read-only while the device was in use,\nwe print an error message.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "454e1fa1ebae7cff707b2e3f12b775c263c8408b",
      "tree": "eab290fcacd6faaf7e01e3a637cb9678bb367c66",
      "parents": [
        "4257aaecffab77bad43e12057f56a5590b360f9f"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Mon Dec 07 12:51:30 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Dec 07 12:51:31 2009 +0100"
      },
      "message": "[S390] cio: split PGID settings and status\n\nSplit setting (driver wants feature enabled) and status (feature\nsetup was successful) for PGID related ccw device features so that\nsetup errors can be detected. Previously, incorrectly handled setup\nerrors could in rare cases lead to erratic I/O behavior and\npermanently unusuable devices.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "fbfecd3712f917ca210a55c157233d88b785896b",
      "tree": "d0c06649b45a583e8d39eb0a8e60440163ceb77c",
      "parents": [
        "bf48aabb894fd0639ab72a26e8abbd7683ef23c2"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Wed Oct 28 20:11:04 2009 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:51 2009 +0100"
      },
      "message": "tree-wide: fix typos \"couter\" -\u003e \"counter\"\n\nThis patch was generated by\n\n\tgit grep -E -i -l \u0027couter\u0027 | xargs -r perl -p -i -e \u0027s/couter/counter/\u0027\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "d9fa9441ed6e0467d7d41de730581874c997e658",
      "tree": "4f6b0ec9058c616aa8d8265d59dd310d0a0f56a2",
      "parents": [
        "be6e3f9cd639fec5882fca16e058843c3064c6c9"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Oct 14 12:43:48 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Oct 14 12:43:53 2009 +0200"
      },
      "message": "[S390] dasd: use idal for device characteristics\n\nIf the rdc_buffer is above 2G we need indirect addresssing so we have\nto use an idaw to give the rdc_buffer to the ccw.\nIf the rdc_buffer is under 2G nothing changes.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a7602f6c16b2de2962b279980693ad1b3711e84a",
      "tree": "a58ecfd6bf49a2b64445ccda1f727f77bbdaa62d",
      "parents": [
        "03cadd36d51c737d7ad6aa21e2524296be6fe57f"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Wed Oct 14 12:43:46 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Wed Oct 14 12:43:52 2009 +0200"
      },
      "message": "[S390] dasd: fix locking bug\n\nReplace spin_lock with spin_lock_irqsave in dasd_eckd_restore_device.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6fca97a958bc3c67566aa91eafc6a5be2e66d6b3",
      "tree": "9e5ca7c9c3d14c45f469feb58cab15212cee9d6b",
      "parents": [
        "af9d2ff9afaae8040dbf09238b2579f92c93579e"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Tue Oct 06 10:34:15 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Tue Oct 06 10:35:11 2009 +0200"
      },
      "message": "[S390] dasd: fix race condition in resume code\n\nThere is a race while re-reading the device characteristics. After\ncleaning the memory area a cqr is build which reads the device\ncharacteristics. This may take a rather long time and the device\ncharacteristics structure is zero during this. Now it could be\npossible that the block tasklet starts working and a new cqr will be\nbuild. The build_cp command refers to the device characteristics\nstructure and this may lead into a divide by zero exception.\nFix this by re-reading the device characteristics into a temporary\nstructur and copy the data to the original structure. Also take the\nccwdev_lock.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9fd815b55f31be48dbb3dd23922587d247a4e497",
      "tree": "63814130acf3e472cc660ae71208c146f16dc5d6",
      "parents": [
        "31bbb9b58d1e8ebcf2b28c95c2250a9f8e31e397",
        "ed87b27e00d2ca240f62f3903583a2f1541fb9ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 10:02:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 10:02:14 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6: (22 commits)\n  [S390] Update default configuration.\n  [S390] hibernate: Do real CPU swap at resume time\n  [S390] dasd: tolerate devices that have no feature codes\n  [S390] zcrypt: Do not add/remove devices in s/r callbacks\n  [S390] hibernate: make sure pfn_is_nosave handles lowcore pages\n  [S390] smp: introduce LC_ORDER and simplify lowcore handling\n  [S390] ptrace: use common code for simple peek/poke operations\n  [S390] fix disabled_wait inline assembly clobber list\n  [S390] Change kernel_page_present coding style.\n  [S390] hibernation: reset system after resume\n  [S390] hibernation: fix guest page hinting related crash\n  [S390] Get rid of init_module/delete_module compat functions.\n  [S390] Convert sys_execve to function with parameters.\n  [S390] Convert sys_clone to function with parameters.\n  [S390] qdio: change state of all primed input buffers\n  [S390] qdio: reduce per device debug messages\n  [S390] cio: introduce consistent subchannel scanning\n  [S390] cio: idset use actual number of ssids\n  [S390] cio: dont kfree vmalloced memory\n  [S390] cio: introduce css_settle\n  ...\n"
    },
    {
      "commit": "68d1e5f08b13132504752cad54169376739753db",
      "tree": "8182caac93576fdbe0e2e0921bf46b188854863a",
      "parents": [
        "5314af693da5149c2361d290bb184cf18ee21cdd"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Tue Sep 22 22:58:52 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Sep 22 22:58:46 2009 +0200"
      },
      "message": "[S390] dasd: tolerate devices that have no feature codes\n\nThe DASD device driver reads the feature codes of a device during\ndevice initialization. These codes are later used to determine the\navailability of advanced features like PAV or High Performance FICON.\nSome very old devices do not support the command to read feature\ncodes and the initialization routine fails.\nAs the feature codes are not necessary for basic DASD operations, we\ncan support such devices by just ignoring missing feature codes.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "342ff1a1b558ebbdb8cbd55ab6a63eca8b2473ca",
      "tree": "1f967f283dade6e03897169bb29513354f49f910",
      "parents": [
        "50223e486cabdcf7e540e519da1f26bab3084e5d",
        "24ed7a97464db44592495f98cff8bcee02f92bc2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:45 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)\n  trivial: fix typo in aic7xxx comment\n  trivial: fix comment typo in drivers/ata/pata_hpt37x.c\n  trivial: typo in kernel-parameters.txt\n  trivial: fix typo in tracing documentation\n  trivial: add __init/__exit macros in drivers/gpio/bt8xxgpio.c\n  trivial: add __init macro/ fix of __exit macro location in ipmi_poweroff.c\n  trivial: remove unnecessary semicolons\n  trivial: Fix duplicated word \"options\" in comment\n  trivial: kbuild: remove extraneous blank line after declaration of usage()\n  trivial: improve help text for mm debug config options\n  trivial: doc: hpfall: accept disk device to unload as argument\n  trivial: doc: hpfall: reduce risk that hpfall can do harm\n  trivial: SubmittingPatches: Fix reference to renumbered step\n  trivial: fix typos \"man[ae]g?ment\" -\u003e \"management\"\n  trivial: media/video/cx88: add __init/__exit macros to cx88 drivers\n  trivial: fix typo in CONFIG_DEBUG_FS in gcov doc\n  trivial: fix missing printk space in amd_k7_smp_check\n  trivial: fix typo s/ketymap/keymap/ in comment\n  trivial: fix typo \"to to\" in multiple files\n  trivial: fix typos in comments s/DGBU/DBGU/\n  ...\n"
    },
    {
      "commit": "83d5cde47dedf01b6a4a4331882cbc0a7eea3c2e",
      "tree": "f8ba5e263717d35cd444fcc65898d2ed352af1ae",
      "parents": [
        "7b021967c5e1463936042c8da72b550d3cabe9ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make block_device_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a419aef8b858a2bdb98df60336063d28df4b272f",
      "tree": "1736f6650ec0bfc01074c489fc47396114099c5e",
      "parents": [
        "2944fcbe03d65a704f07e43efe14adb0d226fd09"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Aug 18 11:18:35 2009 -0700"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:58 2009 +0200"
      },
      "message": "trivial: remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "99b5e2d3d7ae8f5a2dba7a41a02ba7eb25523b3f",
      "tree": "80177d3f079116272be2b9b25fcf3d1d54c7a5e5",
      "parents": [
        "3f7cb51fac60618aa543058a90e668956d5fb518"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Fri Sep 11 10:28:50 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:50 2009 +0200"
      },
      "message": "[S390] xpram: Remove checksum validation for suspend/resume\n\nCurrently in the suspend process checksums for the XPRAM partitions are\ncreated and stored. During the resume process it is checked,\nif the checksums are still the same. If this is not the case, a kernel panic\nis triggered. Unfortunately this prevents XPRAM from beeing used as suspend\ndevice, because in this case after the checksum has been created, the\nmemory image is written to XPRAM and therefore the contents of the suspend\npartition is changed. In order to allow XPRAM to be used as suspend device,\nthis patch removes the checksum validation.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ca99dab01dd63dcc413395bd3e75b0be152dfefc",
      "tree": "a78164184f26e153f2e7c98fa866b5f3755d3213",
      "parents": [
        "68b781fe1bed89011ab7c58ede8476abe64432d2"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Sep 11 10:28:30 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:42 2009 +0200"
      },
      "message": "[S390] dasd: fix message naming\n\nThis patch fixes message naming so that generic dasd messages do not\ncontain the device discipline. For this purpose the dev_ makros are\nreplaced by pr_ makros for generic dasd messages.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "68b781fe1bed89011ab7c58ede8476abe64432d2",
      "tree": "afe2148854aa2f4eae370a2cf1855f80a9b5a8cb",
      "parents": [
        "97f604b07473669f4da52b1f859ee45e8d48d42a"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Fri Sep 11 10:28:29 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:41 2009 +0200"
      },
      "message": "[S390] dasd: optimize cpu usage in goodcase\n\nremove unnecessary dbf call, remove string operations for magic\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "97f604b07473669f4da52b1f859ee45e8d48d42a",
      "tree": "b93604552144e1e743b988ce343ae35a9a5a6559",
      "parents": [
        "3ac276f8cb020adbbc3399c47edc1100748c2c16"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Fri Sep 11 10:28:28 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Sep 11 10:29:41 2009 +0200"
      },
      "message": "[S390] dasd: fail requests when device state is less then ready\n\nA DASD device that is not ready or online has no defined disk layout,\nso all requests that arrive in such a state need to be returned as\nfailed.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "cf05b824dbb871159e1b4c4f2733b9c9d2f756cf",
      "tree": "0fa55852038849722150149da4ab418f96c945b3",
      "parents": [
        "06739a8ad321b1e5140b318c648b0cc4bf8c6daa"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sun Aug 23 18:09:05 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Sun Aug 23 18:10:00 2009 +0200"
      },
      "message": "[S390] drivers/s390: put NULL test before dereference\n\nIf the NULL test on block is needed, it should be before the dereference of\nthe base field.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r@\nexpression E1,E2;\nidentifier fld;\nstatement S1,S2;\n@@\n\nE1 \u003d E2-\u003efld;\n(\nif (E1 \u003d\u003d NULL) S1 else S2\n|\n*if (E2 \u003d\u003d NULL) S1 else S2\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "405f55712dfe464b3240d7816cc4fe4174831be2",
      "tree": "96c425ea7fa8b31058b8f83a433c5e5265c8ebc7",
      "parents": [
        "f9fabcb58a6d26d6efde842d1703ac7cfa9427b6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Jul 11 22:08:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:22:34 2009 -0700"
      },
      "message": "headers: smp_lock.h redux\n\n* Remove smp_lock.h from files which don\u0027t need it (including some headers!)\n* Add smp_lock.h to files which do need it\n* Make smp_lock.h include conditional in hardirq.h\n  It\u0027s needed only for one kernel_locked() usage which is under CONFIG_PREEMPT\n\n  This will make hardirq.h inclusion cheaper for every PREEMPT\u003dn config\n  (which includes allmodconfig/allyesconfig, BTW)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c48c4d631970b70d60a4f926b0f68f194a0d559",
      "tree": "841ccd09108a4f9707f1b5fb0464627d061adfda",
      "parents": [
        "fca3e357d5de31e484c3e0ec7f356e4fc488eb7f"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Tue Jul 07 16:37:11 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jul 07 16:37:53 2009 +0200"
      },
      "message": "[S390] improve suspend/resume error messages\n\nFrom: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "aeec92ca3a1d5ca96efe76988fd4df943a90300d",
      "tree": "7be076fee4be84dc00440770a4f03f6b67bf8696",
      "parents": [
        "bb8c29caffdda55d3df0315ff2485f7df7290b1d"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Tue Jul 07 16:37:06 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jul 07 16:37:52 2009 +0200"
      },
      "message": "[S390] dasd: correct debugfeature sense dump\n\nremove loop, add some debug data and use get_sense function\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "181d95229b0931ee2ce6aad7348079cbc10e8d05",
      "tree": "9962496049dad3c4ed5695d09886d0804be51462",
      "parents": [
        "e98bbaafcd1c47d30f3245517fb585f1aaaca4db"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Mon Jun 22 12:08:21 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Jun 22 12:08:23 2009 +0200"
      },
      "message": "[S390] dasd: fix refcounting in dasd_change_state\n\nTo set a dasd online dasd_change_state is called twice. The first\ncycle will schedule initial analysis of the device, set the rc to\n-EAGAIN and will not touch the device state any more.\nThe initial analysis will in turn call dasd_change_state to increase\nthe state to the final DASD_STATE_ONLINE.\n\nIf the dasd_change_state on the second thread outruns the other one\nboth finish with the state set to DASD_STATE_ONLINE and the device\nrefcount will be decreased by 2.\n\nFix this by leaving dasd_change_state on rc \u003d\u003d -EAGAIN so that the\nrefcount will always be decreased by 1.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e6125fba81e362d9b314d10893af1d9dc5658f33",
      "tree": "74039b088fc81e72e7976c5fca6ea0174eed9160",
      "parents": [
        "772f54720ab82a6e88f0a8a84d76e7af15ca1f0c"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Mon Jun 22 12:08:17 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Jun 22 12:08:22 2009 +0200"
      },
      "message": "[S390] dasd_pm: fix stop flag handling\n\nThe stop flags are handled in the generic restore function so the\nstop flag is removed also for FBA and DIAG devices.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c369527f18f8560bd3580be2676cb55b54b02ee6",
      "tree": "d9e3b9c4ee8cfa493bdb8e9a3c863df11815a9ed",
      "parents": [
        "2b1e3e5558b9de0f85ed9183a7adb2d61aab363b"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Tue Jun 16 10:30:51 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jun 16 10:31:22 2009 +0200"
      },
      "message": "[S390] pm: dcssblk power management callbacks.\n\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "14532095dfe9e8faf2d314d9c2170f64737c7dff",
      "tree": "12435ebeb365a709daa199f9af8ae24753bde6dc",
      "parents": [
        "7db11a363fc41cec170a94a3542031e5e64bb333"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@de.ibm.com",
        "time": "Tue Jun 16 10:30:27 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jun 16 10:31:11 2009 +0200"
      },
      "message": "[S390] pm: xpram driver power management callbacks\n\nSigned-off-by: Michael Holzheu \u003cholzheu@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d41dd122acf960db78c9ddc87684b43751dd36d9",
      "tree": "6005ea4914d1d2556b182ae86d82185d792b2f30",
      "parents": [
        "ad285ae9fc6b9c0058f2a558b43fe8817685ebfa"
      ],
      "author": {
        "name": "Stefan Haberland",
        "email": "stefan.haberland@de.ibm.com",
        "time": "Tue Jun 16 10:30:25 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Jun 16 10:31:10 2009 +0200"
      },
      "message": "[S390] pm: dasd power management callbacks.\n\nIntroduce the power management callbacks to the dasd driver. On suspend\nthe dasd devices are stopped and removed from the focus of alias\nmanagement.\nOn resume they are reinitialized by rereading the device characteristics\nand adding the device to the alias management.\nIn case the device has gone away during suspend it will caught in the\nsuspend state with stopped flag set to UNRESUMED. After it appears again\nthe restore function is called again.\n\nSigned-off-by: Stefan Haberland \u003cstefan.haberland@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6cc7f168954fe8b3d8988a90b2478a9c11c5ebcb",
      "tree": "de3ee836f75f4cd1010a78c49d42393198b6f955",
      "parents": [
        "736e6ea0bf97ec79521f88704ce8506e5d60d078"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Fri Jun 12 10:26:39 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jun 12 10:27:36 2009 +0200"
      },
      "message": "[S390] dasd: forward internal errors to dasd_sleep_on caller\n\nIf a DASD requests is started with dasd_sleep_on and fails, then the\ncalling function may need to know the reason for the failure.\nIn cases of hardware errors it can inspect the sense data in the irb,\nbut when the reason is internal (e.g. start_IO failed) then it needs\na meaningfull return code.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "736e6ea0bf97ec79521f88704ce8506e5d60d078",
      "tree": "3bfa8317f4c3161bfe86163b8ab87613d629ba7d",
      "parents": [
        "92636b152f3b58e459988934f689619af9e04dbc"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Jun 12 10:26:38 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jun 12 10:27:36 2009 +0200"
      },
      "message": "[S390] dasd: sync after async probe\n\nSome functions called as a late_initcall depend on completely\ninitialized devices. Since commit\nf3445a1a656bc26b07946cc6d20de1ef07c8d116 the dasd driver uses the\nnew async framework and relies on the fact that synchronization is\ndone in prepare_namespace which is called after the late_initcalls.\n\nFix this by calling async_synchronize_full at the end of the related\ninit functions.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "92636b152f3b58e459988934f689619af9e04dbc",
      "tree": "2736c3278fcc04cb9488ab740d7ed2dd8d1184a4",
      "parents": [
        "45b44d76d373e66d08e0c745dc82ff9123103588"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Fri Jun 12 10:26:37 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jun 12 10:27:35 2009 +0200"
      },
      "message": "[S390] dasd: check_characteristics cleanup\n\nFix a broken memset (sizeof pointer vs sizeof the underlying\nstructure) by cleaning up the involved functions.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "45b44d76d373e66d08e0c745dc82ff9123103588",
      "tree": "5a871000e9174f6be94a457625bcf1413b3386ea",
      "parents": [
        "d0591485e15ccd908f91058f7da134248dcdbbb3"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Fri Jun 12 10:26:36 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jun 12 10:27:35 2009 +0200"
      },
      "message": "[S390] dasd: no High Performance FICON in 31-bit mode\n\nThe High Performance FICON feature is not supported in 31-bit mode,\nno matter what the various flags say. So we need to check for the\nCONFIG_64BIT option as well.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d0591485e15ccd908f91058f7da134248dcdbbb3",
      "tree": "b4964e3911455edeff310bdd456ba85f64de9b82",
      "parents": [
        "6b9d8e80bb9edd0c9fe948a6ef105391de56b012"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Fri Jun 12 10:26:35 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jun 12 10:27:34 2009 +0200"
      },
      "message": "[S390] dcssblk: revert devt conversion\n\ngit commit f331c0296f2a9fee0d396a70598b954062603015 changed users of\n-\u003efirst_minor to devt. This broke device handling in dcssblk, so that\nno additional devices could be added after the first one.\n\nThis patch reverts the devt conversion to the previous -\u003efirst_minor\nhandling.\n\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1",
      "tree": "d60d15a082171c58ac811d547d51a9c3119f23e3",
      "parents": [
        "9bd7de51ee8537094656149eaf45338cadb7d7d4"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:49 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Do away with the notion of hardsect_size\n\nUntil now we have had a 1:1 mapping between storage device physical\nblock size and the logical block sized used when addressing the device.\nWith SATA 4KB drives coming out that will no longer be the case.  The\nsector size will be 4KB but the logical block size will remain\n512-bytes.  Hence we need to distinguish between the physical block size\nand the logical ditto.\n\nThis patch renames hardsect_size to logical_block_size.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9934c8c04561413609d2bc38c6b9f268cba774a4",
      "tree": "30dd8f7be54f9b2e03094de9cd03b6a9ee2909cd",
      "parents": [
        "2343046826a8ca426b07601d9593ee046c298b68"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 08 11:54:16 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:52:18 2009 +0200"
      },
      "message": "block: implement and enforce request peek/start/fetch\n\nTill now block layer allowed two separate modes of request execution.\nA request is always acquired from the request queue via\nelv_next_request().  After that, drivers are free to either dequeue it\nor process it without dequeueing.  Dequeue allows elv_next_request()\nto return the next request so that multiple requests can be in flight.\n\nExecuting requests without dequeueing has its merits mostly in\nallowing drivers for simpler devices which can\u0027t do sg to deal with\nsegments only without considering request boundary.  However, the\nbenefit this brings is dubious and declining while the cost of the API\nambiguity is increasing.  Segment based drivers are usually for very\nold or limited devices and as converting to dequeueing model isn\u0027t\ndifficult, it doesn\u0027t justify the API overhead it puts on block layer\nand its more modern users.\n\nPrevious patches converted all block low level drivers to dequeueing\nmodel.  This patch completes the API transition by...\n\n* renaming elv_next_request() to blk_peek_request()\n\n* renaming blkdev_dequeue_request() to blk_start_request()\n\n* adding blk_fetch_request() which is combination of peek and start\n\n* disallowing completion of queued (not started) requests\n\n* applying new API to all LLDs\n\nRenamings are for consistency and to break out of tree code so that\nit\u0027s apparent that out of tree drivers need updating.\n\n[ Impact: block request issue API cleanup, no functional change ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    }
  ],
  "next": "83096ebf1263b2c1ee5e653ba37d993d02e3eb7b"
}
