)]}'
{
  "log": [
    {
      "commit": "395d8ef5bebe547a80737692f9789d2e36da16f2",
      "tree": "dc0ef3062f1377137ce1f60fa14f7e7ea20ee372",
      "parents": [
        "8e882ba111bb52fbb42c34a265afb97ddd4fcea1"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Feb 11 00:32:14 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Feb 11 00:32:14 2008 +0100"
      },
      "message": "ide-disk: fix flush requests (take 2)\n\ncommit 813a0eb233ee67d7166241a8b389b6a76f2247f9\nAuthor: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nDate:   Fri Jan 25 22:17:10 2008 +0100\n\n    ide: switch idedisk_prepare_flush() to use REQ_TYPE_ATA_TASKFILE requests\n\n...\n\nbroke flush requests.\n\nAllocating IDE command structure on the stack for flush requests is not\na very brilliant idea:\n\n- idedisk_prepare_flush() only prepares the request and it doesn\u0027t wait\n  for it to be completed\n\n- there are can be multiple flush requests queued in the queue\n\nFix the problem (per hints from James Bottomley) by:\n- dynamically allocating ide_task_t instance using kmalloc(..., GFP_ATOMIC)\n- adding new taskfile flag (IDE_TFLAG_DYN)\n- calling kfree() in ide_end_drive_command() if IDE_TFLAG_DYN is set\n  (while at it rename \u0027args\u0027 to \u0027task\u0027 and fix whitespace damage)\n\n[ This will be fixed properly before 2.6.25 but this bug is rather\n  critical and the proper solution requires some more work + testing. ]\n\nThanks to Sebastian Siewior and Christoph Hellwig for reporting the\nproblem and testing patches (extra thanks to Sebastian for bisecting\nit to the guilty commmit).\n\nTested-by: Sebastian Siewior \u003cide-bug@ml.breakpoint.cc\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "3b0e044d5a881c937293a045158149514b86783c",
      "tree": "bdd78f0e2e7774d72f04862641e67f1421b90553",
      "parents": [
        "0eccf60bfa9190d1588b2bf07d23d7b9b3a19d9e"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Mon Feb 11 00:32:11 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Feb 11 00:32:11 2008 +0100"
      },
      "message": "ide: another possible ide panic fix for blk-end-request\n\nI have reviewed all blk-end-request patches again to confirm whether\nthere are any similar problems with the last week\u0027s ide-cd panic:\n    http://lkml.org/lkml/2008/1/29/140\n\nAnd I found a possible similar bug in ide-io change:\nide_end_drive_cmd() could be called for blk_pc_request() which could\nhave bios.  To complete such requests correctly, we need to pass\nthe actual size of the request.\nOtherwise, __blk_end_request() returns 1 because the request still has\nbios, and the system will BUG() unnecessarily.\n\nThe following patch fixes the bug and should be applied on top of\nLinus\u0027 git.\n\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\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "64a57fe4393bae920d03c253173f59d8a7ec8e25",
      "tree": "bfbac6fa370401d519a6fd9433a330dd55efe68d",
      "parents": [
        "c47137a99c597330b69057158b26061a360c0e09"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "message": "ide: add ide_read_error() inline helper\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "c47137a99c597330b69057158b26061a360c0e09",
      "tree": "aacd4cb968b8d7bdebdcbcce19f110469a977243",
      "parents": [
        "29dd59755a849cc6475faa6a75f3b804e23a6fc2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "message": "ide: add ide_read_[alt]status() inline helpers\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "425afb61032a245f53320b7efa0f0dfd7a23f87f",
      "tree": "a529125e82489111a286ada3c456cfffcd6acbe3",
      "parents": [
        "2be564b03483e57dc0efbd91d91393665caa5aa4"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Feb 01 23:09:31 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Feb 01 23:09:31 2008 +0100"
      },
      "message": "ide: fix ide_intr() for non-PCI devices and CONFIG_BLK_DEV_IDEPCI\u003dy\n\n\u0027hwif-\u003epci_dev \u0026\u0026 !hwif-\u003epci_dev-\u003evendor\u0027 condition is never true,\ncheck for \u0027hwif-\u003echipset !\u003d ide_pci\u0027 instead.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5e36bb6ee8d5ff6c6114b60d2aaa1c70d4275f4e",
      "tree": "19d7cca04195c9b9952262cae852edf662702e4c",
      "parents": [
        "ea6f06f416347448645e60294d92c0c19aba8589"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Mon Jan 28 10:34:20 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Jan 28 10:37:02 2008 +0100"
      },
      "message": "blk_end_request: changing ide normal caller (take 4)\n\nThis patch converts \"normal\" parts of ide to use blk_end_request\ninterfaces.  Related \u0027uptodate\u0027 arguments are converted to \u0027error\u0027.\n\nThe conversion of \u0027uptodate\u0027 to \u0027error\u0027 is done only for the internal\nfunction, __ide_end_request().\nide_end_request() was not changed since it\u0027s exported and used\nby many ide drivers.\n\nWith this patch, blkdev_dequeue_request() in __ide_end_request() is\nmoved to blk_end_request, since blk_end_request takes care of\ndequeueing request like below:\n\n\tif (!list_empty(\u0026rq-\u003equeuelist))\n\t\tblkdev_dequeue_request(rq);\n\nIn the case of ide,\n  o \u0027dequeue\u0027 variable of __ide_end_request() is 1 only when the request\n    is still linked to the queue (i.e. rq-\u003equeuelist is not empty)\n  o \u0027dequeue\u0027 variable of __ide_end_request() is 0 only when the request\n    has already been removed from the queue (i.e. rq-\u003equeuelist is empty)\nSo blk_end_request can handle it correctly although ide always run\nthought the code above.\n\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.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": "7267c3377443322588cddaf457cf106839a60463",
      "tree": "5471cd70b6275999500103f0a6b49bbc5557c692",
      "parents": [
        "5a9e77af970f14a94482a6d4dca5c48efb70deb2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:13 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:13 2008 +0100"
      },
      "message": "ide: remove REQ_TYPE_ATA_CMD\n\nBased on the earlier work by Tejun Heo.\n\nAll users are gone so we can finally remove it.\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "0455fcc821e87d362f2047922c59c0f378a122b5",
      "tree": "34e50ace5cbe95378234c859032a3f47e4a7b183",
      "parents": [
        "4d977e43d8ae758434e603cf2455d955f71c77c4"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:12 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:12 2008 +0100"
      },
      "message": "ide: fix final status check in drive_cmd_intr()\n\nDon\u0027t check for READY_STAT bit being set for PIO-in protocol (makes the\nfinal status check in drive_cmd_intr() match the one in task_in_intr()).\n\nAlso fix function name reported by ide_error() call while at it.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "4d977e43d8ae758434e603cf2455d955f71c77c4",
      "tree": "ef8f0922ba6e75d270d111dc78b3644321cb6c11",
      "parents": [
        "18a056feccabdfa9764016a615121b194828bc72"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:12 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:12 2008 +0100"
      },
      "message": "ide: check BUSY and ERROR status bits before reading data in drive_cmd_intr()\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "18a056feccabdfa9764016a615121b194828bc72",
      "tree": "498c07b229e9a6965613484041b30db61f6ef132",
      "parents": [
        "852738f39258deafb3d89c187cb1a4050820d555"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:12 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:12 2008 +0100"
      },
      "message": "ide: don\u0027t enable local IRQs for PIO-in in driver_cmd_intr() (take 2)\n\nDon\u0027t enable local IRQs for PIO-in protocol in driver_cmd_intr().\n\nWhile at it:\n\n* Remove redundant rq-\u003ecmd_type check.\n\n* Read status register after enabling local IRQs for no-data protocol.\n\nv2:\n* Re-add DRQ\u003d1 check lost in v1 (noticed by Sergei).\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "145b75e9aedbe36c55e45da8564dcd0814bdd89e",
      "tree": "2bf27bb6657b28d12404de416276bca1c2ba52a4",
      "parents": [
        "2624565caacedd740fce7803fe2c162842aa5df4"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:11 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:11 2008 +0100"
      },
      "message": "ide: initialize rq-\u003ecmd_type in ide_init_drive_cmd() callers\n\n* Initialize rq-\u003ecmd_type in ide_wait_cmd(), ide_cmd_ioctl() and\n  set_pio_mode() (other callers were aleady over-riding rq-\u003ecmd_type).\n\n* Remove no longer needed rq-\u003ecmd_type setup from ide_init_drive_cmd().\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "2624565caacedd740fce7803fe2c162842aa5df4",
      "tree": "fe177bad8d72bfefa138a3abd7f8c7b92f549169",
      "parents": [
        "4906f3b4cddc3e4d62955ed386598561f95602c0"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:11 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:11 2008 +0100"
      },
      "message": "ide: use wait_drive_not_busy() in drive_cmd_intr() (take 2)\n\nUse wait_drive_not_busy() in drive_cmd_intr().\n\nv2:\n* Fix wait_drive_not_busy() comment (noticed by Sergei).\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "657cc1a8f6cd6a9e2974cba3af9fccd8c25e06ad",
      "tree": "4f1542ec2738993193ac4c02cba78aa4ed981f80",
      "parents": [
        "3687221f28058c40e2c57a286decd0caeac67382"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:10 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:10 2008 +0100"
      },
      "message": "ide: set IDE_TFLAG_IN_* flags before queuing/executing command\n\n* Add IDE_TFLAG_{HOB,TF,DEVICE} defines.\n\n* Set IDE_TFLAG_IN_* flags in {do_rw,ide_no_data,ide_raw}_taskfile() users.\n\n* Remove no longer needed -\u003etf_flags setup from ide_end_drive_cmd().\n\nThere should be no functionality changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "49c746ee6cc791202172483277a249c12ba437d8",
      "tree": "db6e95d642c571712e9806396b23279ecb992b21",
      "parents": [
        "35cf2b94d0ecb7034cfa05dd725721538bbb83fc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:10 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:10 2008 +0100"
      },
      "message": "ide: clear HOB bit for REQ_TYPE_ATA_CMD requests in ide_end_drive_cmd()\n\nide_dump_status() may set HOB bit before ide_end_drive_cmd() is called.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "81ca691981da718727281238b435dcf1528d2fda",
      "tree": "4c4845a77d94fe91bd7d1345bf9d992852b8d572",
      "parents": [
        "4f52a32994f9e05fb8ae1a9ba3f20cd0b55145b7"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:08 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:08 2008 +0100"
      },
      "message": "ide: add ide_set_irq() inline helper\n\nThere should be no functionality changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "15ce926ada545cb078711bd9a18c083c93fa01d7",
      "tree": "9496cda87cae6ef3390c5f350741ad75418dfe8d",
      "parents": [
        "f37aaf9edeba3f4ae10d22aefc09c06af9ea39b6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:03 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:03 2008 +0100"
      },
      "message": "ide: merge -\u003edma_host_{on,off} methods into -\u003edma_host_set method\n\nMerge -\u003edma_host_{on,off} methods into -\u003edma_host_set method\nwhich takes \u0027int on\u0027 argument.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "4a546e046d562bcd389149591fa5a534c8f832ca",
      "tree": "ffc5c7bd088a0bf74744721b9cfcf18220a75fdf",
      "parents": [
        "378f577f7f75aa18a0eeafb044a491dcd5aeaa3d"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:01 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jan 26 20:13:01 2008 +0100"
      },
      "message": "ide: remove -\u003eide_dma_on and -\u003edma_off_quietly methods from ide_hwif_t\n\n* Make ide_dma_off_quietly() and __ide_dma_on() always available.\n\n* Drop \"__\" prefix from __ide_dma_on().\n\n* Check for presence of -\u003edma_host_on instead of -\u003eide_dma_on.\n\n* Convert all users of -\u003eide_dma_on and -\u003edma_off_quietly methods\n  to use ide_dma_on() and ide_dma_off_quietly() instead.\n\n* Remove no longer needed -\u003eide_dma_on and -\u003edma_off_quietly methods\n  from ide_hwif_t.\n\n* Make ide_dma_on() void.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "7b905994ce0bd332afc5ebc30ce9afa60d23c6e2",
      "tree": "4f0f25616d816087e0022dce95f996c99c8dcc6e",
      "parents": [
        "23b1bd459c9e8a925381960f0b69ac85468c3af1"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:19 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:19 2008 +0100"
      },
      "message": "ide: cleanup ide_set_dma()\n\n* -\u003edma_off_quietly is always called before ide_set_dma()\n  so the call can be moved inside ide_set_dma().\n\n* ide_dma_check() doesn\u0027t touch hardware so -\u003edma_off_quietly\n  call for \u0027rc \u003d\u003d -1\u0027 case is redundant, remove it.\n\n* \u00270\u0027 and \u0027-1\u0027 are the only values returned by ide_dma_check()\n  so remove dead code for other cases.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "c2b57cdc1d2976444d451a2a2e43e11b61ed0638",
      "tree": "f322e4d494d9688afd319fbe88afd6a526bb0154",
      "parents": [
        "d32444771b154c3ec37ebf6439004653560c2411"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:17 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:17 2008 +0100"
      },
      "message": "ide: add ide_tf_read() helper\n\n* Factor out code reading taskfile registers from ide_end_drive_cmd()\n  to the new ide_tf_read() helper.\n\n* Add IDE_TFLAG_IN_* taskfile flags to indicate the need to load\n  particular IDE taskfile register in ide_tf_read().\n\n* Update ide_end_drive_cmd() to set respective IDE_TFLAG_IN_* taksfile flags.\n\n* Add ide_get_lba_addr() for getting LBA sector address from taskfile struct.\n\n* Factor out code getting sector address from ide_dump_ata_status()\n  to the new ide_dump_sector() function.\n\n* Convert ide_dump_sector() to use ide_tf_read() and ide_get_lba_addr().\n\n* Remove no longer needed ide_read_24().\n\nThe only change in functionality caused by this patch is that\nide_dump_ata_status() no longer prints \"high\"/\"low\" parts of LBA48\nsector address (of course LBA48 sector address is still printed).\n\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "57d7366b78b74a9eef873e8212c03d8c2033a764",
      "tree": "5b3cefe3c08e765bf83050ddaf21e98b15f7949d",
      "parents": [
        "1192e528e064ebb9a578219731d2b0f78ca3c1ec"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:16 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:16 2008 +0100"
      },
      "message": "ide: remove \u0027handler\u0027 field from ide_task_t (take 2)\n\n* Add IDE_TFLAG_CUSTOM_HANDLER taskfile flag and use it for internal requests\n  which require custom handlers.  Check the flag in do_rw_taskfile() and set\n  handler accordingly.\n\n* Cleanup ide_init_{specify,restore,setmult}_cmd() and rename it to\n  ide_tf_set_{specify,restore,setmult}_cmd().\n\n* Make {set_geometry,recal,set_multmode}_intr() static.\n\n* Remove no longer needed \u0027handler\u0027 field from ide_task_t.\n\nv2:\n* \u0027handler\u0027 in do_rw_taskfile() must be set to NULL initially.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1192e528e064ebb9a578219731d2b0f78ca3c1ec",
      "tree": "d220412f152337618cbb19dac35c98016258e9b8",
      "parents": [
        "10d90157c83d4b6743c9063c36f9e7f27aa254b6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:16 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:16 2008 +0100"
      },
      "message": "ide: use -\u003edata_phase to set -\u003ehandler in do_rw_taskfile()\n\n* Use -\u003edata_phase to set -\u003ehandler in do_rw_taskfile() instead of\n  setting -\u003ehandler in callers of ide_raw_taskfile()/do_rw_taskfile().\n\n* Unexport task_no_data_intr() and make it static.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1edee60e9d994f2b9a79b1333be39790683541fe",
      "tree": "f180358d478d5f9366267afd8c9ff2104a2cb930",
      "parents": [
        "a7bbd20b50fb12b3a604c396b3d8a3449a43edcc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:15 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:15 2008 +0100"
      },
      "message": "ide: merge flagged_taskfile() into do_rw_taskfile()\n\nBased on the earlier work by Tejun Heo.\n\ntask-\u003edata_phase \u003d\u003d TASKFILE_MULTI_{IN,OUT} vs drive-\u003emult_count \u003d\u003d 0\ncheck is needed also for ide_taskfile_ioctl() requests that don\u0027t have\nIDE_TFLAG_FLAGGED taskfile flag set.\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "866e2ec9ce525de0e7c10d02ead8d85af27adffd",
      "tree": "a8bdbcd6405bc9eb5aecaeb68fdcf899e205401c",
      "parents": [
        "ac026ff254b32915bb14ba97a23b4019d137f181"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:14 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:14 2008 +0100"
      },
      "message": "ide: remove \u0027tf_in_flags\u0027 field from ide_task_t\n\n* Add IDE_TFLAG_IN_DATA taskfile flag to indicate the need of reading\n  IDE_DATA_REG in ide_end_drive_cmd().\n\n  Set the new flag in ide_taskfile_ioctl() if -\u003ein_flags.b.data is set.\n\n* Add IDE_TFLAG_FLAGGED_SET_IN_FLAGS taskfile flag to indicate the\n  need of modifying -\u003ein_flags in ide_taskfile_ioctl().\n\n  Set the new flag in flagged_taskfile() and move the code modifying\n  -\u003etf_in_flags to ide_taskfile_ioctl().\n\n  While at it remove the bogus comment: -\u003etf_in_flags (except .b.data)\n  have no effect on selection of registers to read.\n\n* Remove no longer needed \u0027tf_in_flags\u0027 field from ide_task_t.\n\nAs the result we finally have the internals of HDIO_DRIVE_TASKFILE ioctl\nseparated from the core IDE code.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ac026ff254b32915bb14ba97a23b4019d137f181",
      "tree": "ab5687be210c4016d16fae7a8e51bfc1c41c4c42",
      "parents": [
        "7299a3918442dc9a5abb71b9f65b1dd17637c8c0"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:14 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:14 2008 +0100"
      },
      "message": "ide: remove \u0027command_type\u0027 field from ide_task_t\n\n* Add \u0027data_buf\u0027 and \u0027nsect\u0027 variables in ide_taskfile_ioctl()\n  to cache data buffer pointer and number of sectors to transfer\n  (this allows us to have only one ide_diag_taskfile() call).\n\n* Add IDE_TFLAG_WRITE taskfile flag and use it to check whether\n  the REQ_RW request flag should be set.\n\n* Move -\u003ecommand_type handling from ide_diag_taskfile() to\n  ide_taskfile_ioctl() and use -\u003ereq_cmd instead of -\u003ecommand_type.\n\n* Add \u0027nsect\u0027 parameter to ide_raw_taskfile().\n\n* Merge ide_diag_taskfile() into ide_raw_taskfile().\n\n* Initialize -\u003edata_phase explicitly in idedisk_prepare_flush(),\n  ide_start_power_step() and ide_disk_special().\n\n* Remove no longer needed \u0027command_type\u0027 field from ide_task_t.\n\n* Add #ifndef/#endif __KERNEL__ to \u003clinux/hdreg.h\u003e around no\n  longer used by kernel IDE_DRIVE_TASK_* and TASKFILE_* defines.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "7299a3918442dc9a5abb71b9f65b1dd17637c8c0",
      "tree": "50ace6bed3d1cc73a184270743d5c5d46ab4f2c7",
      "parents": [
        "f919790f8c929ab1b392ad1a0c2e1b53337b5071"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:14 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:14 2008 +0100"
      },
      "message": "ide: remove hwif-\u003eintrproc\n\nGiven that:\n\n* hpt366.c::hpt3xx_intrproc() is the only user of hwif-\u003eintrproc\n\n* hpt366.c::hpt3xx_quirkproc() sets drive-\u003equirk_list to 1 for quirky drives\n  which is a value unique to hpt366 host driver\n\nwe can remove hwif-\u003eintproc and just check for drive-\u003equirk_list \u003d\u003d 1\nin ide_do_request().\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "f919790f8c929ab1b392ad1a0c2e1b53337b5071",
      "tree": "3b81af4512e5e4232af74f1bb1df6ede9a19a5fb",
      "parents": [
        "cd3dbc99da337f2130f3cb2691fbb65c8bf22337"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:13 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:13 2008 +0100"
      },
      "message": "ide: remove SELECT_INTERRUPT()\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "2fc573881957337c4ea1c84b92d2f27d076cad57",
      "tree": "790726063934a7ea8c384f2314d44bc03b22f779",
      "parents": [
        "932aead6d21b631b2058255981824008a6eae32e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:13 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:13 2008 +0100"
      },
      "message": "ide: add ide_pktcmd_tf_load() helper\n\nAdd ide_pktcmd_tf_load() helper and convert ATAPI device drivers to use it.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "29ed2a5f8c4380959f18e9cbaff13bc61e09889c",
      "tree": "a248e118820c47d8286808643d42fcecd72e978e",
      "parents": [
        "14b89ef9814614f18a1fcae51e601e7e16a82ef7"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:11 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:11 2008 +0100"
      },
      "message": "ide: remove REQ_TYPE_ATA_TASK\n\nBased on the earlier work by Tejun Heo.\n\nAll users are gone so we can finally remove it.\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1f2564b8b56b305ab9acf5d387abca950180dff6",
      "tree": "b0c939c2e1856fefe421bf0539168f72441e325d",
      "parents": [
        "a3bbb9d882dc94fe3a1361596ab9ce55d84059ea"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "message": "ide: extend timeout for REQ_TYPE_ATA_{CMD,TASK} requests\n\nExtend timeout for REQ_TYPE_ATA_{CMD,TASK} requests from WAIT_CMD (10sec)\nto WAIT_WORSTCASE (30sec, already used for REQ_TYPE_ATA_TASKFILE).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "a3bbb9d882dc94fe3a1361596ab9ce55d84059ea",
      "tree": "b2b7af290b6300be00a2cbd6c5d0dba19905dc65",
      "parents": [
        "868e672ac8db650dde695a5707a6caf5a757e7d9"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "message": "ide: remove unnecessary writes to HOB taskfile registers\n\n* Set taskfile flags for REQ_TYPE_ATA_TASKFILE requests before\n  adding the request to the queue.\n\n* Cleanup execute_drive_cmd().\n\n* Remove unnecessary writes to HOB taskfile registers when using\n  LBA48 disk for the following cases:\n\n  - Power Management requests\n    (WIN_FLUSH_CACHE[_EXT], WIN_STANDBYNOW1, WIN_IDLEIMMEDIATE commands)\n\n  - special commands (WIN_SPECIFY, WIN_RESTORE, WIN_SETMULT)\n\n  - Host Protected Area support (WIN_READ_NATIVE_MAX, WIN_SET_MAX)\n\n  - /proc/ide/ SMART support (WIN_SMART with SMART_ENABLE,\n    SMART_READ_VALUES and SMART_READ_THRESHOLDS subcommands)\n\n  - write cache enabling/disabling in ide-disk\n    (WIN_SETFEATURES with SETFEATURES_{EN,DIS}_WCACHE)\n\n  - write cache flushing in ide-disk (WIN_FLUSH_CACHE[_EXT])\n\n  - acoustic management in ide-disk\n    (WIN_SETFEATURES with SETFEATURES_{EN,DIS}_AAM)\n\n  - door (un)locking in ide-disk (WIN_DOORLOCK, WIN_DOORUNLOCK)\n\n  - /proc/ide/hd?/identify support (WIN_IDENTIFY)\n\n  - ACPI _GTF taskfiles\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "868e672ac8db650dde695a5707a6caf5a757e7d9",
      "tree": "90163ca8ef773fd4147e31da7de70e2e2b6acd37",
      "parents": [
        "807e35d695690011faa1ce3ad67dfc23c1e39bdc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "message": "ide: use IDE_TFLAG_LBA48 for REQ_TYPE_ATA_TASKFILE requests\n\n* Use IDE_TFLAG_LBA48 for REQ_TYPE_ATA_TASKFILE requests in ide_end_drive_cmd()\n  to decide whether we need to read HOB taskfile registers.\n\n* Update execute_drive_cmd() accordingly.\n\nThis is a preparation for the next patch which removes unnecessary writes to\nHOB taskfile registers for some ATA commands.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "807e35d695690011faa1ce3ad67dfc23c1e39bdc",
      "tree": "4b9b8328ea27896ea6050a90949d79f6e158d573",
      "parents": [
        "54688aa372cbc83c4361bfb9236f9bfe02168e19"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:10 2008 +0100"
      },
      "message": "ide: use ide_tf_load() in execute_drive_cmd()\n\n* Add IDE_TFLAG_OUT_DEVICE taskfile flag to indicate the need of writing\n  the Device register and handle it in ide_tf_load().\n\n  Update ide_tf_load() and {do_rw,flagged}_taskfile() users accordingly.\n\n* Use struct ide_taskfile and ide_tf_load() in execute_drive_cmd().\n\n* Make the debugging code dump all taskfile registers for both\n  REQ_ATA_TYPE_{CMD,TASK} requests and move it to ide_tf_load()\n  so it also covers REQ_ATA_TYPE_TASKFILE requests.\n\nThere should be no functionality changes caused by this patch\n(unless DEBUG is defined).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "54688aa372cbc83c4361bfb9236f9bfe02168e19",
      "tree": "35f17f7e5431823e784ae61722742bc6d122d479",
      "parents": [
        "21d535c91362a1a3bbb299b2e7214c1a6971ef95"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "message": "ide: remove ide_cmd() helper\n\n* Remove ide_cmd() helper.\n\n* Clear nIEN and call SELECT_MASK() before writing taskfile registers.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "21d535c91362a1a3bbb299b2e7214c1a6971ef95",
      "tree": "0f9cd3b473caec8d926770ba565b2e8261c289bd",
      "parents": [
        "6dd87233bccc6416dac3b78ac912fd017918efe6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "message": "ide: execute_drive_cmd() cleanup\n\n* Rename \u0027args\u0027 variable in \u0027if (rq-\u003ecmd_type \u003d\u003d REQ_TYPE_ATA_TASKFILE)\u0027\n  block to \u0027task\u0027.\n\n* execute_drive_cmd() is used only for REQ_TYPE_ATA_{CMD,TASK,TASKFILE} so\n  we can move the common code out from \u0027if (rq-\u003ecmd_type \u003d\u003d REQ_TYPE_ATA_CMD)\u0027\n  and \u0027if (rq-\u003ecmd_type \u003d\u003d REQ_TYPE_ATA_TASK)\u0027 blocks.\n\nThere should be no functionality changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6dd87233bccc6416dac3b78ac912fd017918efe6",
      "tree": "6d36a6288c863afb3ba34fc8c62ee6a3a3086954",
      "parents": [
        "46f26c362d5109459f04f99e93fc0413d88516c8"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "message": "ide: fix registers loading order for IDE_NSECTOR_REG in execute_drive_cmd()\n\nMove loading of IDE_NSECTOR_REG from ide_cmd() to execute_drive_cmd()\n(load the IDE_NSECTOR_REG just after IDE_FEATURE_REG).\n\nThis also allows us to drop \u0027nsect\u0027 argument from ide_cmd() and simplify\nexecute_drive_cmd() code for REQ_TYPE_ATA_CMD case a bit.\n\nIt shouldn\u0027t affect anything (just a usual paranoia to separate changes\nwhich change the way in which hardware is accessed from code cleanups).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "46f26c362d5109459f04f99e93fc0413d88516c8",
      "tree": "85587fec4a44c7bd6bdef3244edc8237821ab7c6",
      "parents": [
        "d3bb03438c58b2a00f07a59175d4156a9952d825"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:09 2008 +0100"
      },
      "message": "ide: fix registers loading order for WIN_SMART in execute_drive_cmd()\n\nFix registers loading order for REQ_TYPE_ATA_CMD request with WIN_SMART\ncommand in execute_drive_cmd() (load IDE_FEATURE_REG and IDE_SECTOR_REG\nbefore loading IDE_LCYL_REG and IDE_HCYL_REG).\n\nIt shouldn\u0027t affect anything (just a usual paranoia to separate changes\nwhich change the way in which hardware is accessed from code cleanups).\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "4ee06b7e677da4c75f2fcc5fd850543852d18bf2",
      "tree": "0c7c4b1e2be3179cc25e95f4148577cd9047e398",
      "parents": [
        "f1ca6d37f991347b87d86430db42e2ab139d1b1d"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:08 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:08 2008 +0100"
      },
      "message": "ide: remove stale ide.h \"configuration options\"\n\nRemove stale ide.h \"configuration options\":\n\n* INITIAL_MULT_COUNT - always defined to 0\n\n* SUPPORT_SLOW_DATA_PORTS - unused\n\n* OK_TO_RESET_CONTROLLER - always defined to 1\n\n* DISABLE_IRQ_NOSYNC - always defined to 0\n\nLeave SUPPORT_VLB_SYNC (defined to 0 for CRIS and FRV, otherwise to 1)\nfor now but disallow overriding it by \u003casm/ide.h\u003e.\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "74095a91ed02f6727b62d4416be00a041f2d7436",
      "tree": "033cc52877103739c5b55a2cfdd3bfaf6996d5d3",
      "parents": [
        "9a3c49be5c5f7388eefb712be9a383904140532e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:07 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:07 2008 +0100"
      },
      "message": "ide: use do_rw_taskfile() in flagged_taskfile()\n\nBased on the earlier work by Tejun Heo.\n\n* Move setting IDE_TFLAG_LBA48 taskfile flag from do_rw_taskfile()\n  function to the callers.\n\n* Add IDE_TFLAG_FLAGGED taskfile flag for flagged taskfiles coming\n  from ide_taskfile_ioctl().  Check it instead of -\u003etf_out_flags.all.\n\n* Add IDE_TFLAG_OUT_DATA taskfile flag to indicate the need to load\n  IDE data register in ide_tf_load().\n\n* Add IDE_TFLAG_OUT_* taskfile flags to indicate the need to load\n  particular IDE taskfile registers in ide_tf_load().\n\n* Update do_rw_taskfile() and ide_tf_load() users to set respective\n  IDE_TFLAG_OUT_* taksfile flags.\n\n* Add task_dma_ok() helper.\n\n* Use IDE_TFLAG_FLAGGED taskfile flag to select HIHI mask in ide_tf_load().\n\n* Use do_rw_taskfile() in flagged_taskfile().\n\n* Remove no longer needed \u0027tf_out_flags\u0027 field from ide_task_t.\n\nThere should be no functionality changes caused by this patch.\n\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "650d841d9e053a618dd8ce753422f91b493cf2f6",
      "tree": "70f81acbf856e4a4d8126bdf6d60144b374cc1a9",
      "parents": [
        "cd2a2d969761c26542095c01324201ca0b3ee896"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:06 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:06 2008 +0100"
      },
      "message": "ide: add struct ide_taskfile (take 2)\n\n* Don\u0027t set write-only ide_task_t.hobRegister[6] and ide_task_t.hobRegister[7]\n  in idedisk_set_max_address_ext().\n\n* Add struct ide_taskfile and use it in ide_task_t instead of tfRegister[]\n  and hobRegister[].\n\n* Remove no longer needed IDE_CONTROL_OFFSET_HOB define.\n\n* Add #ifndef/#endif __KERNEL__ around definitions of {task,hob}_struct_t.\n\nWhile at it:\n\n* Use ATA_LBA define for LBA bit (0x40) as suggested by Tejun Heo.\n\nv2:\n* Add missing newlines. (Noticed by Sergei)\n\n* Use ~ATA_LBA instead of 0xBF. (Noticed by Sergei)\n\n* Use unnamed unions for error/feature and status/command.\n  (Suggested by Sergei).\n\nThere should be no functionality changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "b5e1a4e2869af5ffaa102535ad63d184d86e66ec",
      "tree": "4a4c5aa628126c0ef91e7427cc3f7b51c54efa75",
      "parents": [
        "b47711bfbcd4eb77ca61ef0162487b20e023ae55"
      ],
      "author": {
        "name": "Aristeu Rozanski",
        "email": "arozansk@redhat.com",
        "time": "Fri Jan 25 22:17:04 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 25 22:17:04 2008 +0100"
      },
      "message": "ide-io: set REQ_FAILED when drive is dead\n\nCurrently it\u0027s possible to ide-cd to set an incorrect blocksize by\nreading garbage if the drive is dead:\n\nide_cd_probe()\n -\u003e cdrom_read_toc()\n     -\u003e cdrom_read_capacity()\n         -\u003e cdrom_queue_packet_command()\n             -\u003e ide_do_drive_cmd()\n                 -\u003e ide_do_request()\n                     -\u003e start_request()\n\non start_request():\n\n        /* bail early if we\u0027ve exceeded max_failures */\n        if (drive-\u003emax_failures \u0026\u0026 (drive-\u003efailures \u003e drive-\u003emax_failures)) {\n                goto kill_rq;\n        }\n(...)\nkill_rq:\n        ide_kill_rq(drive, rq);\n        return ide_stopped;\n\nide_kill_rq() and the next calls won\u0027t set REQ_FAILED on rq-\u003ecmd_flags and thus\ncdrom_queue_packet_command() won\u0027t return an error. then:\n\n        stat \u003d cdrom_queue_packet_command(drive, \u0026req);\n        if (stat \u003d\u003d 0) {\n                *capacity \u003d 1 + be32_to_cpu(capbuf.lba);\n                *sectors_per_frame \u003d\n                        be32_to_cpu(capbuf.blocklen) \u003e\u003e SECTOR_BITS;\n        }\n\ncdrom_read_capacity() ends believing capbuf is valid but in fact it\u0027s just\nuninitialized data. back to cdrom_read_toc():\n\n        /* Try to get the total cdrom capacity and sector size. */\n        stat \u003d cdrom_read_capacity(drive, \u0026toc-\u003ecapacity, \u0026sectors_per_frame,\n                                   sense);\n        if (stat)\n                toc-\u003ecapacity \u003d 0x1fffff;\n\n        set_capacity(info-\u003edisk, toc-\u003ecapacity * sectors_per_frame);\n        /* Save a private copy of te TOC capacity for error handling */\n        drive-\u003eprobed_capacity \u003d toc-\u003ecapacity * sectors_per_frame;\n\n        blk_queue_hardsect_size(drive-\u003equeue,\n                                sectors_per_frame \u003c\u003c SECTOR_BITS);\n\nthat will set drive-\u003equeue-\u003ehardsect_size to be the random value.\nhardsect_size is used to calculate inode-\u003ei_blkbits. later on, on a read\npath:\n\nvoid create_empty_buffers(struct page *page,\n                        unsigned long blocksize, unsigned long b_state)\n{       \n        struct buffer_head *bh, *head, *tail;\n\n        head \u003d alloc_page_buffers(page, blocksize, 1);\n        bh \u003d head;\n        do {    \n                bh-\u003eb_state |\u003d b_state;\n                tail \u003d bh;\n                bh \u003d bh-\u003eb_this_page;\n        } while (bh);\n        tail-\u003eb_this_page \u003d head;\n\nalloc_page_buffers() will return NULL if blocksize \u003e 4096. blocksize is\ncalculed based on inode-\u003ei_blkbits. that will trigger a null\ndereference on create_empty_buffers().\n\nSigned-off-by: Aristeu Rozanski \u003carozansk@redhat.com\u003e\nCc: Borislav Petkov \u003cbbpetkov@yahoo.de\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ad0e74d3851e440e0882424577bc984c89019f52",
      "tree": "830c53d8d7b5568f2a6d2d21698295ca8c7ce95b",
      "parents": [
        "69ae6fee4f95c0535e49e338ce0ed3b27fd485b5"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Dec 12 23:31:57 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Dec 12 23:31:57 2007 +0100"
      },
      "message": "ide: add missing checks for control register existence\n\nAdd missing checks for control register existence (some legacy m68k specific\nIDE controllers don\u0027t have it).  Also use drive-\u003ectl while at it.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "c1f50cbb06363b36700c0a679a5bd3ddef0a97b6",
      "tree": "2af4adaeed66428cd555020ac3337ccbb6f1bddd",
      "parents": [
        "12eda14f8930ccad0d8b75fecab87b90eecba5fb"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Nov 13 22:09:15 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Nov 13 22:09:15 2007 +0100"
      },
      "message": "ide: use drive-\u003eselect.all for REQ_TYPE_ATA_TASK in execute_drive_cmd()\n\nUse drive-\u003eselect.all for REQ_TYPE_ATA_TASK requests in execute_drive_cmd()\n(the obsolete bits 7 and 5 of the Device register need to be set).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1c11d241115a352a4468a7a4884c22cf68a5c6fd",
      "tree": "51c441ad114e749de3995b8a835311ca48a9e00c",
      "parents": [
        "320112bd28d3c477f6990bfe8762ccb978106a08"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Nov 05 21:42:27 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Nov 05 21:42:27 2007 +0100"
      },
      "message": "ide: clear HOB bit for REQ_TYPE_ATA_TASK requests in ide_end_drive_cmd()\n\nide_dump_ata_status() may set HOB bit before ide_end_drive_cmd() is called.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "320112bd28d3c477f6990bfe8762ccb978106a08",
      "tree": "b0b4236d3284a73c6986dc3dfdbf26eac1dbaf7b",
      "parents": [
        "f7d7f3fd21f06c1f07d1dc9e2cc8a3c43b53faa6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Nov 05 21:42:26 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Nov 05 21:42:26 2007 +0100"
      },
      "message": "ide: check rq-\u003ecmd_type in drive_cmd_intr()\n\ndrive_cmd_intr() is used by both REQ_TYPE_ATA_CMD and REQ_TYPE_ATA_TASK\nbut commands using PIO-in protocol are valid only for REQ_TYPE_ATA_CMD\n(\u0026args[4] in case of REQ_TYPE_ATA_TASK points to a value for IDE_LCYL_REG\nregister instead of the data buffer).  This fix allows REQ_TYPE_ATA_TASK\ncommands to use non-zero values for IDE_SECTOR_REG (args[3]).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "bbc615b16d64643a3d22ab4890fde1a685e86d83",
      "tree": "107c152fecbf99e280f3f1af5090dc695305d74d",
      "parents": [
        "bde07e5eab1351109007bf375349f295977e7f53"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Oct 20 00:32:36 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Oct 20 00:32:36 2007 +0200"
      },
      "message": "ide: use __ide_end_request() in ide_end_dequeued_request()\n\n* Remove dead code for handling IDE TCQ from ide_end_dequeued_request().\n\n* Add \u0027dequeue\u0027 parameter to __ide_end_request().\n\n* Use __ide_end_request() in ide_end_dequeued_request().\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "d393aa0326436efd3cb800916b08cdac4dd1091a",
      "tree": "2fae9665c336a40d9a20a77612cac61daf107dce",
      "parents": [
        "69e88d2a754fcaf7ef8ca465586b811cf40dc479"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Oct 20 00:32:36 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Oct 20 00:32:36 2007 +0200"
      },
      "message": "ide: take ide_lock for prefetch disable/enable in do_special()\n\nTake ide_lock for prefetch disable/enable in do_special(),\nthen cleanup cmd640 and ht6560b host drivers.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1977f032722c27ee3730284582fd3991ad9ac81b",
      "tree": "00ba5692a697a387399131850c56e01345c7cace",
      "parents": [
        "1276b103c20603835d9b903cae099125e8c2c5a3"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Thu Oct 18 23:40:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:41 2007 -0700"
      },
      "message": "remove asm/bitops.h includes\n\nremove asm/bitops.h includes\n\nincluding asm/bitops directly may cause compile errors. don\u0027t include it\nand include linux/bitops instead. next patch will deny including asm header\ndirectly.\n\nCc: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jiri Slaby \u003cjirislaby@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": "ed67b92385a5afddc98d5ff0894b2854c4a54dac",
      "tree": "bb5a72cbc383ffdc759c1c12a18fc5be54df69e2",
      "parents": [
        "40d2dd7ef3df468814a34cd3d31486408e604468"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:10 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 19 00:30:10 2007 +0200"
      },
      "message": "ide: add IDE_HFLAG_ERROR_STOPS_FIFO host flag\n\nAdd IDE_HFLAG_ERROR_STOPS_FIFO host flag and use it instead\nof hwif-\u003eerr_stops_fifo.  As a side-effect this change fixes\nhwif-\u003eerr_stops_fifo not being restored by ide_hwif_restore().\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "0ae2e178652753ae1797d407755a3505f7c1d2a7",
      "tree": "fa725edcfb4b9752ebf2aa49a3e42e158537d4ed",
      "parents": [
        "b8b739d3361c16773a30fe5c0360336bbc19f435"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Oct 16 22:29:55 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Oct 16 22:29:55 2007 +0200"
      },
      "message": "ide: remove -\u003eide_dma_check (take 2)\n\n* Add IDE_HFLAG_TRUST_BIOS_FOR_DMA host flag for host drivers that depend\n  on BIOS for programming device/controller for DMA.  Set it in cy82c693,\n  generic, ns87415, opti621 and trm290 host drivers.\n\n* Add IDE_HFLAG_VDMA host flag for host drivers using VDMA.  Set it in cs5520\n  host driver.\n\n* Teach ide_tune_dma() about IDE_HFLAG_TRUST_BIOS_FOR_DMA flag.\n\n* Add generic ide_dma_check() helper and remove all open coded -\u003eide_dma_check\n  implementations.  Fix all places checking for presence of -\u003eide_dma_check\n  hook to check for -\u003eide_dma_on instead.\n\n* Remove no longer needed code from config_drive_for_dma().\n\n* Make ide_tune_dma() static.\n\nv2:\n* Fix config_drive_for_dma() return values.\n\n* Fix ide-dma.c build for CONFIG_BLK_DEV_IDEDMA_PCI\u003dn by adding\n  dummy config_drive_for_dma() inline.\n\n* Fix IDE_HFLAG_TRUST_BIOS_FOR_DMA handling in ide_dma_check().\n\n* Fix init_hwif_it8213() comment.\n\nThere should be no functionality changes caused by this patch.\n\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "55c16a70041ba55e235c5944dccb9c1de0dd3ca6",
      "tree": "e48c1d9943fc52329cae1656ca59d24751dd9b98",
      "parents": [
        "ba2da2f8d61a9d2e24754c6311a4ab6a5e70060a"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Jul 25 08:13:56 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 11:21:00 2007 +0200"
      },
      "message": "IDE: sg chaining support\n\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bb879463b5346302a3891ebb7406247c53cebac1",
      "tree": "0802c807c39b5a9c41d8bf0e618f9910b0e028d5",
      "parents": [
        "fd5d806266935179deda1502101624832eacd01f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Sep 14 10:02:06 2007 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Oct 16 11:05:06 2007 +0200"
      },
      "message": "remove ide_get_error_location()\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "aedea5910ce44fea79e2c517bb22e0006372156f",
      "tree": "5e9c84f0c045058594a80a2bc67b358f80d1d884",
      "parents": [
        "3b2d0093b8eb2b0b4adc86138edee9f6d376cafb"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Oct 13 17:47:50 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Oct 13 17:47:50 2007 +0200"
      },
      "message": "ide-pmac: remove pmac_ide_do_setfeature() (take 2)\n\nUse ide_config_drive_speed() instead of pmac_ide_do_setfeature() and remove\nthe latter, also  ide-iops.c::__ide_wait_stat() could be static again.\n\nSince for IDE PMAC host driver IDE_CONTROL_REG is always true, device\u0027s\n-\u003equirk_list is always zero and -\u003eide_dma_host_{on,off} are nops than\nthe only changes in behavior are:\n\n* if PIO mode is set then -\u003edma_off_queitly is called to disable DMA\n\n* if setting transfer mode fails ide_dump_status() is called to dump status\n\nv2:\n* IDE PMAC controllers allow separate PIO and DMA timings and PPC userland\n  depends on this fact, and calls \"hdparm -p\" without calling \"hdparm -d\".\n\n  Therefore to compensate for DMA being disabled by ide_config_drive_speed()\n  for PIO modes:\n\n  - add IDE_HFLAG_SET_PIO_MODE_KEEP_DMA flag and set it in PMAC host driver\n\n  - add handling of the new flag to ide-io.c::do_special()\n\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "26bcb879c03254545a19c6700fe5bcef6f21e7b1",
      "tree": "dc35f1a7d7860fe0de268ff92189ff0884b689d3",
      "parents": [
        "842c19ad6fc0dbd9ac9d2f8527466201802934cf"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Oct 11 23:54:00 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Oct 11 23:54:00 2007 +0200"
      },
      "message": "ide: add ide_set{_max}_pio() (take 4)\n\n* Add IDE_HFLAG_ABUSE_{PREFETCH,FAST_DEVSEL,DMA_MODES} flags\n  and set them in ht6560, cmd640, cmd64x and sc1200 host drivers.\n\n* Add set_pio_mode_abuse() for checking if host driver has a non-standard\n  -\u003etuneproc() implementation and use it in do_special().\n\n* Add ide_set_pio() for setting PIO mode (it uses hwif-\u003epio_mask to find\n  the maximum PIO mode supported by the host), also add ide_set_max_pio()\n  wrapper for ide_set_pio() to use for auto-tuning.  Convert users of\n  -\u003etuneproc to use ide_set{_max}_pio() where possible.  This leaves only\n  do_special(), set_using_pio(), ide_hwif_restore() and ide_set_pio() as\n  a direct users of -\u003etuneproc.\n\n* Remove no longer needed ide_get_best_pio_mode() calls and printk-s\n  reporting PIO mode selected from -\u003etuneproc implementations.\n\n* Rename -\u003etuneproc hook to -\u003eset_pio_mode and make \u0027pio\u0027 argument const.\n\n* Remove stale comment from ide_config_drive_speed().\n\nv2:\n* Fix \"ata_\" prefix (Noticed by Jeff).\n\nv3:\n* Minor cleanups/fixups per Sergei\u0027s suggestions.\n\nv4:\n* Fix compile problem in drivers/ide/pci/cmd640.c\n  (Noticed by Andrew Morton).\n\n* Improve some -\u003eset_pio_mode comments.\n\nReviewed-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.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": "8987d21ba6a426b0685257866ce366055930b57f",
      "tree": "5404c550d3687c70857311d2b4e170838f0fabf5",
      "parents": [
        "1c164acf50146d8a82caed642951390e073620f1"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jul 20 01:11:56 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jul 20 01:11:56 2007 +0200"
      },
      "message": "ide: ide_start_power_step() fix WRT disabling DMA\n\n* Do the same thing as probe_hwif() and always disable DMA so chipset DMA\n  enabled bit gets cleared (if the drive doesn\u0027t support DMA ide_set_dma()\n  won\u0027t try to tune it anyway).\n\n* Add TODO comment about respecting -\u003eusing_dma setting.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "41e9d344bf52c57ec16648d08618b61d3f1d4bdc",
      "tree": "7d55fc863731bc669fb9ff1d50ae7c5524ef91d6",
      "parents": [
        "275afcac9953ece0828972edeab9684cfe1a5ef3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jul 19 08:13:01 2007 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:22:44 2007 -0700"
      },
      "message": "IDE: fix termination of non-fs requests\n\nide-disk calls\n\n        ide_end_request(drive, 0, 0);\n\nto finish an unknown request, but this doesn\u0027t work so well for non-fs\nrequests, since ide_end_request() internally looks at -\u003ehard_cur_sectors\nto see how much data to end. Only file system requests store a transfer\nvalue in there, pc requests fill out -\u003edata_len as a byte based transfer\nvalue instead.\n\nSince we ask to end 0 bytes of that request, it will never be terminated\nand ide-disk gets stuck in a loop \"handling\" that same request over and\nover.\n\nSwitch __ide_end_request() to take a byte based transfer count, and\nadjust ide_end_request() to look at the right field to determine how\nmuch IO to end when it\u0027s being passed in 0.\n\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nTested-By: Giacomo Catenazzi \u003ccate@debian.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c283f5dbe31920ca70b80a594a97bfaa2a28be13",
      "tree": "891268bfec27d88bb9c5773026dcf950afe063d9",
      "parents": [
        "841d2a9bf16471716ba3a5172d24aa40a2ea9398"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Mon Jul 09 23:17:54 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jul 09 23:17:54 2007 +0200"
      },
      "message": "ide: make void and rename ide_dma_timeout() method\n\nSince ide_dma_timeout() method\u0027s result is discarded, make it return \u0027void\u0027.\nWhile at it, drop \u0027ide_\u0027 from the method\u0027s name, drop the \u0027__\u0027 prefix from\nthe default method\u0027s name, and do some cleanups in this method driver-wise:\n\n- in ide-dma.c, au1xxx-ide.c, and pdc202xx_old.c, define/use \u0027hwif\u0027 variable;\n\n- in au1xxx-ide.c, get rid of commented out printk();\n\n- in sl82c105.c, get rid of unnecessary variables.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "841d2a9bf16471716ba3a5172d24aa40a2ea9398",
      "tree": "f836d41ed70bf3efd6350c293c0c31a40ef4f900",
      "parents": [
        "b740d8846e2e184909e9f74d4ad9d67ae0e084ea"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Mon Jul 09 23:17:54 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jul 09 23:17:54 2007 +0200"
      },
      "message": "ide: make void and rename ide_dma_lostirq() method\n\nSince ide_dma_lostirq() method\u0027s result is discarded, make it return \u0027void\u0027.\nWhile at it, rename the method to dma_lost_irq(), drop the \u0027__\u0027 prefix from the\ndefault method\u0027s name, and do some cleanups in this method driver-wise:\n\n- in aec62xx.c, rename the method in accordance with other drivers, and get rid\n  of unnecessary variables there;\n\n- in pdc202xx_old.c, define/use \u0027hwif\u0027 variable;\n\n- in sgiioc4.c, rearrange the code to call the resetproc() method directly.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "793a97228d3da876f42b7fb4d4a52cc8cc86dc81",
      "tree": "ce76adb97bca7089e8bc96cb774d90fb3e254926",
      "parents": [
        "7f86723a60d287be19aee620277184f9f5455283"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed May 16 00:51:43 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed May 16 00:51:43 2007 +0200"
      },
      "message": "ide: always disable DMA before tuning it\n\nide_start_power_step() and set_using_dma() were missing -\u003edma_off_quietly\ncall (comment in probe_hwif() states that DMA should be always cleared before\ntuning is attempted).  Fix it.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "317a46a200e6514a1acf50ed30291160185a5c73",
      "tree": "36e75ca7c0a1f4662f91145077433695123a774e",
      "parents": [
        "6d208b39c45edee5def6c201fcd51561c5a39828"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu May 10 00:01:11 2007 +0200"
      },
      "message": "ide: fix PIO setup on resume for ATAPI devices\n\nPIO should be restored also for ATAPI devices during resume, fix it.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "23450319e2890986c247ec0aa1442f060e657e6d",
      "tree": "c30fc173d8b97343f8ae7b1b1ed511366af256ab",
      "parents": [
        "90f30eccf41302a2542f5d374af243061902bd98"
      ],
      "author": {
        "name": "Suleiman Souhlal",
        "email": "suleiman@google.com",
        "time": "Tue Apr 10 22:38:37 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Apr 10 22:38:37 2007 +0200"
      },
      "message": "ide: correctly prevent IDE timer expiry function to run if request was already handled\n\nIt is possible for the timer expiry function to run even though the\nrequest has already been handled: ide_timer_expiry() only checks that\nthe handler is not NULL, but it is possible that we have handled a\nrequest (thus clearing the handler) and then started a new request\n(thus starting the timer again, and setting a handler). \n\nA simple way to exhibit this is to set the DMA timeout to 1 jiffy and\nrun dd: The kernel will panic after a few minutes because\nide_timer_expiry() tries to add a timer when it\u0027s already active.\n\nTo fix this, we simply add a request generation count that gets\nincremented at every interrupt, and check in ide_timer_expiry() that\nwe have not already handled a new interrupt before running the expiry\nfunction.\n\nSigned-off-by: Suleiman Souhlal \u003csuleiman@google.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "513daadd152ddbf32cb6d0447ddba3427ce5b8e8",
      "tree": "994549525a3830b496af552dee1fd73227f36373",
      "parents": [
        "362ebd83adb4ff2761b6f49a3570f501c3c7e467"
      ],
      "author": {
        "name": "Suleiman Souhlal",
        "email": "suleiman@google.com",
        "time": "Mon Mar 26 23:03:20 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Mar 26 23:03:20 2007 +0200"
      },
      "message": "ide: use correct IDE error recovery\n\nIDE error recovery is using IDLE IMMEDIATE if the drive is busy or has DRQ set.\nThis violates the ATA spec (can only send IDLEÂ IMMEDIATE when drive is not\nbusy) and really hoses up some drives (modern drives will not be able to\nrecover using this error handling).  The correct thing to do is issue a SRST\nfollowed by a SET FEATURES command.  This is what Western Digital recommends\nfor error recovery and what Western Digital says Windows does. Â ItÂ also does\nnot violate the ATA spec as far as I can tell.\n\nBart:\n* port the patch over the current tree\n* undo the recalibration code removal\n* send SET FEATURES command after checking for good drive status\n* don\u0027t check whether the current request is of REQ_TYPE_ATA_{CMD,TASK}\n  type because we need to send SET FEATURES before handling any requests\n* some pre-ATA4 drives require INITIALIZE DEVICE PARAMETERS command before\n  other commands (except IDENTIFY) so send SET FEATURES only if there are\n  no pending drive-\u003especial requests\n* update comments and patch description\n* any bugs introduced by this patch are mine and not Suleiman\u0027s :-)\n\nSigned-off-by: Suleiman Souhlal \u003csuleiman@google.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "7469aaf6a30f4187ed6de7c0aed5c2dd2d1c2d31",
      "tree": "079930f23b3d14e4ad29ab972bc6d91fde52e5f0",
      "parents": [
        "3608b5d71a52c053787dbad6af20c25f7e0b75a9"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Feb 17 02:40:26 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Feb 17 02:40:26 2007 +0100"
      },
      "message": "ide: make ide_hwif_t.ide_dma_{host_off,off_quietly} void (v2)\n\n* since ide_hwif_t.ide_dma_{host_off,off_quietly} always return \u00270\u0027\n  make these functions void and while at it drop \"ide_\" prefix\n* fix comment for __ide_dma_off_quietly()\n* make __ide_dma_{host_off,off_quietly,off}() void and drop \"__\" prefix\n\nv2:\n* while at it rename atiixp_ide_dma_host_off() to atiixp_dma_host_off(),\n  sgiioc4_ide_dma_{host_off,off_quietly}() to sgiioc4_dma_{host_off,off_quietly}()\n  and sl82c105_ide_dma_off_quietly() to sl82c105_dma_off_quietly()\n  [ Noticed by Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e. ]\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "3608b5d71a52c053787dbad6af20c25f7e0b75a9",
      "tree": "5bd6ac777d32d8426e65e3c31cc1587674771e8c",
      "parents": [
        "9ef5791e1be91007951477b8ed1530ac1166a8e7"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Feb 17 02:40:26 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Feb 17 02:40:26 2007 +0100"
      },
      "message": "ide: add ide_set_dma() helper (v2)\n\n* add ide_set_dma() helper and make ide_hwif_t.ide_dma_check return\n  -1 when DMA needs to be disabled (\u003d\u003d need to call -\u003eide_dma_off_quietly)\n   0 when DMA needs to be enabled  (\u003d\u003d need to call -\u003eide_dma_on)\n   1 when DMA setting shouldn\u0027t be changed\n* fix IDE code to use ide_set_dma() instead if using -\u003eide_dma_check directly\n\nv2:\n* updated for scc_pata\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n\n"
    },
    {
      "commit": "f0dd8712eb8cc5687b4582fbc41cfbcd55bba0d2",
      "tree": "190bc6cf68e056ae72d895dc2c9074de2c0ed18f",
      "parents": [
        "fdb77da4ca68ae17a39d58c9d5c00479a7e124c0"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Sat Feb 17 02:40:21 2007 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Feb 17 02:40:21 2007 +0100"
      },
      "message": "ide: clear bmdma status in ide_intr() for ICHx controllers (revised #4)\n\npatch 1/2 (revised):\n- Fix drive-\u003ewaiting_for_dma to work with CDB-intr devices.\n- Do the dma status clearing in ide_intr() and add a new\n  hwif-\u003eide_dma_clear_irq for Intel ICHx controllers.\n\nRevised per Alan, Sergei and Bart\u0027s advice.\n\nPatch against 2.6.20-rc6. Tested ok on my ICH4 and pdc20275 adapters.\nPlease review/apply, thanks.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: \"Adam W. Hawks\" \u003cawhawks@us.ibm.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\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": "8c2c0118b86183bf4826db990cae5c8a8d6c6746",
      "tree": "71f7e806eccec4ef2d41fc6490395cc01bcb8123",
      "parents": [
        "3f63c5e88a5ce45b423f3712293f1664115b09c0"
      ],
      "author": {
        "name": "Jason Lunz",
        "email": "lunz@falooley.org",
        "time": "Tue Oct 03 01:14:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:08 2006 -0700"
      },
      "message": "[PATCH] ide: reprogram disk pio timings on resume\n\nAdd a step to the IDE PM state machine that reprograms disk PIO timings\nas the first step on resume. This prevents ide deadlock on\nresume-from-ram on my nforce3-based laptop.\n\nAn earlier implementation was written entirely within the amd74xx ide\ndriver, but Alan helpfully pointed out that this is the correct thing to\ndo globally. Still, I\u0027m only calling hwif-\u003etuneproc() for disks, based\non two things:\n\n - The existing state machine is already passed over for non-disk drives\n - Previous testing on my laptop shows that the hangs are related only\n   to the disk - suspend/resume from a livecd showed that there\u0027s no\n   need for this on the cdrom.\n\nSigned-off-by: Jason Lunz \u003clunz@falooley.org\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Brad Campbell \u003cbrad@wasp.net.au\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce42f19137225d01be9388a73703df40fb7af80f",
      "tree": "16d9b0bc3a5bd30c69b03836d44c1db4338628c4",
      "parents": [
        "dc844e05913b84d09e86d88c0f861ef0afbee2fd"
      ],
      "author": {
        "name": "Hua Zhong",
        "email": "hzhong@gmail.com",
        "time": "Tue Oct 03 01:14:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Oct 03 08:04:07 2006 -0700"
      },
      "message": "[PATCH] IDE error handling fixes\n\nIn 2.6.15.1 I encountered some IDE crashes when unplugging IDE cables to\nemulate disk errors.  Below is a patch against 2.6.16 which I think still\napplies.\n\n1.  The first BUG_ON could trigger when a PREFLUSH IO fails (it would\n   fail the original barrier request which hasn\u0027t been marked REQ_STARTED\n   yet).\n\n2. the rq could have been dequeued already (same as 1).\n\n3.  HWGROUP(drive)-\u003erq could be NULL because of the ide_error() several\n   lines earlier.\n\nSigned-off-by: Hua Zhong \u003chzhong@gmail.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cdd6026217c0e4cda2efce1bdc318661bef1f66f",
      "tree": "e26bb9c40b603b9cc321aa4217fecf34e1bc5f24",
      "parents": [
        "49171e5c6f414d49a061b5c1c84967c2eb569822"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jul 28 09:32:07 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:29:23 2006 +0200"
      },
      "message": "[PATCH] Remove -\u003erq_status from struct request\n\nAfter Christophs SCSI change, the only usage left is RQ_ACTIVE\nand RQ_INACTIVE. The block layer sets RQ_INACTIVE right before freeing\nthe request, so any check for RQ_INACTIVE in a driver is a bug and\nindicates use-after-free.\n\nSo kill/clean the remaining users, straight forward.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "c00895ab2f08df7044e58ee01c38bf0a661ea0eb",
      "tree": "95dee4eb76042087c4b8d43a5841b6bae85b8cf3",
      "parents": [
        "8a8e674cb1dafc818ffea93d97e4c1c1f01fdbb6"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Sat Sep 30 20:29:12 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Sat Sep 30 20:29:12 2006 +0200"
      },
      "message": "[PATCH] Remove -\u003ewaiting member from struct request\n\nAs the comments indicates in blkdev.h, we can fold it into -\u003eend_io_data\nusage as that is really what -\u003ewaiting is. Fixup the users of\nblk_end_sync_rq().\n\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "4aff5e2333c9a1609662f2091f55c3f6fffdad36",
      "tree": "b73d8c2b7c1bdc03d3313c108da7dfc95ee95525",
      "parents": [
        "77ed74da26f50fa28471571ee7a2251b77526d84"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Aug 10 08:44:47 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Sat Sep 30 20:23:37 2006 +0200"
      },
      "message": "[PATCH] Split struct request -\u003eflags into two parts\n\nRight now -\u003eflags is a bit of a mess: some are request types, and\nothers are just modifiers. Clean this up by splitting it into\n-\u003ecmd_type and -\u003ecmd_flags. This allows introduction of generic\nLinux block message types, useful for sending generic Linux commands\nto block devices.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "60be6b9a41cb0da0df7a9f11486da56baebf04cd",
      "tree": "26cb558d0d57183fdbf9136ad54b581328d6f016",
      "parents": [
        "366c7f554e888e51b8395f9b07b273fe775c7ff3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:09 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate on-stack completions\n\nlockdep needs to have the waitqueue lock initialized for on-stack waitqueues\nimplicitly initialized by DECLARE_COMPLETION().  Annotate on-stack completions\naccordingly.\n\nHas no effect on non-lockdep kernels.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "366c7f554e888e51b8395f9b07b273fe775c7ff3",
      "tree": "324fab660758f1c5be4585ca2fcdb313feb53cef",
      "parents": [
        "0a9da4bd8eb30fb3f36e841c2cc72e426a17bbe2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:09 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate enable_in_hardirq()\n\nMake use of local_irq_enable_in_hardirq() API to annotate places that enable\nhardirqs in hardirq context.\n\nHas no effect on non-lockdep kernels.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "da574af755bcb1d604e01feadf2a8c31b364447c",
      "tree": "de8548adf6ea7205314f0813afb3fb83a9e7da6a",
      "parents": [
        "2930d1bed7ffea3062e43b8acdeb9e0587bfc6a9"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Jun 28 04:27:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jun 28 14:59:06 2006 -0700"
      },
      "message": "[PATCH] ide: fix error handling for drives which clear the FIFO on error\n\nIf the controller FIFO cleared automatically on error we must not try\nand drain it as this will hang some chips.\n\nBased in concept on a broken patch from -mm some while back\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da206c9e68cb93fcab43592d46276c02889c1250",
      "tree": "21264cc26fa0322d668b398808f10bd93558d25f",
      "parents": [
        "916d15445f4ad2a9018e5451760734f36083be77",
        "2e2d0dcc1bd7ca7c26ea5e29efb7f34bbd564f1c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 13:33:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 13:33:14 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  typo fixes\n  Clean up \u0027inline is not at beginning\u0027 warnings for usb storage\n  Storage class should be first\n  i386: Trivial typo fixes\n  ixj: make ixj_set_tone_off() static\n  spelling fixes\n  fix paniced-\u003epanicked typos\n  Spelling fixes for Documentation/atomic_ops.txt\n  move acknowledgment for Mark Adler to CREDITS\n  remove the bouncing email address of David Campbell\n"
    },
    {
      "commit": "178184b60979992508130741f16499c360bc9c9a",
      "tree": "32a565f7e25e720e24f1c81fb2ae94644687b732",
      "parents": [
        "4fb0f76d8cf4f7a3ffc36dd5e1bc8ca977b68824"
      ],
      "author": {
        "name": "Al Boldi",
        "email": "a1426z@gawab.com",
        "time": "Mon Jun 26 00:26:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:27 2006 -0700"
      },
      "message": "[PATCH] ide-io: increase timeout value to allow for slave wakeup\n\nDuring an STR resume cycle, the ide master disk times-out when there is\nalso a slave present (especially CD).  Increasing the timeout in ide-io\nfrom 10,000 to 100,000 fixes this problem.\n\nAcked-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6e05edc59ecd79e8badf440c0d295a979bdfa3e",
      "tree": "50362161f69317242ab603c51a18a818a4c93285",
      "parents": [
        "f18190bd3407554ba6df30a1927e07e6cba93e56"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Mon Jun 26 18:35:02 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jun 26 18:35:02 2006 +0200"
      },
      "message": "spelling fixes\n\nacquired (aquired)\ncontiguous (contigious)\nsuccessful (succesful, succesfull)\nsurprise (suprise)\nwhether (weather)\nsome other misspellings\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "dbe217af3be08346f4b1abb885c2d9ec29c98fac",
      "tree": "493ee2547ba3095d7aa468d6ddffc1a82f18ce56",
      "parents": [
        "8e3a67a99231f9f3f476bc3449e93c9a6a17f2e0"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Sun Jun 25 05:47:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:06 2006 -0700"
      },
      "message": "[PATCH] IDE CD end-of media error fix\n\nThis is a patch from Alan that fixes a real ide-cd.c regression causing\nbogus \"Media Check\" failures for perfectly valid Fedora install ISOs, on\ncertain CD-ROM drives.\n\nThis is a forward port to 2.6.16 (from RHEL) of the minimal changes for the\nend of media problem.  It may not be sufficient for some controllers\n(promise notably) and it does not touch the locking so the error path\nlocking is as horked as in mainstream.\n\nFrom: Ingo Molnar \u003cmingo@elte.hu\u003e\n\nI have ported the patch to 2.6.17-rc4 and tested it by provoking\nend-of-media IO errors with an unaligned ISO image.  Unlike the vanilla\nkernel, the patched kernel interpreted the error condition correctly with\n512 byte granularity:\n\n hdc: command error: status\u003d0x51 { DriveReady SeekComplete Error }\n hdc: command error: error\u003d0x54 { AbortedCommand LastFailedSense\u003d0x05 }\n ide: failed opcode was: unknown\n ATAPI device hdc:\n   Error: Illegal request -- (Sense key\u003d0x05)\n   Illegal mode for this track or incompatible medium -- (asc\u003d0x64, ascq\u003d0x00)\n   The failed \"Read 10\" packet command was:\n   \"28 00 00 04 fb 78 00 00 06 00 00 00 00 00 00 00 \"\n end_request: I/O error, dev hdc, sector 1306080\n Buffer I/O error on device hdc, logical block 163260\n Buffer I/O error on device hdc, logical block 163261\n Buffer I/O error on device hdc, logical block 163262\n\nthe unpatched kernel produces an incorrect error dump:\n\n hdc: command error: status\u003d0x51 { DriveReady SeekComplete Error }\n hdc: command error: error\u003d0x54 { AbortedCommand LastFailedSense\u003d0x05 }\n ide: failed opcode was: unknown\n end_request: I/O error, dev hdc, sector 1306080\n Buffer I/O error on device hdc, logical block 163260\n hdc: command error: status\u003d0x51 { DriveReady SeekComplete Error }\n hdc: command error: error\u003d0x54 { AbortedCommand LastFailedSense\u003d0x05 }\n ide: failed opcode was: unknown\n end_request: I/O error, dev hdc, sector 1306088\n Buffer I/O error on device hdc, logical block 163261\n hdc: command error: status\u003d0x51 { DriveReady SeekComplete Error }\n hdc: command error: error\u003d0x54 { AbortedCommand LastFailedSense\u003d0x05 }\n ide: failed opcode was: unknown\n end_request: I/O error, dev hdc, sector 1306096\n Buffer I/O error on device hdc, logical block 163262\n\nI do not have the right type of CD-ROM drive to reproduce the end-of-media\ndata corruption bug myself, but this same patch in RHEL solved it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ad3caddaa1708e506f20b8e25a4a8ae586fc7d5b",
      "tree": "60a79c55a71ed3ef7bc9daaea694995b034eb044",
      "parents": [
        "b31dc66a54ad986b6b73bdc49c8efc17cbad1833"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jun 13 08:46:57 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@nelson.home.kernel.dk",
        "time": "Fri Jun 23 17:10:39 2006 +0200"
      },
      "message": "[PATCH] Get rid of struct request request_pm_state member\n\nThe IDE power management can just use the -\u003eend_io_data member to store\nit\u0027s data.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "a7ff7d41fec06c518caa82a818a70610a29d0e75",
      "tree": "3da27f3fa33d6bd61d690e89c44e6acf0b008394",
      "parents": [
        "6842f8c8dac7c06cbf0aac87824f1ff337be31cb"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Feb 03 03:04:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 03 08:32:12 2006 -0800"
      },
      "message": "[PATCH] drivers/ide/ide-io.c: make __ide_end_request() static\n\nSince there\u0027s no longer any external user, we can make __ide_end_request()\nstatic.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba027def7be0d6494b72603d5758acc0fb1c7514",
      "tree": "0390413d299350f838f2fc01ae222d8d3cdf6194",
      "parents": [
        "661dd5c840851194c7ee5a2603d5354dcf9bd212"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Jan 12 20:44:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 12:00:47 2006 -0800"
      },
      "message": "[PATCH] Revert ide softirq handling\n\nThere\u0027s a problem with the REQ_BLOCK_PC handling as well (bad -\u003edata_len\nhandling) where it could actually complete a request ahead of time.  I\nsuggest we just back this out for now, I will resubmit it later when I\u0027m\nfully confident in it.\n\nThis reverts commit 8672d57138b34447719cd7749f3d21070e1175a1\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ff57935ad0f1620269f4b08e8acfda619cc5e4b",
      "tree": "70859628e9c59e0495351891b17f537967d1662d",
      "parents": [
        "c8d52465f95c4187871f8e65666c07806ca06d41"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Jan 10 09:44:39 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:37:07 2006 -0800"
      },
      "message": "[PATCH] ide: preserve errors for failed requests\n\nTo preserve the -\u003eerrors values for requests that failed, use the normal\ncompletion path for that.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8672d57138b34447719cd7749f3d21070e1175a1",
      "tree": "dd23c85cf45c11f5d8f13d748002cddcb5551ab4",
      "parents": [
        "1aea6434eebd25e532d2e5ddabf2733af4e1ff0b"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 16:03:35 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jan 09 16:03:35 2006 +0100"
      },
      "message": "[IDE] Use the block layer deferred softirq request completion\n\nThis patch makes IDE use the new blk_complete_request() interface.\nThere\u0027s still room for improvement, as __ide_end_request() really\ncould drop the lock after getting HWGROUP-\u003erq (why does it need to\nhold it in the first place? If -\u003erq access isn\u0027t serialized, we are\nscrewed anyways).\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "3e087b575496b8aa445192f58e7d996b1cdfa121",
      "tree": "6ee355645e199a7e5c9aeae11c3143a8235d2a81",
      "parents": [
        "9a3dccc42556537a48f39ee9a9e7ab90a933f766"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:57:31 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:57:31 2006 +0100"
      },
      "message": "[BLOCK] update IDE to use new blk_ordered for barriers\n\nUpdate IDE to use new blk_ordered.  This change makes the\nfollowing behavior changes.\n\n* Partial completion of the barrier request is handled as\n  failure of the whole ordered sequence.  No more partial\n  completion for barrier requests.\n\n* Any failure of pre or post flush request results in failure\n  of the whole ordered sequence.\n\nSo, successfully completed ordered sequence guarantees that\nall requests prior to the barrier made to physical medium and,\nthen, the while barrier request made to the physical medium.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\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": "071ffcc0f7dd8df871f443be3f5059f05da528e2",
      "tree": "319a5607b382a3515d9e6fea04a6ee4b116c9efc",
      "parents": [
        "84e7b9e94b474d40582090b7e09139f0029cff2c"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Nov 19 22:01:35 2005 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Nov 19 22:01:35 2005 +0100"
      },
      "message": "[PATCH] ide: remove unused ide_action_t:ide_next\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e"
    },
    {
      "commit": "867f8b4e47a17c5d68c98dc6eee12739c4490056",
      "tree": "67391ec05e7fa70496767c8dddc525eae3a38bb4",
      "parents": [
        "1cc956e12aedfdc6baf6312bc36a6b5a71af3c9d"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Sun Oct 09 10:37:47 2005 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 10 08:40:47 2005 -0700"
      },
      "message": "[PATCH] ide: Workaround PM problem\n\nThe logic in ide_do_request() doesn\u0027t guarantee that both drives will be\nserviced after a call.  It may \"forget\" to service one in some\ncircumstances, including when one of the drive is suspended (it will\neventually fail to service the slave when the master is suspended for\nexample).  This prevents the wakeup requests that gets queued on wakeup\nfrom sleep from beeing serviced in some cases when 2 drives are sharing\nan IDE bus.\n\nThe problem is deep enough in the way this code works (and there are\nprobably a few other problematic but rare corner cases) and fixing it\nwould require some major rethinking of the way IDE decides which channel\nto service.  This is not 2.6.14 material.  However, in the meantime,\nBart has accepted this simple workaround that will fix the crash on\nwakeup from sleep since this specific corner case is actually hitting\nusers to get into 2.6.14.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "338cec3253a6d43d02e5e96abc327197565efcc8",
      "tree": "e56af7e1117f7ec47a4e854476103c22aa9fc1bc",
      "parents": [
        "f9101210e7aa72daf92722d451a2f7e3af5f781f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Sep 10 00:26:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:30 2005 -0700"
      },
      "message": "[PATCH] merge some from Rusty\u0027s trivial patches\n\nThis patch contains the most trivial from Rusty\u0027s trivial patches:\n- spelling fixes\n- remove duplicate includes\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "46dacba52a19d1414ba249499a48382c16242d99",
      "tree": "760538eb1cac1f6e7c0b4b99c0a31b282b59e467",
      "parents": [
        "c2ff18f4070f6303a81fd7d9d967d7c9e01b588f"
      ],
      "author": {
        "name": "Michal Schmidt",
        "email": "xschmi00@stud.feec.vutbr.cz",
        "time": "Sat Sep 03 15:57:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:16 2005 -0700"
      },
      "message": "[PATCH] swsusp: prevent disks from spinning down and up\n\nStop the disks from spinning down and up on suspend.\n\nSigned-off-by: Michal Schmidt \u003cxschmi00@stud.feec.vutbr.cz\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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"
    }
  ]
}
