)]}'
{
  "log": [
    {
      "commit": "7eaceaccab5f40bbfda044629a6298616aeaed50",
      "tree": "33954d12f63e25a47eb6d86ef3d3d0a5e62bf752",
      "parents": [
        "73c101011926c5832e6e141682180c4debe2cf45"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Mar 10 08:52:07 2011 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Thu Mar 10 08:52:07 2011 +0100"
      },
      "message": "block: remove per-queue plugging\n\nCode has been converted over to the new explicit on-stack plugging,\nand delay users have been converted to use the new API for that.\nSo lets kill off the old plugging along with aops-\u003esync_page().\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "2a48fc0ab24241755dc93bfd4f01d68efab47f5a",
      "tree": "fa9ae10ce89b26b7d8ae9ce24bdfda5e3007b763",
      "parents": [
        "613655fa39ff6957754fa8ceb8559980920eb8ee"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 02 14:28:52 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Oct 05 15:01:10 2010 +0200"
      },
      "message": "block: autoconvert trivial BKL users to private mutex\n\nThe block device drivers have all gained new lock_kernel\ncalls from a recent pushdown, and some of the drivers\nwere already using the BKL before.\n\nThis turns the BKL into a set of per-driver mutexes.\nStill need to check whether this is safe to do.\n\nfile\u003d$1\nname\u003d$2\nif grep -q lock_kernel ${file} ; then\n    if grep -q \u0027include.*linux.mutex.h\u0027 ${file} ; then\n            sed -i \u0027/include.*\u003clinux\\/smp_lock.h\u003e/d\u0027 ${file}\n    else\n            sed -i \u0027s/include.*\u003clinux\\/smp_lock.h\u003e.*$/include \u003clinux\\/mutex.h\u003e/g\u0027 ${file}\n    fi\n    sed -i ${file} \\\n        -e \"/^#include.*linux.mutex.h/,$ {\n                1,/^\\(static\\|int\\|long\\)/ {\n                     /^\\(static\\|int\\|long\\)/istatic DEFINE_MUTEX(${name}_mutex);\n\n} }\"  \\\n    -e \"s/\\(un\\)*lock_kernel\\\u003e[ ]*()/mutex_\\1lock(\\\u0026${name}_mutex)/g\" \\\n    -e \u0027/[      ]*cycle_kernel_lock();/d\u0027\nelse\n    sed -i -e \u0027/include.*\\\u003csmp_lock.h\\\u003e/d\u0027 ${file}  \\\n                -e \u0027/cycle_kernel_lock()/d\u0027\nfi\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "f6c4c8e19a087dae7dc651ccbd1ff8b843eedee2",
      "tree": "49ef8d3044def969cd6bac6a3ef9e09d19a18803",
      "parents": [
        "08852b6d6c40f387f2b75e199e2ca1df68970f4c"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Tue Aug 03 12:52:55 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:53:03 2010 +0200"
      },
      "message": "cpqarray: check put_user() result\n\nput_user() may fail, if so return -EFAULT.\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nAcked-by: Mike Miller \u003cmike.miller@hp.com\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "ad96a7a7ea950d5bc9755f2f568be185c7070f1e",
      "tree": "ec2d2c8e2d48c241e05d2acf6506a7105d3ed17c",
      "parents": [
        "6a32a8aed509e71137043d464db4a7fcd88c903e"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Tue Jul 20 20:08:59 2010 -0600"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:52:31 2010 +0200"
      },
      "message": "drivers/block: use memdup_user\n\nUse memdup_user when user data is immediately copied into the\nallocated region.  Some checkpatch cleanups in nearby code.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression from,to,size,flag;\nposition p;\nidentifier l1,l2;\n@@\n\n-  to \u003d \\(kmalloc@p\\|kzalloc@p\\)(size,flag);\n+  to \u003d memdup_user(from,size);\n   if (\n-      to\u003d\u003dNULL\n+      IS_ERR(to)\n                 || ...) {\n   \u003c+... when !\u003d goto l1;\n-  -ENOMEM\n+  PTR_ERR(to)\n   ...+\u003e\n   }\n-  if (copy_from_user(to, from, size) !\u003d 0) {\n-    \u003c+... when !\u003d goto l2;\n-    -EFAULT\n-    ...+\u003e\n-  }\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Chirag Kantharia \u003cchirag.kantharia@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "6e9624b8caec290d28b4c6d9ec75749df6372b87",
      "tree": "47225b544e1da82742795553dc4e8aa70c17afdc",
      "parents": [
        "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:34 2010 +0200"
      },
      "message": "block: push down BKL into .open and .release\n\nThe open and release block_device_operations are currently\ncalled with the BKL held. In order to change that, we must\nfirst make sure that all drivers that currently rely\non this have no regressions.\n\nThis blindly pushes the BKL into all .open and .release\noperations for all block drivers to prepare for the\nnext step. The drivers can subsequently replace the BKL\nwith their own locks or remove it completely when it can\nbe shown that it is not needed.\n\nThe functions blkdev_get and blkdev_put are the only\nremaining users of the big kernel lock in the block\nlayer, besides a few uses in the ioctl code, none\nof which need to serialize with blkdev_{get,put}.\n\nMost of these two functions is also under the protection\nof bdev-\u003ebd_mutex, including the actual calls to\n-\u003eopen and -\u003erelease, and the common code does not\naccess any global data structures that need the BKL.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "8a6cfeb6deca3a8fefd639d898b0d163c0b5d368",
      "tree": "9a633ad48c3b1ada0519ee7bade0602f940037f6",
      "parents": [
        "34484062445fe905bf02c72f87ddda21881acda3"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 08 10:18:46 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Sat Aug 07 18:25:00 2010 +0200"
      },
      "message": "block: push down BKL into .locked_ioctl\n\nAs a preparation for the removal of the big kernel\nlock in the block layer, this removes the BKL\nfrom the common ioctl handling code, moving it\ninto every single driver still using it.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "552618d124b68d41c2effaaaa3ca5b8ce9598502",
      "tree": "677f2ac03472647c60fe2154f4f0bdaa55ddd3ae",
      "parents": [
        "d4a3895f5d024b47ef8e9d98c59a9b86dcdcef59"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Jun 14 15:21:33 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Jun 14 15:21:33 2010 +0200"
      },
      "message": "cpqarray: fix two more wrong section type\n\ncpqarray_register_ctlr() and cpqarray_eisa_detect() also\nneed to be marked as __devinit.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\n"
    },
    {
      "commit": "d4a3895f5d024b47ef8e9d98c59a9b86dcdcef59",
      "tree": "7b4a4d58a463e36b775770cd640ea1430f32763c",
      "parents": [
        "575f552012ec0cd6591fd85ee996d5a5ad1a669a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Jun 14 12:55:09 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jaxboe@fusionio.com",
        "time": "Mon Jun 14 12:55:09 2010 +0200"
      },
      "message": "cpqarray: fix wrong __init type on pci probe function\n\nIt needs to be __devinit, not __init.\n\nSigned-off-by: Jens Axboe \u003cjaxboe@fusionio.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": "ff2c3de305e2d06ae556e1a382ed75c5dd8f9dda",
      "tree": "449467f415870884fd455e87027e6c82557d6f9a",
      "parents": [
        "17d857be649a21ca90008c6dc425d849fa83db5c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Sep 18 12:58:47 2009 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 01 21:15:40 2009 +0200"
      },
      "message": "cpqarray: switch to seq_file\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Chirag Kantharia \u003cchirag.kantharia@hp.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "83d5cde47dedf01b6a4a4331882cbc0a7eea3c2e",
      "tree": "f8ba5e263717d35cd444fcc65898d2ed352af1ae",
      "parents": [
        "7b021967c5e1463936042c8da72b550d3cabe9ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make block_device_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "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"
    },
    {
      "commit": "83096ebf1263b2c1ee5e653ba37d993d02e3eb7b",
      "tree": "2226b71a616ec1cb2d37511c6a09ba9507a1cd69",
      "parents": [
        "5b93629b4509c03ffa87a9316412fedf6f58cb37"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:39 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:54 2009 +0200"
      },
      "message": "block: convert to pos and nr_sectors accessors\n\nWith recent cleanups, there is no place where low level driver\ndirectly manipulates request fields.  This means that the \u0027hard\u0027\nrequest fields always equal the !hard fields.  Convert all\nrq-\u003esectors, nr_sectors and current_nr_sectors references to\naccessors.\n\nWhile at it, drop superflous blk_rq_pos() \u003c 0 test in swim.c.\n\n[ Impact: use pos and nr_sectors accessors ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nTested-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nTested-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nAcked-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nAcked-by: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Eric Moore \u003cEric.Moore@lsi.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Dario Ballabio \u003cballabio_dario@emc.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nCc: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "40cbbb781d3eba5d6ac0860db078af490e5c7c6b",
      "tree": "dec374543cf045fc630bccddbb7646c695094b0d",
      "parents": [
        "b243ddcbe9be146172baa544dadecebf156eda0e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:19 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:35 2009 +0200"
      },
      "message": "block: implement and use [__]blk_end_request_all()\n\nThere are many [__]blk_end_request() call sites which call it with\nfull request length and expect full completion.  Many of them ensure\nthat the request actually completes by doing BUG_ON() the return\nvalue, which is awkward and error-prone.\n\nThis patch adds [__]blk_end_request_all() which takes @rq and @error\nand fully completes the request.  BUG_ON() is added to to ensure that\nthis actually happens.\n\nMost conversions are simple but there are a few noteworthy ones.\n\n* cdrom/viocd: viocd_end_request() replaced with direct calls to\n  __blk_end_request_all().\n\n* s390/block/dasd: dasd_end_request() replaced with direct calls to\n  __blk_end_request_all().\n\n* s390/char/tape_block: tapeblock_end_request() replaced with direct\n  calls to blk_end_request_all().\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "0061d38642244892e17156f005bd7055fe744644",
      "tree": "73630b32367bde8f13cf6570e42cd6721c28afc6",
      "parents": [
        "d399228646e26db315d6233bed65ec9d08c57f57"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 16 10:06:05 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Mar 24 12:35:17 2009 +0100"
      },
      "message": "cpqarray: enable bus mastering\n\nWe\u0027ve been carrying this patch for the last 3 years in Fedora,\nlong past time we got it upstream...\n\nCall pci_set_master to enable bus-mastering if the BIOS hasn\u0027t\ndone it already.\n\nSigned-off-by: Kyle McMartin \u003ckyle@redhat.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2197d18ded232ef6eef63cce57b6b21eddf1b7b6",
      "tree": "bebaa0e01ed4c2448d7a2ac5b6dbdddd70429572",
      "parents": [
        "77ca7286d10b798e4907af941f29672bf484db77"
      ],
      "author": {
        "name": "Andrey Borzenkov",
        "email": "arvidjaar@mail.ru",
        "time": "Thu Nov 06 12:53:15 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 06 15:41:17 2008 -0800"
      },
      "message": "cpqarry: fix return value of cpqarray_init()\n\nAs reported by Dick Gevers on Compaq ProLiant:\n\nOct 13 18:06:51 dvgcpl kernel: Compaq SMART2 Driver (v 2.6.0)\nOct 13 18:06:51 dvgcpl kernel: sys_init_module: \u0027cpqarray\u0027-\u003einit\nsuspiciously returned 1, it should follow 0/-E convention\nOct 13 18:06:51 dvgcpl kernel: sys_init_module: loading module anyway...\nOct 13 18:06:51 dvgcpl kernel: Pid: 315, comm: modprobe Not tainted\n2.6.27-desktop-0.rc8.2mnb #1\nOct 13 18:06:51 dvgcpl kernel:  [\u003cc0380612\u003e] ? printk+0x18/0x1e\nOct 13 18:06:51 dvgcpl kernel:  [\u003cc0158f85\u003e] sys_init_module+0x155/0x1c0\nOct 13 18:06:51 dvgcpl kernel:  [\u003cc0103f06\u003e] syscall_call+0x7/0xb\nOct 13 18:06:51 dvgcpl kernel:  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nMake it return 0 on success and -ENODEV if no array was found.\n\nReported-by: Dick Gevers \u003cdvgevers@xs4all.nl\u003e\nSigned-off-by: Andrey Borzenkov \u003carvidjaar@mail.ru\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@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": "47844fadb5050a6fb90924e73eb2dea1afd7fe33",
      "tree": "47938e3a7d7fbdee09ca7b6ba906c980b8f97bbd",
      "parents": [
        "ef7822c2fbbb004e30e1fb6f79d6f8a1a1a144d7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 09:27:11 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:47 2008 -0400"
      },
      "message": "[PATCH] switch cpqarray\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d4430d62fa77208824a37fe6f85ab2831d274769",
      "tree": "5d4d0bca31e63eb208fbebe4f39c912b964c1e4d",
      "parents": [
        "badf8082c33d18b118d3a6f1b32d5ea6b97d3839"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 09:09:22 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:32 2008 -0400"
      },
      "message": "[PATCH] beginning of methods conversion\n\nTo keep the size of changesets sane we split the switch by drivers;\nto keep the damn thing bisectable we do the following:\n\t1) rename the affected methods, add ones with correct\nprototypes, make (few) callers handle both.  That\u0027s this changeset.\n\t2) for each driver convert to new methods.  *ALL* drivers\nare converted in this series.\n\t3) kill the old (renamed) methods.\n\nNote that it _is_ a flagday; all in-tree drivers are converted and by the\nend of this series no trace of old methods remain.  The only reason why\nwe do that this way is to keep the damn thing bisectable and allow per-driver\ndebugging if anything goes wrong.\n\nNew methods:\n\topen(bdev, mode)\n\trelease(disk, mode)\n\tioctl(bdev, mode, cmd, arg)\t\t/* Called without BKL */\n\tcompat_ioctl(bdev, mode, cmd, arg)\n\tlocked_ioctl(bdev, mode, cmd, arg)\t/* Called with BKL, legacy */\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "061837bc8687edc2739ef02f721b7ae0b8076390",
      "tree": "e1c59ea7212949a91b2cf19ed125c0db24052b29",
      "parents": [
        "905bd78f2188da69e74966918e3d71df3dff382b"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Sep 22 14:57:16 2008 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:19 2008 +0200"
      },
      "message": "drivers/block: Use DIV_ROUND_UP\n\nThe kernel.h macro DIV_ROUND_UP performs the computation (((n) + (d) - 1) /\n(d)) but is perhaps more readable.\n\nAn extract of the semantic patch that makes this change is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@haskernel@\n@@\n\n#include \u003clinux/kernel.h\u003e\n\n@depends on haskernel@\nexpression n,d;\n@@\n\n(\n- (n + d - 1) / d\n+ DIV_ROUND_UP(n,d)\n|\n- (n + (d - 1)) / d\n+ DIV_ROUND_UP(n,d)\n)\n\n@depends on haskernel@\nexpression n,d;\n@@\n\n- DIV_ROUND_UP((n),d)\n+ DIV_ROUND_UP(n,d)\n\n@depends on haskernel@\nexpression n,d;\n@@\n\n- DIV_ROUND_UP(n,(d))\n+ DIV_ROUND_UP(n,d)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: \u003cmike.miller@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "928b4d8c8963e75bdb133f562b03b07f9aa4844a",
      "tree": "18de7e85fe403f681a954ed04254b2d9085e7fe4",
      "parents": [
        "36a5aeb8787fbf92510ed20d806e229c55726f93"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Apr 29 01:01:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:18 2008 -0700"
      },
      "message": "proc: remove proc_root_driver\n\nUse creation by full path: \"driver/foo\".\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": "ea6f06f416347448645e60294d92c0c19aba8589",
      "tree": "01220f12cf20b74d962e3a7a6fd12acee0a4dccb",
      "parents": [
        "3daeea29f9348263e0dda89a565074390475bdf8"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Tue Dec 11 17:50:21 2007 -0500"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:37:00 2008 +0100"
      },
      "message": "blk_end_request: changing cpqarray (take 4)\n\nThis patch converts cpqarray to use blk_end_request interfaces.\nRelated \u0027ok\u0027 arguments are converted to \u0027error\u0027.\n\ncpqarray is a little bit different from \"normal\" drivers.\ncpqarray directly calls bio_endio() and disk_stat_add()\nwhen completing request.  But those can be replaced with\n__end_that_request_first().\nAfter the replacement, request completion procedures of\nthose drivers become like the following:\n    o end_that_request_first()\n    o add_disk_randomness()\n    o end_that_request_last()\nThis can be converted to __blk_end_request() by following\nthe rule (b) mentioned in the patch subject\n\"[PATCH 01/30] blk_end_request: add new request completion interface\".\n\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "117636092a87a28a013a4acb5de5492645ed620f",
      "tree": "6d91fa6bd7bf6d0e1671141d338028a17679e607",
      "parents": [
        "891039a9c2ddf73754ad84cdc9d030f1c6431858"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Oct 23 20:42:11 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 23 12:02:39 2007 -0700"
      },
      "message": "[PATCH] Fix breakage after SG cleanups\n\nCommits\n\n  58b053e4ce9d2fc3023645c1b96e537c72aa8d9a (\"Update arch/ to use sg helpers\")\n  45711f1af6eff1a6d010703b4862e0d2b9afd056 (\"[SG] Update drivers to use sg helpers\")\n  fa05f1286be25a8ce915c5dd492aea61126b3f33 (\"Update net/ to use sg helpers\")\n\nconverted many files to use the scatter gather helpers without ensuring\nthat the necessary headerfile \u003clinux/scatterlist\u003e is included.  This\nhappened to work for ia64, powerpc, sparc64 and x86 because they\nhappened to drag in that file via their \u003casm/dma-mapping.h\u003e.\n\nOn most of the others this probably broke.\n\nInstead of increasing the header file spider web I choose to include\n\u003clinux/scatterlist.h\u003e directly into the affectes files.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45711f1af6eff1a6d010703b4862e0d2b9afd056",
      "tree": "3d0048f46e3df9d217d56127462ebe680348bd5a",
      "parents": [
        "78c2f0b8c285c5305b3e67b0595200541e15eb43"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Oct 22 21:19:53 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Oct 22 21:19:53 2007 +0200"
      },
      "message": "[SG] Update drivers to use sg helpers\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "87ad90016483f7f112021c7c82d3d72e682324f6",
      "tree": "c6ab50ceae0297813e4b2b867a3e0267c45d15cd",
      "parents": [
        "7344be053ab9a1910e77ba6472883a5c83dda569"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 15 11:02:15 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 09:59:55 2007 +0200"
      },
      "message": "drivers/block/cpqarray,cciss: kill unused var\n\nThe recent bio work and subsequent fixups created unused variables.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6712ecf8f648118c3363c142196418f89a510b90",
      "tree": "347d39a7d5a7ed96d3b1afecd28de2a0f98b98c9",
      "parents": [
        "5bb23a688b2de23d7765a1dd439d89c038378978"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Sep 27 12:47:43 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Wed Oct 10 09:25:57 2007 +0200"
      },
      "message": "Drop \u0027size\u0027 argument from bio_endio and bi_end_io\n\nAs bi_end_io is only called once when the reqeust is complete,\nthe \u0027size\u0027 argument is now redundant.  Remove it.\n\nNow there is no need for bio_endio to subtract the size completed\nfrom bi_size.  So don\u0027t do that either.\n\nWhile we are at it, change bi_end_io to return void.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2e4934aa4586832c35e077191849a06f93e4a9a0",
      "tree": "a548f2408b19ed634e49520e995bffe279a303a7",
      "parents": [
        "1aebe18787ca2e915eb8204d365ba2484d53223b"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Sat Aug 11 22:34:30 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sat Aug 11 22:34:48 2007 +0200"
      },
      "message": "drivers/block/cpqarray.c: better error handling and kmalloc + memset conversion to k[cz]alloc\n\nThis patch removes some redundant casts, does the kmalloc + memset to\nk[cz]alloc conversion and it changes the error path to use goto (to avoid code\nduplication).\n\n drivers/block/cpqarray.c | 49567 -\u003e 48623 (-944 bytes)\n drivers/block/cpqarray.o | 178820 -\u003e 178288 (-532 bytes)\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nAcked-by: Mike Miller \u003cmike.miller@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "165125e1e480f9510a5ffcfbfee4e3ee38c05f23",
      "tree": "8009c8a5ff09e26dc2418d42f66ecafb055c52a2",
      "parents": [
        "f695baf2df9e0413d3521661070103711545207a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Jul 24 09:28:11 2007 +0200"
      },
      "message": "[BLOCK] Get rid of request_queue_t typedef\n\nSome of the code has been gradually transitioned to using the proper\nstruct request_queue, but there\u0027s lots left. So do a full sweet of\nthe kernel and get rid of this typedef and replace its uses with\nthe proper type.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "5cbded585d129d0226cb48ac4202b253c781be26",
      "tree": "fb24edc194a57ee81a3bf8a4dd8a95030dd0ad22",
      "parents": [
        "0743b86800cf1dfbf96df4a438938127bbe4476c"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Wed Dec 13 00:35:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 09:05:58 2006 -0800"
      },
      "message": "[PATCH] getting rid of all casts of k[cmz]alloc() calls\n\nRun this:\n\n\t#!/bin/sh\n\tfor f in $(grep -Erl \"\\([^\\)]*\\) *k[cmz]alloc\" *) ; do\n\t  echo \"De-casting $f...\"\n\t  perl -pi -e \"s/ ?\u003d ?\\([^\\)]*\\) *(k[cmz]alloc) *\\(/ \u003d \\1\\(/\" $f\n\tdone\n\nAnd then go through and reinstate those cases where code is casting pointers\nto non-pointers.\n\nAnd then drop a few hunks which conflicted with outstanding work.\n\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e, Ian Molton \u003cspyro@f2s.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Paul Fulghum \u003cpaulkf@microgate.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Ian Kent \u003craven@themaw.net\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1f794b6082a5ff88f7c48d1634056026acf806f4",
      "tree": "7f87084987fbc9109deeb4bc2a623a6852da6205",
      "parents": [
        "b369c2cfa47bc0ad495a95fe9a17c9888781d615"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Nov 14 12:36:45 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Tue Nov 14 15:08:50 2006 -0800"
      },
      "message": "[PATCH] cpqarray: fix iostat\n\ncpqarray needs to call disk_stat_add() for iostat to work.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d12e780e003f93433d49ce78cfedf4b4c52adc5",
      "tree": "6748550400445c11a306b132009f3001e3525df8",
      "parents": [
        "da482792a6d1a3fbaaa25fae867b343fb4db3246"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 05 14:55:46 2006 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Thu Oct 05 15:10:12 2006 +0100"
      },
      "message": "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers\n\nMaintain a per-CPU global \"struct pt_regs *\" variable which can be used instead\nof passing regs around manually through all ~1800 interrupt handlers in the\nLinux kernel.\n\nThe regs pointer is used in few places, but it potentially costs both stack\nspace and code to pass it around.  On the FRV arch, removing the regs parameter\nfrom all the genirq function results in a 20% speed up of the IRQ exit path\n(ie: from leaving timer_interrupt() to leaving do_IRQ()).\n\nWhere appropriate, an arch may override the generic storage facility and do\nsomething different with the variable.  On FRV, for instance, the address is\nmaintained in GR28 at all times inside the kernel as part of general exception\nhandling.\n\nHaving looked over the code, it appears that the parameter may be handed down\nthrough up to twenty or so layers of functions.  Consider a USB character\ndevice attached to a USB hub, attached to a USB controller that posts its\ninterrupts through a cascaded auxiliary interrupt controller.  A character\ndevice driver may want to pass regs to the sysrq handler through the input\nlayer which adds another few layers of parameter passing.\n\nI\u0027ve build this code with allyesconfig for x86_64 and i386.  I\u0027ve runtested the\nmain part of the code on FRV and i386, though I can\u0027t test most of the drivers.\nI\u0027ve also done partial conversion for powerpc and MIPS - these at least compile\nwith minimal configurations.\n\nThis will affect all archs.  Mostly the changes should be relatively easy.\nTake do_IRQ(), store the regs pointer at the beginning, saving the old one:\n\n\tstruct pt_regs *old_regs \u003d set_irq_regs(regs);\n\nAnd put the old one back at the end:\n\n\tset_irq_regs(old_regs);\n\nDon\u0027t pass regs through to generic_handle_irq() or __do_IRQ().\n\nIn timer_interrupt(), this sort of change will be necessary:\n\n\t-\tupdate_process_times(user_mode(regs));\n\t-\tprofile_tick(CPU_PROFILING, regs);\n\t+\tupdate_process_times(user_mode(get_irq_regs()));\n\t+\tprofile_tick(CPU_PROFILING);\n\nI\u0027d like to move update_process_times()\u0027s use of get_irq_regs() into itself,\nexcept that i386, alone of the archs, uses something other than user_mode().\n\nSome notes on the interrupt handling in the drivers:\n\n (*) input_dev() is now gone entirely.  The regs pointer is no longer stored in\n     the input_dev struct.\n\n (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking.  It does\n     something different depending on whether it\u0027s been supplied with a regs\n     pointer or not.\n\n (*) Various IRQ handler function pointers have been moved to type\n     irq_handler_t.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)\n"
    },
    {
      "commit": "038b0a6d8d32db934bba6a24e74e76e4e327a94f",
      "tree": "5fbeb3e8f140e20f8ce0e33e12b32ec5b0724cd6",
      "parents": [
        "78b656b8bf933101b42409b4492734b23427bfc3"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Oct 04 03:38:54 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Oct 04 03:38:54 2006 -0400"
      },
      "message": "Remove all inclusions of \u003clinux/config.h\u003e\nkbuild explicitly includes this at build time.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "a3b05e8f58c95dfccbf2c824d0c68e5990571f24",
      "tree": "768aad0f032790df38b277eff062c47b6ecff533",
      "parents": [
        "1ea25ecb7256978947c258f08a30c878eebe9edb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jul 28 09:36:46 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:29:38 2006 +0200"
      },
      "message": "[PATCH] Kill various deprecated/unused block layer defines/functions\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "cccedb1a4af9e96781f206acad638c05364e73ca",
      "tree": "900c1262877291f2d7c8d8ec3963ee05ea668966",
      "parents": [
        "60198f9992db1e36d5b4cc1526ff29550f7d002c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jul 14 00:24:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 14 21:53:53 2006 -0700"
      },
      "message": "[PATCH] drivers/block/cpqarray.c: remove an unused variable\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Mike Miller \u003cmike.miller@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69ab3912d1b4dbf27ea1a383cb5731251fc0e109",
      "tree": "d0e68c828d8f49483d4bfaccbe4d98c1b339ee94",
      "parents": [
        "3cca53b02a5bab0f407b1add2f84c22c20243a79"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 01 19:29:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 13:58:49 2006 -0700"
      },
      "message": "[PATCH] irq-flags: drivers/block Use the new IRQF_ constants\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce7b0f46bbf4bff8daab2dd3d878b9e72a623d09",
      "tree": "7a860cf52fbf1ff768197702af60a8329d296dff",
      "parents": [
        "96192ff1a9d0c6ef365d21667080259d83ea2f5b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n\nAnd remove the now unneeded number field.\nAlso fixes all drivers that set these fields.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ff23eca3e8f613034e0d20ff86f6a89b62f5a14e",
      "tree": "826285f5daa660001d38cac6baaf34411fd40131",
      "parents": [
        "8ab5e4c15b53e147c08031a959d9f776823dbe73"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:08 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree\n\nAlso fixes up all files that #include it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8ab5e4c15b53e147c08031a959d9f776823dbe73",
      "tree": "b851d4c1fdbd396379279e4475f7f778a667a208",
      "parents": [
        "7c69ef79741910883d5543caafa06aca3ebadbd1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:07 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove devfs_remove() function from the kernel tree\n\nRemoves the devfs_remove() function and all callers of it.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bc64863814b14a4f75884746e68d3bf9f96b3559",
      "tree": "4f44a0690231ee9bd98a200fdf0c25f17bcb2095",
      "parents": [
        "dbe217af3be08346f4b1abb885c2d9ec29c98fac"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sun Jun 25 05:47:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:06 2006 -0700"
      },
      "message": "[PATCH] cpqarray section fix\n\nWARNING: drivers/block/cpqarray.o - Section mismatch: reference to .init.text: from .text between \u0027cpqarray_register_ctlr\u0027 (at offset 0xe98) and \u0027alloc_cpqarray_hba\u0027\nWARNING: drivers/block/cpqarray.o - Section mismatch: reference to .init.text: from .text between \u0027cpqarray_register_ctlr\u0027 (at offset 0xe9c) and \u0027alloc_cpqarray_hba\u0027\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0f41a53a6699209216327cd4b506711610ad24c5",
      "tree": "8f10fa4f404053e2bd4cb057fb4d2797c27d8d5a",
      "parents": [
        "8bd0b97e95d378df57938d4773ad674194278ac1"
      ],
      "author": {
        "name": "Matt Mackall",
        "email": "mpm@selenic.com",
        "time": "Sun Jun 25 05:47:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:00 2006 -0700"
      },
      "message": "[PATCH] random: change cpqarray to use add_disk_randomness\n\nDisk devices should use add_disk_randomness rather than SA_SAMPLE_RANDOM\n\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: \u003cmike.miller@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "089fe1b23da5468bbf02b721472f71f349837a7d",
      "tree": "c5b385dff1ca5dc259e9ec08c0a7392947ae3818",
      "parents": [
        "817dd6eed4bf40fa14d1e96ac4905efebd5e03f2"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Fri Mar 24 18:50:27 2006 +0100"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 24 18:50:27 2006 +0100"
      },
      "message": "BUG_ON() Conversion in drivers/block/\n\nthis changes if() BUG(); constructs to BUG_ON() which is\ncleaner, contains unlikely() and can better optimized away.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "945f390f02ce44a13aefc6d9449c99f33c9286a5",
      "tree": "be5685ed17677b4c076b69e7d4d77eae4cbe718c",
      "parents": [
        "ef9ceab28203690a42d7d3915ccf6e208f0762bc"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Sun Jan 08 01:05:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:14:08 2006 -0800"
      },
      "message": "[PATCH] drivers/block: Use ARRAY_SIZE macro\n\nUse ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove a\nduplicate of ARRAY_SIZE. Some trailing whitespaces are also removed.\n\ndrivers/block/acsi* has been left out as it\u0027s marked BROKEN.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a885c8c4316e1c1d2d2c8755da3f3d14f852528d",
      "tree": "e4f4e7a7657c0944d11c259f8f17ffcd6b2da0f5",
      "parents": [
        "5b0ed2c64d8fdafb5fcfb3baabdd288628b1ff9b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Jan 08 01:02:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jan 08 20:13:54 2006 -0800"
      },
      "message": "[PATCH] Add block_device_operations.getgeo block device method\n\nHDIO_GETGEO is implemented in most block drivers, and all of them have to\nduplicate the code to copy the structure to userspace, as well as getting\nthe start sector.  This patch moves that to common code [1] and adds a\n-\u003egetgeo method to fill out the raw kernel hd_geometry structure.  For many\ndrivers this means -\u003eioctl can go away now.\n\n[1] the s390 block drivers are odd in this respect.  xpram sets -\u003estart\n    to 4 always which seems more than odd, and the dasd driver shifts\n    the start offset around, probably because of it\u0027s non-standard\n    sector size.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: \u003cmike.miller@hp.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8ffdc6550c47f75ca4e6c9f30a2a89063e035cf2",
      "tree": "a478b9acef5c66242a964154f7ad3a0ea750ef0f",
      "parents": [
        "64100099ed22f71cce656c5c2caecf5c9cf255dc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:49:03 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:49:03 2006 +0100"
      },
      "message": "[BLOCK] add @uptodate to end_that_request_last() and @error to rq_end_io_fn()\n\nadd @uptodate argument to end_that_request_last() and @error\nto rq_end_io_fn().  there\u0027s no generic way to pass error code\nto request completion function, making generic error handling\nof non-fs request difficult (rq-\u003eerrors is driver-specific and\neach driver uses it differently).  this patch adds @uptodate\nto end_that_request_last() and @error to rq_end_io_fn().\n\nfor fs requests, this doesn\u0027t really matter, so just using the\nsame uptodate argument used in the last call to\nend_that_request_first() should suffice.  imho, this can also\nhelp the generic command-carrying request jens is working on.\n\nSigned-off-by: tejun heo \u003chtejun@gmail.com\u003e\nSigned-Off-By: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
