)]}'
{
  "log": [
    {
      "commit": "05227adff206c7290e8bbf1c28be771c2cbfa0ee",
      "tree": "d2b96c8d37bde4bc40c68359ce15fab37c23c61b",
      "parents": [
        "066000dd856709b6980123eb39b957fe26993f7b"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Mon Jan 04 06:24:00 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 12 01:56:54 2010 -0800"
      },
      "message": "ide_tape: kill off use of the -\u003eioctl operation\n\nReady to get everything using unlocked_ioctl()\n\nFor ide_tape we just push down as this is legacy code anyway\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbba2fa7b2c512135a5a946ccb112ddf0a1a1b1e",
      "tree": "685d9ce697de9b30f45241efae171f0a51e2e7f3",
      "parents": [
        "3f911a6e6b9c6b485a33a680c4ae29d86d2f2a54"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Sun Oct 11 00:25:19 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 03:09:25 2009 -0700"
      },
      "message": "ide-tape: remove the BKL\n\nReplace the BKL calls in the chrdev_{open,release} interfaces with a\nsimple sleeping mutex.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "83d5cde47dedf01b6a4a4331882cbc0a7eea3c2e",
      "tree": "f8ba5e263717d35cd444fcc65898d2ed352af1ae",
      "parents": [
        "7b021967c5e1463936042c8da72b550d3cabe9ac"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Sep 21 17:01:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:25 2009 -0700"
      },
      "message": "const: make block_device_operations const\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6d703a81ad5fdd102334751ddacb053ecc6ff046",
      "tree": "1bebde3a0c34677296dc4784e800445ea02b4f0a",
      "parents": [
        "76fbebfbb593bd66780db0a808afe1d21c7ff6d6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Sep 01 17:52:57 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:52:57 2009 -0700"
      },
      "message": "ide: convert to -\u003eproc_fops\n\n-\u003eread_proc, -\u003ewrite_proc are going away, -\u003eproc_fops should be used instead.\n\nThe only tricky place is IDENTIFY handling: if for some reason\ntaskfile_lib_get_identify() fails, buffer _is_ changed and at least\nfirst byte is overwritten. Emulate old behaviour with returning\nthat first byte to userspace and reporting length\u003d1 despite overall -E.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f3848ac2399faac0be3f26648bf1d7a644a8242",
      "tree": "fa265664488af88238ea88f712ae0827e124b877",
      "parents": [
        "e972d7027c0fb7055f5f2fe02d662c9528063bef"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Tue Jul 21 23:08:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 07 10:42:57 2009 -0700"
      },
      "message": "ide-tape: fix handling of postponed rqs\n\nide-tape used to hit\n\n[   58.614854] ide-tape: ht0: BUG: Two DSC requests queued!\n\ndue to the fact that another rq was being issued while the driver was\nwaiting for DSC to get set for the device executing ATAPI commands which\nset the DSC to 1 to indicate completion.\n\nHere\u0027s a sample output of that case:\n\nissue REZERO_UNIT\n\n[  143.088505] ide-tape: ide_tape_issue_pc: retry #0, cmd: 0x01\n[  143.095122] ide: Enter ide_pc_intr - interrupt handler\n[  143.096118] ide: Packet command completed, 0 bytes transferred\n[  143.106319] ide-tape: ide_tape_callback: cmd: 0x1, dsc: 1, err: 0\n[  143.112601] ide-tape: idetape_postpone_request: cmd: 0x1, dsc_poll_freq: 2000\n\nwe stall the ide-tape queue here waiting for DSC\n\n[  143.119936] ide-tape: ide_tape_read_position: enter\n[  145.119019] ide-tape: idetape_do_request: sector: 4294967295, nr_sectors: 0\n\nand issue the new READ_POSITION rq and hit the check.\n\n[  145.126247] ide-tape: ht0: BUG: Two DSC requests queued!\n[  145.131748] ide-tape: ide_tape_read_position: BOP - No\n[  145.137059] ide-tape: ide_tape_read_position: EOP - No\n\nAlso, -\u003epostponed_rq used to point to that postponed request. To make\nthings worse, in certain circumstances the rq it was pointing to got\nreplaced unterneath it by swiftly reusing the same rq from the mempool\nof the block layer practically confusing stuff even more.\n\nHowever, we don\u0027t need to keep a pointer to that rq but simply wait for\nDSC to be set first before issuing the follow-up request in the drive\u0027s\nqueue. In order to do that, we make idetape_do_request() first check the\nDSC and if not set, we stall the drive queue giving the other device on\nthat IDE channel a chance.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e972d7027c0fb7055f5f2fe02d662c9528063bef",
      "tree": "47dfac8825a9299332d3c41d9b674dbc01039ac9",
      "parents": [
        "37bbe084d1152cb580d2cc88b4eda2004506a141"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Fri Jul 17 23:55:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 07 10:42:57 2009 -0700"
      },
      "message": "ide-tape: convert to ide_debug_log macro\n\nRemove tape-\u003edebug_mask and use drive-\u003edebug_mask instead.\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "37bbe084d1152cb580d2cc88b4eda2004506a141",
      "tree": "6642f3ff69a6f84fa8b0277411420533e23f4950",
      "parents": [
        "7fa350b4754cd69c8352ef3f5d23082fbdcab0bd"
      ],
      "author": {
        "name": "Mark de Wever",
        "email": "koraq@xs4all.nl",
        "time": "Fri Jul 17 23:55:15 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 07 10:42:56 2009 -0700"
      },
      "message": "ide-tape: fix debug call\n\nThis error only occurs when IDETAPE_DEBUG_LOG is enabled.\n\nSigned-off-by: Mark de Wever \u003ckoraq@xs4all.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2fc2111c2729462b99b6e37f39a48917054776f5",
      "tree": "e8803cdde80db3b3d5e8ecd4e0e90579c44a2073",
      "parents": [
        "bc146d23d1358af43f03793c3ad8c9f16bbcffcb"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Sun Jul 19 09:15:19 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 21 20:36:25 2009 -0700"
      },
      "message": "ide-tape: Don\u0027t leak kernel stack information\n\nDon\u0027t leak kernel stack information through uninitialized structure members.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e.\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c7eaa43c3bb7b3b9fe2051d17f308c1f0728c78",
      "tree": "1b359598ea212bf7036bcc018186e0a8f20ac5f4",
      "parents": [
        "a9c415090710a108edcd81b3392b90396f190a9a"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jun 15 22:16:10 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jun 15 22:16:10 2009 +0200"
      },
      "message": "ide: BUG() on unknown requests\n\nUnsupported requests should be never handed down to device drivers\nand the best thing we can do upon discovering such request inside\ndriver\u0027s -\u003edo_request method is to just BUG().\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "79ca743f68a94443518f165355d4327bc0f87632",
      "tree": "ea9a768e73cf8ee9ca93c71ab9ab7fcfe2909542",
      "parents": [
        "8dcce4081305d3d1629190edd112e6473c315cbc"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Mon Jun 15 07:32:04 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jun 15 18:52:52 2009 +0200"
      },
      "message": "ide-tape: fix build issue\n\nThis fixes\n\ndrivers/ide/ide-tape.c: In function `idetape_chrdev_open\u0027:\ndrivers/ide/ide-tape.c:1515: error: implicit declaration of function `idetape_read_position\u0027\nmake[1]: *** [drivers/ide/ide-tape.o] Error 1\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "8dcce4081305d3d1629190edd112e6473c315cbc",
      "tree": "343c7167f6a3d2a77b01d50cf54c67bdd6faccd1",
      "parents": [
        "f3ad116588151b3371ae4e092290e4f48e62b8bb",
        "103f7033bd0f7b65ff3e0a5ea72449d08010b031"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jun 13 12:00:54 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat Jun 13 12:00:54 2009 +0200"
      },
      "message": "Merge branch \u0027bp-remove-pc-buf\u0027 into for-next\n\nConflicts:\n\tdrivers/ide/ide-tape.c\n"
    },
    {
      "commit": "d614aec4752f8c61b2e7cb77806b6bd59aa50836",
      "tree": "3b0cfb3085c43415931dbf18666d582fb8ae3c75",
      "parents": [
        "db8e7f10ed67933ca272f4030eb7057b7f13de07",
        "ad7c52d0988a8965989dc06d630c52a5bde849d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 12 09:29:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 12 09:29:42 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (29 commits)\n  ide: re-implement ide_pci_init_one() on top of ide_pci_init_two()\n  ide: unexport ide_find_dma_mode()\n  ide: fix PowerMac bootup oops\n  ide: skip probe if there are no devices on the port (v2)\n  sl82c105: add printk() logging facility\n  ide-tape: fix proc warning\n  ide: add IDE_DFLAG_NIEN_QUIRK device flag\n  ide: respect quirk_drives[] list on all controllers\n  hpt366: enable all quirks for devices on quirk_drives[] list\n  hpt366: sync quirk_drives[] list with pdc202xx_{new,old}.c\n  ide: remove superfluous SELECT_MASK() call from do_rw_taskfile()\n  ide: remove superfluous SELECT_MASK() call from ide_driveid_update()\n  icside: remove superfluous -\u003emaskproc method\n  ide-tape: fix IDE_AFLAG_* atomic accesses\n  ide-tape: change IDE_AFLAG_IGNORE_DSC non-atomically\n  pdc202xx_old: kill resetproc() method\n  pdc202xx_old: don\u0027t call pdc202xx_reset() on IRQ timeout\n  pdc202xx_old: use ide_dma_test_irq()\n  ide: preserve Host Protected Area by default (v2)\n  ide-gd: implement block device -\u003eset_capacity method (v2)\n  ...\n"
    },
    {
      "commit": "c9059598ea8981d02356eead3188bf7fa4d717b8",
      "tree": "03e73b20a30e988da7c6a3e0ad93b2dc5843274d",
      "parents": [
        "0a33f80a8373eca7f4bea3961d1346c3815fa5ed",
        "b0fd271d5fba0b2d00888363f3869e3f9b26caa9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:52:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 11:10:35 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.31\u0027 of git://git.kernel.dk/linux-2.6-block: (153 commits)\n  block: add request clone interface (v2)\n  floppy: fix hibernation\n  ramdisk: remove long-deprecated \"ramdisk\u003d\" boot-time parameter\n  fs/bio.c: add missing __user annotation\n  block: prevent possible io_context-\u003erefcount overflow\n  Add serial number support for virtio_blk, V4a\n  block: Add missing bounce_pfn stacking and fix comments\n  Revert \"block: Fix bounce limit setting in DM\"\n  cciss: decode unit attention in SCSI error handling code\n  cciss: Remove no longer needed sendcmd reject processing code\n  cciss: change SCSI error handling routines to work with interrupts enabled.\n  cciss: separate error processing and command retrying code in sendcmd_withirq_core()\n  cciss: factor out fix target status processing code from sendcmd functions\n  cciss: simplify interface of sendcmd() and sendcmd_withirq()\n  cciss: factor out core of sendcmd_withirq() for use by SCSI error handling code\n  cciss: Use schedule_timeout_uninterruptible in SCSI error handling code\n  block: needs to set the residual length of a bidi request\n  Revert \"block: implement blkdev_readpages\"\n  block: Fix bounce limit setting in DM\n  Removed reference to non-existing file Documentation/PCI/PCI-DMA-mapping.txt\n  ...\n\nManually fix conflicts with tracing updates in:\n\tblock/blk-sysfs.c\n\tdrivers/ide/ide-atapi.c\n\tdrivers/ide/ide-cd.c\n\tdrivers/ide/ide-floppy.c\n\tdrivers/ide/ide-tape.c\n\tinclude/trace/events/block.h\n\tkernel/trace/blktrace.c\n"
    },
    {
      "commit": "9d01e4cd7eb4a70b04cf5a5b4f79c99e8e3e3edc",
      "tree": "9de881b64afb4655c0d093db306d7ec82715dde8",
      "parents": [
        "734affdcae20af4fec95e46a64fb29f063a15c19"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Mon Jun 08 22:03:03 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jun 08 22:03:03 2009 +0200"
      },
      "message": "ide-tape: fix proc warning\n\nide_tape_chrdev_get() was missing an ide_device_get() refcount increment\nwhich lead to the following warning:\n\n[  278.147906] ------------[ cut here ]------------\n[  278.152685] WARNING: at fs/proc/generic.c:847 remove_proc_entry+0x199/0x1b8()\n[  278.160070] Hardware name: P4I45PE    1.00\n[  278.160076] remove_proc_entry: removing non-empty directory \u0027ide0/hdb\u0027, leaking at least \u0027name\u0027\n[  278.160080] Modules linked in: rtc intel_agp pcspkr thermal processor thermal_sys parport_pc parport agpgart button\n[  278.160100] Pid: 2312, comm: mt Not tainted 2.6.30-rc2 #3\n[  278.160105] Call Trace:\n[  278.160117]  [\u003cc012141d\u003e] warn_slowpath+0x71/0xa0\n[  278.160126]  [\u003cc035f219\u003e] ? _spin_unlock_irqrestore+0x29/0x2c\n[  278.160132]  [\u003cc011c686\u003e] ? try_to_wake_up+0x1b6/0x1c0\n[  278.160141]  [\u003cc011c69b\u003e] ? default_wake_function+0xb/0xd\n[  278.160149]  [\u003cc0177ead\u003e] ? pollwake+0x4a/0x55\n[  278.160156]  [\u003cc035f240\u003e] ? _spin_unlock+0x24/0x26\n[  278.160163]  [\u003cc0165d38\u003e] ? add_partial+0x44/0x49\n[  278.160169]  [\u003cc01669e8\u003e] ? __slab_free+0xba/0x29c\n[  278.160177]  [\u003cc01a13d8\u003e] ? sysfs_delete_inode+0x0/0x3c\n[  278.160184]  [\u003cc019ca92\u003e] remove_proc_entry+0x199/0x1b8\n[  278.160191]  [\u003cc01a297e\u003e] ? remove_dir+0x27/0x2e\n[  278.160199]  [\u003cc025f3ab\u003e] ide_proc_unregister_device+0x40/0x4c\n[  278.160207]  [\u003cc02599cd\u003e] drive_release_dev+0x14/0x47\n[  278.160214]  [\u003cc0250538\u003e] device_release+0x35/0x5a\n[  278.160221]  [\u003cc01f8bed\u003e] kobject_release+0x40/0x50\n[  278.160226]  [\u003cc01f8bad\u003e] ? kobject_release+0x0/0x50\n[  278.160232]  [\u003cc01f96ac\u003e] kref_put+0x3c/0x4a\n[  278.160238]  [\u003cc01f8b29\u003e] kobject_put+0x37/0x3c\n[  278.160243]  [\u003cc025020c\u003e] put_device+0xf/0x11\n[  278.160249]  [\u003cc025789f\u003e] ide_device_put+0x2d/0x30\n[  278.160255]  [\u003cc02658da\u003e] ide_tape_put+0x24/0x32\n[  278.160261]  [\u003cc0266e0c\u003e] idetape_chrdev_release+0x17f/0x18e\n[  278.160269]  [\u003cc016c4f5\u003e] __fput+0xca/0x175\n[  278.160275]  [\u003cc016c5b9\u003e] fput+0x19/0x1b\n[  278.160280]  [\u003cc0169d19\u003e] filp_close+0x51/0x5b\n[  278.160286]  [\u003cc0169d96\u003e] sys_close+0x73/0xad\n[  278.160293]  [\u003cc0102a61\u003e] syscall_call+0x7/0xb\n[  278.160298] ---[ end trace f16d907ea1f89336 ]---\n\nInstead of trivially fixing it by adding the missing call,\nide_tape_chrdev_get() and ide_tape_get() were merged into one function\nsince both were almost identical. The only difference was that\nide_tape_chrdev_get() was accessing the ide-tape reference through the\nidetape_devs[] array of minors instead of through the gendisk.\n\nAccomodate that by adding two additional parameters to ide_tape_get() to\nannotate the call site and invoke the proper behavior.\n\nAs a result, remove ide_tape_chrdev_get().\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "49d8078ad1c3dca5b11ce18391bf6bd9af9acdf5",
      "tree": "f425afffeec4eb8d9019637a5ee4ceacbb1b79db",
      "parents": [
        "626542ca2277961aaa64855206574f8ca4f360e3"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Sun Jun 07 15:37:06 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:06 2009 +0200"
      },
      "message": "ide-tape: fix IDE_AFLAG_* atomic accesses\n\nThese flags used to be bit numbers and now are single bits in the\n-\u003eatapi_flags vector. Use them properly.\n\nSpotted-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "626542ca2277961aaa64855206574f8ca4f360e3",
      "tree": "88f2071580dbe02c43741dd112d8f7b98eea0938",
      "parents": [
        "ffddf1717b0d388879c646eaf6261a2b393c06ad"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Sun Jun 07 15:37:05 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:05 2009 +0200"
      },
      "message": "ide-tape: change IDE_AFLAG_IGNORE_DSC non-atomically\n\nThere are two sites where the flag is being changed: ide_retry_pc\nand idetape_do_request. Both codepaths are protected by hwif-\u003ebusy\n(ide_lock_port) and therefore we shouldn\u0027t need the atomic accesses.\n\nSpotted-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5f49f63178360b07a095bd33b0d850d60edf7590",
      "tree": "23764399405214c115543eb5dec59982cf0baa26",
      "parents": [
        "3755100dd5f66761aaaa7ae44c70b319a7c78a56"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue May 19 18:33:05 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 19 11:36:08 2009 +0200"
      },
      "message": "block: set rq-\u003eresid_len to blk_rq_bytes() on issue\n\nIn commit c3a4d78c580de4edc9ef0f7c59812fb02ceb037f, while introducing\nrq-\u003eresid_len, the default value of residue count was changed from\nfull count to zero.  The conversion was done under the assumption that\nwhen a request fails residue count wasn\u0027t defined.  However, Boaz and\nJames pointed out that this wasn\u0027t true and the residue count should\nbe preserved for failed requests too.\n\nThis patchset restores the original behavior by setting rq-\u003eresid_len\nto blk_rq_bytes(rq) on request start and restoring explicit clearing\nin affected drivers.  While at it, take advantage of the fact that\nrq-\u003eresid_len is set to full count where applicable.\n\n* ide-cd: rq-\u003eresid_len cleared on pc success\n\n* mptsas: req-\u003eresid_len cleared on success\n\n* sas_expander: rsp/req-\u003eresid_len cleared on success\n\n* mpt2sas_transport: req-\u003eresid_len cleared on success\n\n* ide-cd, ide-tape, mptsas, sas_host_smp, mpt2sas_transport, ub: take\n  advantage of initial full count to simplify code\n\nBoaz Harrosh spotted bug in resid_len initialization.  Fixed as\nsuggested.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Eric Moore \u003cEric.Moore@lsi.com\u003e\nCc: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e8e7526c3c0863be25ab03a0871ee0978de5ba50",
      "tree": "fd7250139e4b776e7e7e7d3973ac4813c3e97d85",
      "parents": [
        "fdac1c76beb9d142675c852834a64a77703bd450"
      ],
      "author": {
        "name": "Mark de Wever",
        "email": "koraq@xs4all.nl",
        "time": "Sun May 17 17:22:53 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 17:22:53 2009 +0200"
      },
      "message": "ide-tape: fix debug call\n\nThis error only occurs when IDETAPE_DEBUG_LOG is enabled.\n\nSigned-off-by: Mark de Wever \u003ckoraq@xs4all.nl\u003e\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "19f52a784f7ecb5b51cd73cc4514614b600b995a",
      "tree": "3dcc0d4aa96ed7ed65be8936c81458bb0b22f568",
      "parents": [
        "55ce3a129ea2e8faba4a11bb5dbc305590d1c20c"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Mon May 04 09:53:03 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:38 2009 +0200"
      },
      "message": "ide-atapi: remove pc-\u003ebuf\n\nNow after all users of pc-\u003ebuf have been converted, remove the 64B buffer\nembedded in each packet command.\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "55ce3a129ea2e8faba4a11bb5dbc305590d1c20c",
      "tree": "78e0011fd9a404d959391073f5d56c57145a1006",
      "parents": [
        "837272b4f9393df40d16cc2ac731221027048ba6"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Mon May 04 09:38:15 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:35 2009 +0200"
      },
      "message": "ide-tape: fix READ POSITION cmd handling\n\nide-tape used to issue READ POSITION in several places and the\nevaluation of the returned READ POSITION data was done in the\n-\u003epc_callback. Convert it to use local buffer and move that\nevaluation chunk in the idetape_read_position(). Additionally, fold\nidetape_create_read_position_cmd() into it, too, thus concentrating READ\nPOSITION handling in one method only and making all places call that.\n\nFinally, mv {idetape,ide_tape}_read_position.\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "837272b4f9393df40d16cc2ac731221027048ba6",
      "tree": "9ce093f338af5acdbc624d2777944cf17a2c6204",
      "parents": [
        "60cfab85da965035c7baf66a63f048155bb302b1"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Mon May 04 09:48:57 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:31 2009 +0200"
      },
      "message": "ide-tape/ide_tape_get_bsize_from_bdesc: use local buffer\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "ae3a8387be529e632eac69b342524c25b892fc63",
      "tree": "30f9d6c3480e4c3fe8fdaf3bfa004911a54eadbd",
      "parents": [
        "5122e5174f872c9f3120c8aff71c448f84b6f038"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Sat May 02 10:58:17 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:23 2009 +0200"
      },
      "message": "ide-atapi: use local sense buffer\n\nAccess the sense buffer through the bio in -\u003epc_callback method thus\nalleviating the need for the pc-\u003ebuf pointer.\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "b13345f39dadbabdabaf8819cf6df26913da9e8d",
      "tree": "535a81fdf7d71c632fe759c689f4a7d4a5c70399",
      "parents": [
        "5a0e43b5e2ee9a295f864c38f0e853b1a4fc3892"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Sat May 02 10:26:12 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:09 2009 +0200"
      },
      "message": "ide-atapi: add a buffer-arg to ide_queue_pc_tail\n\nThis is in preparation of removing ide_atapi_pc. Expose the buffer as an\nargument to ide_queue_pc_tail with later replacing it with local buffer\nor even kmalloc\u0027ed one if needed due to stack usage constraints.\n\nAlso, add the possibility of passing a NULL-ptr buffer for cmds which\ndon\u0027t transfer data besides the cdb. While at it, switch to local buffer\nin idetape_get_mode_sense_results().\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "5a0e43b5e2ee9a295f864c38f0e853b1a4fc3892",
      "tree": "9793191360addddb7d240e34d983817fde3ec621",
      "parents": [
        "077e6dba20e74a455a0452379d2a965c7e1b01ad"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 01 23:27:11 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:06 2009 +0200"
      },
      "message": "ide-atapi: add a len-parameter to ide_queue_pc_tail\n\nThis is in preparation for removing ide_atapi_pc.\n\nThere should be no functional change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "077e6dba20e74a455a0452379d2a965c7e1b01ad",
      "tree": "66b4a755d6e5941578d5a14b778b0734273343c5",
      "parents": [
        "dfb7e621fa12c0579e88560ab176c5768f9e0bfb"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 01 21:21:02 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:44:02 2009 +0200"
      },
      "message": "ide-atapi: switch to rq-\u003eresid_len\n\nNow that we have rq-\u003eresid_len, use it to account partial completion\namount during the lifetime of an rq, decrementing it on each successful\ntransfer. As a result, get rid of now unused pc-\u003exferred.\n\nWhile at it, remove noisy debug call in ide_prep_sense.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "dfb7e621fa12c0579e88560ab176c5768f9e0bfb",
      "tree": "9a0fc84735ee3290c366b4244763013ba07bcdd7",
      "parents": [
        "10c0b3437c4dc0d14ac254bbe71e54ea5f238d97"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 01 20:35:21 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:43:59 2009 +0200"
      },
      "message": "ide-atapi: switch to blk_rq_bytes() on do_request() path\n\nAfter the recent struct request cleanups, blk_rq_bytes() is guaranteed\nto be valid and is the current total length of the rq\u0027s bio. Use that\ninstead of pc-\u003ereq_xfer in the do_request() path after the command has\nbeen queued\n\nThe remaining usage of pc-\u003ereq_xfer now is only until we map the rq to a\nbio.\n\nWhile at it:\n\n- remove local caching of rq completion length in ide_tape_issue_pc()\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "10c0b3437c4dc0d14ac254bbe71e54ea5f238d97",
      "tree": "8d40e72ad1c096bcb4d4ca0475f62e9bebbec647",
      "parents": [
        "77f6bf57ba9d2c50173536dbfdacdab27cb867ca"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 01 20:29:53 2009 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri May 15 06:43:45 2009 +0200"
      },
      "message": "ide-tape: fix potential fs requests bug\n\nide-tape had a potential bug for fs requests when preparing the command\npacket: it was writing the transfer length as a number of fixed blocks.\nHowever, the block layer implies 512 byte blocks and ide-tape can have\nother block sizes so account for that too.\n\nide-floppy does this calculation properly with the block size factor\n(floppy-\u003ebs_factor).\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\n"
    },
    {
      "commit": "34b7d2c957199834c474c9d46739265643f4d9c7",
      "tree": "b11b89196c6f1c758657d90a79b496c131b2a19c",
      "parents": [
        "b0790410300abaaf4f25f702803beff701baebf1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:43 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:55 2009 +0200"
      },
      "message": "ide: cleanup rq-\u003edata_len usages\n\nWith recent unification of fields, it\u0027s now guaranteed that\nrq-\u003edata_len always equals blk_rq_bytes().  Convert all direct users\nto accessors.\n\n[ Impact: convert direct rq-\u003edata_len usages to blk_rq_bytes() ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9780e2dd8254351f6cbe11304849126b51dbd561",
      "tree": "a987a9d671302f4a5133cbf1d7880158a9f21315",
      "parents": [
        "83096ebf1263b2c1ee5e653ba37d993d02e3eb7b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:40 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:54 2009 +0200"
      },
      "message": "ide: convert to rq pos and nr_sectors accessors\n\nide doesn\u0027t manipulate request fields anymore and thus all hard and\ntheir soft equivalents are always equal.  Convert all references to\naccessors.\n\n[ Impact: use pos and nr_sectors accessors ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "c3a4d78c580de4edc9ef0f7c59812fb02ceb037f",
      "tree": "916ca44287100707508678e2cc0eff0c43b9ca39",
      "parents": [
        "9720aef2539c10e3a872e9a92beec225030d99db"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:37 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:53 2009 +0200"
      },
      "message": "block: add rq-\u003eresid_len\n\nrq-\u003edata_len served two purposes - the length of data buffer on issue\nand the residual count on completion.  This duality creates some\nheadaches.\n\nFirst of all, block layer and low level drivers can\u0027t really determine\nwhat rq-\u003edata_len contains while a request is executing.  It could be\nthe total request length or it coulde be anything else one of the\nlower layers is using to keep track of residual count.  This\ncomplicates things because blk_rq_bytes() and thus\n[__]blk_end_request_all() relies on rq-\u003edata_len for PC commands.\nDrivers which want to report residual count should first cache the\ntotal request length, update rq-\u003edata_len and then complete the\nrequest with the cached data length.\n\nSecondly, it makes requests default to reporting full residual count,\nie. reporting that no data transfer occurred.  The residual count is\nan exception not the norm; however, the driver should clear\nrq-\u003edata_len to zero to signify the normal cases while leaving it\nalone means no data transfer occurred at all.  This reverse default\nbehavior complicates code unnecessarily and renders block PC on some\ndrivers (ide-tape/floppy) unuseable.\n\nThis patch adds rq-\u003eresid_len which is used only for residual count.\n\nWhile at it, remove now unnecessasry blk_rq_bytes() caching in\nide_pc_intr() as rq-\u003edata_len is not changed anymore.\n\nBoaz\t: spotted missing conversion in osd\nSergei\t: spotted too early conversion to blk_rq_bytes() in ide-tape\n\n[ Impact: cleanup residual count handling, report 0 resid by default ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Eric Moore \u003cEric.Moore@lsi.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Doug Gilbert \u003cdgilbert@interlog.com\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Eric Moore \u003cEric.Moore@lsi.com\u003e\nCc: Darrick J. Wong \u003cdjwong@us.ibm.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9720aef2539c10e3a872e9a92beec225030d99db",
      "tree": "9c884ca078ddb0e9cffdd3bb11cf7569db47567c",
      "parents": [
        "53d6979ab6747e758207e8ac861b96d0da0d3332"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:36 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:53 2009 +0200"
      },
      "message": "ide-tape: don\u0027t initialize rq-\u003esector for rw requests\n\nrq-\u003esector is set to the tape-\u003efirst_frame but it\u0027s never actually\nused and not even in the correct unit (512 byte sectors).  Don\u0027t set\nit.\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "29d1a4371035e01b0d079bc5aa88b50f5af7a566",
      "tree": "4aad5a0868e1929f0ced33ffde34b334760c0522",
      "parents": [
        "4344d07fb8dbf0cbfec1f7d7c1afeccaceaaa120"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:32 2009 +0200"
      },
      "message": "ide-atapi: kill unused fields and callbacks\n\nImpact: remove fields and code paths which are no longer necessary\n\nNow that ide-tape uses standard mechanisms to transfer data, special\ncase handling for bh handling can be dropped from ide-atapi.  Drop the\nfollowings.\n\n* pc-\u003ecur_pos, b_count, bh and b_data\n* drive-\u003epc_update_buffers() and pc_io_buffers().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "4344d07fb8dbf0cbfec1f7d7c1afeccaceaaa120",
      "tree": "40a0dccbf1b9100efa71971b930f15e1b2daef1e",
      "parents": [
        "71294cf93d22ceaa75448cc6ebee2c65897be8c2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:32 2009 +0200"
      },
      "message": "ide-tape: simplify read/write functions\n\nImpact: cleanup\n\nidetape_chrdev_read/write() functions are unnecessarily complex when\neverything can be handled in a single loop.  Collapse\nidetape_add_chrdev_read/write_request() into the rw functions and\nsimplify the implementation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "71294cf93d22ceaa75448cc6ebee2c65897be8c2",
      "tree": "a57f2b7ceea1fc490234aa8474b89ade9e262da3",
      "parents": [
        "3596b66452491a3cff26256a5e6e6061a66c4142"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:32 2009 +0200"
      },
      "message": "ide-tape: use byte size instead of sectors on rw issue functions\n\nImpact: cleanup\n\nByte size is what most issue functions deal with, make\nidetape_queue_rw_tail() and its wrappers take byte size instead of\nsector counts.  idetape_chrdev_read() and write() functions are\nconverted to use tape-\u003ebuffer_size instead of ctl from tape-\u003ecap.\n\nThis cleans up code a little bit and will ease the next r/w\nreimplementation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "3596b66452491a3cff26256a5e6e6061a66c4142",
      "tree": "059bc3ca0760b1f71eead91a70e1081e7f7be9b8",
      "parents": [
        "6cf3d545f7d71b183e5b89960d4cc850a42c410d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:32 2009 +0200"
      },
      "message": "ide-tape: unify r/w init paths\n\nImpact: cleanup\n\nRead and write init paths are almost identical.  Unify them into\nidetape_init_rw().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6cf3d545f7d71b183e5b89960d4cc850a42c410d",
      "tree": "6c1f861ccf5c8cdd858cacf8800c84a4337c9f13",
      "parents": [
        "e998f30b45efb99a3c3ce7b5483f76317a17abed"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:31 2009 +0200"
      },
      "message": "ide-tape: kill idetape_bh\n\nImpact: kill now unnecessary idetape_bh\n\nWith everything using standard mechanisms, there is no need for\nidetape_bh anymore.  Kill it and use tape-\u003ebuf, cur and valid to\ndescribe data buffer instead.\n\nChanges worth mentioning are...\n\n* idetape_queue_rq_tail() now always queue tape-\u003ebuf and and adjusts\n  buffer state properly before completion.\n\n* idetape_pad_zeros() clears the buffer only once.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "e998f30b45efb99a3c3ce7b5483f76317a17abed",
      "tree": "a471752f5190dd77d78b2df5cd0c503e60d2f20f",
      "parents": [
        "7b13354eeaabaf6283b8c669a7d67d104ce7c638"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:31 2009 +0200"
      },
      "message": "ide-tape: use standard data transfer mechanism\n\nImpact: use standard way to transfer data\n\nide-tape uses rq in an interesting way.  For r/w requests, rq-\u003especial\nis used to carry a private buffer management structure idetape_bh and\nrq-\u003enr_sectors and current_nr_sectors are initialized to the number of\nidetape blocks which isn\u0027t necessary 512 bytes.  Also,\nrq-\u003ecurrent_nr_sectors is used to report back the residual count in\nunits of idetape blocks.\n\nThis peculiarity taxes both block layer and ide.  ide-atapi has\ndifferent paths and hooks to accomodate it and what a rq means becomes\nquite confusing and making changes at the block layer becomes quite\ndifficult and error-prone.\n\nThis patch makes ide-tape use bio instead.  With the previous patch,\nide-tape currently is using single contiguos buffer so replacing it\nisn\u0027t difficult.  Data buffer is mapped into bio using\nblk_rq_map_kern() in idetape_queue_rw_tail().  idetape_io_buffers()\nand idetape_update_buffers() are dropped and pc-\u003ebh is set to null to\ntell ide-atapi to use standard data transfer mechanism and idetape_bh\nbyte counts are updated by the issuer on completion using the residual\ncount.\n\nThis change also nicely removes the FIXME in ide_pc_intr() where\nide-tape rqs need to be completed using ide_rq_bytes() instead of\nblk_rq_bytes() (although this didn\u0027t really matter as the request\ndidn\u0027t have bio).\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "7b13354eeaabaf6283b8c669a7d67d104ce7c638",
      "tree": "d8d9bde1f102f5dd8d8c5a504948549e90595a25",
      "parents": [
        "eb6a61bb9543aa54d62595e27206b3d3c0293bcc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:31 2009 +0200"
      },
      "message": "ide-tape: use single continuous buffer\n\nImpact: simpler buffer allocation and handling, kills OOM, fix DMA transfers\n\nide-tape has its own multiple buffer mechanism using struct\nidetape_bh.  It allocates buffer with decreasing order-of-two\nallocations so that it results in minimum number of segments.\nHowever, the implementation is quite complex and works in a way that\nno other block or ide driver works necessitating a lot of special case\nhandling.\n\nThe benefit this complex allocation scheme brings is questionable as\nPIO or DMA the number of segments (16 maximum) doesn\u0027t make any\nnoticeable difference and it also doesn\u0027t negate the need for multiple\norder allocation which can fail under memory pressure or high\nfragmentation although it does lower the highest order necessary by\none when the buffer size isn\u0027t power of two.\n\nAs the first step to remove the custom buffer management, this patch\nmakes ide-tape allocate single continous buffer.  The maximum order is\nfour.  I doubt the change would cause any trouble but if it ever\nmatters, it should be converted to regular sg mechanism like everyone\nelse and even in that case dropping custom buffer handling and moving\nto standard mechanism first make sense as an intermediate step.\n\nThis patch makes the first bh to contain the whole buffer and drops\nmulti bh handling code.  Following patches will make further changes.\n\nThis patch has the side effect of killing OOM triggered by allocation\npath and fixing DMA transfers.  Previously, bug in alloc path\ntriggered OOM on command issue and commands were passed to DMA engine\nwithout DMA-mapping all the segments.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "eb6a61bb9543aa54d62595e27206b3d3c0293bcc",
      "tree": "97d165ad28f62ff4754caff4ebde30e0506259d7",
      "parents": [
        "08f370f0a2fb223bf48d0bfa2a173be0393c19dc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:31 2009 +0200"
      },
      "message": "ide-atapi,tape,floppy: allow -\u003epc_callback() to change rq-\u003edata_len\n\nImpact: allow residual count implementation in -\u003epc_callback()\n\nrq-\u003edata_len has two duties - carrying the number of input bytes on\nissue and carrying residual count back to the issuer on completion.\nide-atapi completion callback -\u003epc_callback() is the right place to do\nthis but currently ide-atapi depends on rq-\u003edata_len carrying the\noriginal request size after calling -\u003epc_callback() to complete the pc\nrequest.\n\nThis patch makes ide_pc_intr(), ide_tape_issue_pc() and\nide_floppy_issue_pc() cache length to complete before calling\n-\u003epc_callback() so that it can modify rq-\u003edata_len as necessary.\n\nNote: As using rq-\u003edata_len for two purposes can make cases like this\n      incorrect in subtle ways, future changes will introduce separate\n      field for residual count.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "08f370f0a2fb223bf48d0bfa2a173be0393c19dc",
      "tree": "1e9af2e0941f1c8bd590f32c342676763f451046",
      "parents": [
        "765139ef5f1a4b1d5cb1f1a7a12de7ee61f6500f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:31 2009 +0200"
      },
      "message": "ide-tape,floppy: fix failed command completion after request sense\n\nImpact: fix infinite retry loop\n\nAfter a command failed, ide-tape and floppy inserts REQUEST_SENSE in\nfront of the failed command and according to the result, sets\npc-\u003eretries, flags and errors.  After REQUEST_SENSE is complete, the\nfailed command is again at the front of the queue and if the verdict\nwas to terminate the request, the issue functions tries to complete it\ndirectly by calling drive-\u003epc_callback() and returning ide_stopped.\n\nHowever, drive-\u003epc_callback() doesn\u0027t complete a request.  It only\nprepares for completion of the request.  As a result, this creates an\ninfinite loop where the failed request is retried perpetually.\n\nFix it by actually ending the request by calling ide_complete_rq().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "02e7cf8f848841ca21864ccd019e480b73c323b7",
      "tree": "eb8b88b0b253f7063bfbee063df817fbac6eb60f",
      "parents": [
        "068753203e6cd085664a62e0fc0636e19b148a12"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:30 2009 +0200"
      },
      "message": "ide-cd,atapi: use bio for internal commands\n\nImpact: unify request data buffer handling\n\nrq-\u003edata is used mostly to pass kernel buffer through request queue\nwithout using bio.  There are only a couple of places which still do\nthis in kernel and converting to bio isn\u0027t difficult.\n\nThis patch converts ide-cd and atapi to use bio instead of rq-\u003edata\nfor request sense and internal pc commands.  With previous change to\nunify sense request handling, this is relatively easily achieved by\nadding blk_rq_map_kern() during sense_rq prep and PC issue.\n\nIf blk_rq_map_kern() fails for sense, the error is deferred till sense\nissue and aborts the failed command which triggered the sense.  Note\nthat this is a slim possibility as sense prep is done on each command\nissue, so for the above condition to actually trigger, all preps since\nthe last sense issue till the issue of the request which would require\na sense should fail.\n\n* do_request functions might sleep now.  This should be okay as ide\n  request_fn - do_ide_request() - is invoked only from make_request\n  and plug work.  Make sure this is the case by adding might_sleep()\n  to do_ide_request().\n\n* Functions which access the read sense data before the sense request\n  is complete now should access bio_data(sense_rq-\u003ebio) as the sense\n  buffer might have been copied during blk_rq_map_kern().\n\n* ide-tape updated to map sg.\n\n* cdrom_do_block_pc() now doesn\u0027t have to deal with REQ_TYPE_ATA_PC\n  special case.  Simplified.\n\n* tp_ops-\u003eoutput/input_data path dropped from ide_pc_intr().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "068753203e6cd085664a62e0fc0636e19b148a12",
      "tree": "d3eec62f2ecd5524c89bb7c8d4f482e93a4cc196",
      "parents": [
        "c457ce874a0f3dfa3d5e9f2309789f6f34e24325"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:30 2009 +0200"
      },
      "message": "ide-atapi: convert ide-{floppy,tape} to using preallocated sense buffer\n\nSince we\u0027re issuing REQ_TYPE_SENSE now we need to allow those types of\nrqs in the -\u003edo_request callbacks. As a future improvement, sense_len\nassignment might be unified across all ATAPI devices. Borislav to\ncheck with specs and test.\n\nAs a result, get rid of ide_queue_pc_head() and\ndrive-\u003erequest_sense_rq.\n\ntj: * Init request sense ide_atapi_pc from sense request.  In the\n      longer timer, it would probably better to fold\n      ide_create_request_sense_cmd() into its only current user -\n      ide_floppy_get_format_progress().\n\n    * ide_retry_pc() no longer takes @disk.\n\nCC: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCC: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "ac0b0113ddbab3ed2388132d368c97292f9f3c84",
      "tree": "78a955c9169a03ec364e4021c0ca929c7424ff7a",
      "parents": [
        "d868ca24302e99a0e8a86071ca2c66273edf97d9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:29 2009 +0200"
      },
      "message": "ide-atapi: don\u0027t abuse rq-\u003ebuffer\n\nImpact: rq-\u003ebuffer usage cleanup\n\nide-atapi uses rq-\u003ebuffer as private opaque value for internal special\nrequests.  rq-\u003especial isn\u0027t used for these cases (the only case where\nrq-\u003especial is used is for ide-tape rw requests).  Use rq-\u003especial\ninstead.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "0de57fb93b1daaeaecb658a98b3299ae460c02e9",
      "tree": "619690c0244902c9d7879a309298b5ae20cfe2af",
      "parents": [
        "924cec7789f65ab7f022256f6533ecba0747b5f3"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:41 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:28 2009 +0200"
      },
      "message": "ide-tape: remove back-to-back REQUEST_SENSE detection\n\nImpact: fix an oops which always triggers\n\nide_tape_issue_pc() assumed drive-\u003epc isn\u0027t NULL on invocation when\nchecking for back-to-back request sense issues but drive-\u003epc can be\nNULL and even when it\u0027s not NULL, it\u0027s not safe to dereference it once\nthe previous command is complete because pc could have been freed or\nwas on stack.  Kill back-to-back REQUEST_SENSE detection.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6d7003877c2f0578f1c08f66d05c3f72ef4ae596",
      "tree": "81e2ba44a3b12c1b946adc8a9453506a52405976",
      "parents": [
        "07bd9686c50c2b1f10e48089d4fb836a971f5177"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "message": "ide-atapi: kill unused fields and callbacks\n\nImpact: remove fields and code paths which are no longer necessary\n\nNow that ide-tape uses standard mechanisms to transfer data, special\ncase handling for bh handling can be dropped from ide-atapi.  Drop the\nfollowings.\n\n* pc-\u003ecur_pos, b_count, bh and b_data\n* drive-\u003epc_update_buffers() and pc_io_buffers().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "07bd9686c50c2b1f10e48089d4fb836a971f5177",
      "tree": "8a7b822752850ad43508d8c358ed45ca030a1894",
      "parents": [
        "6bb11dd14f70228f8dab25fd25dabeb9bc74926d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "message": "ide-tape: simplify read/write functions\n\nImpact: cleanup\n\nidetape_chrdev_read/write() functions are unnecessarily complex when\neverything can be handled in a single loop.  Collapse\nidetape_add_chrdev_read/write_request() into the rw functions and\nsimplify the implementation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6bb11dd14f70228f8dab25fd25dabeb9bc74926d",
      "tree": "804b2032537e47d21f577fd849355a191faf715b",
      "parents": [
        "88f1b941c5c94016a59144a3c94c9ca31eb16205"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:03 2009 +0900"
      },
      "message": "ide-tape: use byte size instead of sectors on rw issue functions\n\nImpact: cleanup\n\nByte size is what most issue functions deal with, make\nidetape_queue_rw_tail() and its wrappers take byte size instead of\nsector counts.  idetape_chrdev_read() and write() functions are\nconverted to use tape-\u003ebuffer_size instead of ctl from tape-\u003ecap.\n\nThis cleans up code a little bit and will ease the next r/w\nreimplementation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "88f1b941c5c94016a59144a3c94c9ca31eb16205",
      "tree": "39555fd55b7169903c545c86f56f0394ff2f0c62",
      "parents": [
        "963da55c4b9eeeb2085ca74ba927cf77bce966d4"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "message": "ide-tape: unify r/w init paths\n\nImpact: cleanup\n\nRead and write init paths are almost identical.  Unify them into\nidetape_init_rw().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "963da55c4b9eeeb2085ca74ba927cf77bce966d4",
      "tree": "4eee39ae0ce95d4a07139c92630e5b3015e3e652",
      "parents": [
        "21d9c5d227593d15630ae83a336d1519653e9b8a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "message": "ide-tape: kill idetape_bh\n\nImpact: kill now unnecessary idetape_bh\n\nWith everything using standard mechanisms, there is no need for\nidetape_bh anymore.  Kill it and use tape-\u003ebuf, cur and valid to\ndescribe data buffer instead.\n\nChanges worth mentioning are...\n\n* idetape_queue_rq_tail() now always queue tape-\u003ebuf and and adjusts\n  buffer state properly before completion.\n\n* idetape_pad_zeros() clears the buffer only once.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "21d9c5d227593d15630ae83a336d1519653e9b8a",
      "tree": "00cae13e13a418768354b92bf5e48c2b85625a6d",
      "parents": [
        "35ab8d3251833e4052aa64b09b08195e949518c7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "message": "ide-tape: use standard data transfer mechanism\n\nImpact: use standard way to transfer data\n\nide-tape uses rq in an interesting way.  For r/w requests, rq-\u003especial\nis used to carry a private buffer management structure idetape_bh and\nrq-\u003enr_sectors and current_nr_sectors are initialized to the number of\nidetape blocks which isn\u0027t necessary 512 bytes.  Also,\nrq-\u003ecurrent_nr_sectors is used to report back the residual count in\nunits of idetape blocks.\n\nThis peculiarity taxes both block layer and ide.  ide-atapi has\ndifferent paths and hooks to accomodate it and what a rq means becomes\nquite confusing and making changes at the block layer becomes quite\ndifficult and error-prone.\n\nThis patch makes ide-tape use bio instead.  With the previous patch,\nide-tape currently is using single contiguos buffer so replacing it\nisn\u0027t difficult.  Data buffer is mapped into bio using\nblk_rq_map_kern() in idetape_queue_rw_tail().  idetape_io_buffers()\nand idetape_update_buffers() are dropped and pc-\u003ebh is set to null to\ntell ide-atapi to use standard data transfer mechanism and idetape_bh\nbyte counts are updated by the issuer on completion using the residual\ncount.\n\nThis change also nicely removes the FIXME in ide_pc_intr() where\nide-tape rqs need to be completed using ide_rq_bytes() instead of\nblk_rq_bytes() (although this didn\u0027t really matter as the request\ndidn\u0027t have bio).\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "35ab8d3251833e4052aa64b09b08195e949518c7",
      "tree": "c5502cb57b78625780809a3b65888fdc653b8248",
      "parents": [
        "b3071d190d6757b14af002a9d79832f12de61bce"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "message": "ide-tape: use single continuous buffer\n\nImpact: simpler buffer allocation and handling, kills OOM, fix DMA transfers\n\nide-tape has its own multiple buffer mechanism using struct\nidetape_bh.  It allocates buffer with decreasing order-of-two\nallocations so that it results in minimum number of segments.\nHowever, the implementation is quite complex and works in a way that\nno other block or ide driver works necessitating a lot of special case\nhandling.\n\nThe benefit this complex allocation scheme brings is questionable as\nPIO or DMA the number of segments (16 maximum) doesn\u0027t make any\nnoticeable difference and it also doesn\u0027t negate the need for multiple\norder allocation which can fail under memory pressure or high\nfragmentation although it does lower the highest order necessary by\none when the buffer size isn\u0027t power of two.\n\nAs the first step to remove the custom buffer management, this patch\nmakes ide-tape allocate single continous buffer.  The maximum order is\nfour.  I doubt the change would cause any trouble but if it ever\nmatters, it should be converted to regular sg mechanism like everyone\nelse and even in that case dropping custom buffer handling and moving\nto standard mechanism first make sense as an intermediate step.\n\nThis patch makes the first bh to contain the whole buffer and drops\nmulti bh handling code.  Following patches will make further changes.\n\nThis patch has the side effect of killing OOM triggered by allocation\npath and fixing DMA transfers.  Previously, bug in alloc path\ntriggered OOM on command issue and commands were passed to DMA engine\nwithout DMA-mapping all the segments.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "b3071d190d6757b14af002a9d79832f12de61bce",
      "tree": "b31e5d2ca6c9a86110b64811faf817bbb49d0d9c",
      "parents": [
        "ea7066afcd590e4663e6dc010f93704164050f48"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "message": "ide-atapi,tape,floppy: allow -\u003epc_callback() to change rq-\u003edata_len\n\nImpact: allow residual count implementation in -\u003epc_callback()\n\nrq-\u003edata_len has two duties - carrying the number of input bytes on\nissue and carrying residual count back to the issuer on completion.\nide-atapi completion callback -\u003epc_callback() is the right place to do\nthis but currently ide-atapi depends on rq-\u003edata_len carrying the\noriginal request size after calling -\u003epc_callback() to complete the pc\nrequest.\n\nThis patch makes ide_pc_intr(), ide_tape_issue_pc() and\nide_floppy_issue_pc() cache length to complete before calling\n-\u003epc_callback() so that it can modify rq-\u003edata_len as necessary.\n\nNote: As using rq-\u003edata_len for two purposes can make cases like this\n      incorrect in subtle ways, future changes will introduce separate\n      field for residual count.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ea7066afcd590e4663e6dc010f93704164050f48",
      "tree": "7668e57499a7a6d3ebecf89b1a8dec1c801827ed",
      "parents": [
        "fc38b521dcffcb07447cd98fedc56f495c10b90d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 08:46:02 2009 +0900"
      },
      "message": "ide-tape,floppy: fix failed command completion after request sense\n\nImpact: fix infinite retry loop\n\nAfter a command failed, ide-tape and floppy inserts REQUEST_SENSE in\nfront of the failed command and according to the result, sets\npc-\u003eretries, flags and errors.  After REQUEST_SENSE is complete, the\nfailed command is again at the front of the queue and if the verdict\nwas to terminate the request, the issue functions tries to complete it\ndirectly by calling drive-\u003epc_callback() and returning ide_stopped.\n\nHowever, drive-\u003epc_callback() doesn\u0027t complete a request.  It only\nprepares for completion of the request.  As a result, this creates an\ninfinite loop where the failed request is retried perpetually.\n\nFix it by actually ending the request by calling ide_complete_rq().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5c4be57249e2e09136446597d2fe2a967c6ffef0",
      "tree": "02509609a80013e0e1e3d447ddc41805f014cc50",
      "parents": [
        "6b544fcc8cd0a04eb42de9d1ecdd345e979d6ada"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "message": "ide-cd,atapi: use bio for internal commands\n\nImpact: unify request data buffer handling\n\nrq-\u003edata is used mostly to pass kernel buffer through request queue\nwithout using bio.  There are only a couple of places which still do\nthis in kernel and converting to bio isn\u0027t difficult.\n\nThis patch converts ide-cd and atapi to use bio instead of rq-\u003edata\nfor request sense and internal pc commands.  With previous change to\nunify sense request handling, this is relatively easily achieved by\nadding blk_rq_map_kern() during sense_rq prep and PC issue.\n\nIf blk_rq_map_kern() fails for sense, the error is deferred till sense\nissue and aborts the failed command which triggered the sense.  Note\nthat this is a slim possibility as sense prep is done on each command\nissue, so for the above condition to actually trigger, all preps since\nthe last sense issue till the issue of the request which would require\na sense should fail.\n\n* do_request functions might sleep now.  This should be okay as ide\n  request_fn - do_ide_request() - is invoked only from make_request\n  and plug work.  Make sure this is the case by adding might_sleep()\n  to do_ide_request().\n\n* Functions which access the read sense data before the sense request\n  is complete now should access bio_data(sense_rq-\u003ebio) as the sense\n  buffer might have been copied during blk_rq_map_kern().\n\n* ide-tape updated to map sg.\n\n* cdrom_do_block_pc() now doesn\u0027t have to deal with REQ_TYPE_ATA_PC\n  special case.  Simplified.\n\n* tp_ops-\u003eoutput/input_data path dropped from ide_pc_intr().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "6b544fcc8cd0a04eb42de9d1ecdd345e979d6ada",
      "tree": "f7c4d669de2c6ca01eecb97daf04dcef47faa916",
      "parents": [
        "746d5e43274e9ea6cbd58818afc9239d41fb4e1e"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "message": "ide-atapi: convert ide-{floppy,tape} to using preallocated sense buffer\n\nSince we\u0027re issuing REQ_TYPE_SENSE now we need to allow those types of\nrqs in the -\u003edo_request callbacks. As a future improvement, sense_len\nassignment might be unified across all ATAPI devices. Borislav to\ncheck with specs and test.\n\nAs a result, get rid of ide_queue_pc_head() and\ndrive-\u003erequest_sense_rq.\n\ntj: * Init request sense ide_atapi_pc from sense request.  In the\n      longer timer, it would probably better to fold\n      ide_create_request_sense_cmd() into its only current user -\n      ide_floppy_get_format_progress().\n\n    * ide_retry_pc() no longer takes @disk.\n\nCC: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCC: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "c267cc1c4db4ccb3406d045a8da8660f0bbfe08d",
      "tree": "f462e0fa6d32b79e0145cbde5850711c2c5851cc",
      "parents": [
        "eace4cb04c0edc9388e987bf9bbdef461f6daca4"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:42 2009 +0900"
      },
      "message": "ide-atapi: don\u0027t abuse rq-\u003ebuffer\n\nImpact: rq-\u003ebuffer usage cleanup\n\nide-atapi uses rq-\u003ebuffer as private opaque value for internal special\nrequests.  rq-\u003especial isn\u0027t used for these cases (the only case where\nrq-\u003especial is used is for ide-tape rw requests).  Use rq-\u003especial\ninstead.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "1e75540ec5202cae63cd238c86bd880e3d496546",
      "tree": "e3a37e13a18175a565d3bb8bc2dfd3fc94c17b88",
      "parents": [
        "6f41469c627fe118121dfce2a8134ad24da3df28"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:41 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:41 2009 +0900"
      },
      "message": "ide-tape: remove back-to-back REQUEST_SENSE detection\n\nImpact: fix an oops which always triggers\n\nide_tape_issue_pc() assumed drive-\u003epc isn\u0027t NULL on invocation when\nchecking for back-to-back request sense issues but drive-\u003epc can be\nNULL and even when it\u0027s not NULL, it\u0027s not safe to dereference it once\nthe previous command is complete because pc could have been freed or\nwas on stack.  Kill back-to-back REQUEST_SENSE detection.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "d93bc4521c80e9d87767779814e88f6d725453d7",
      "tree": "6c373208132f687e4ffb31db6c60e2a8638f6080",
      "parents": [
        "9f5af4d667a6d4ebd66019b4b26b445ddbae6d6c"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Mar 31 20:15:26 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Mar 31 20:15:26 2009 +0200"
      },
      "message": "ide-{floppy,tape}: fix padding for PIO transfers\n\n* Return number of bytes left to transfer from idetape_{in,out}put_buffers()\n  and number of bytes done from ide_tape_io_buffers().\n\n* Fix padding for PIO transfers in ide_pc_intr() so read/write buffers are\n  always completely processed and then the transfer is padded if necessary.\n\n* Remove invalid error messages.\n\n* Remove now superfluous padding from ide{_io_buffers,tape_input_buffers}().\n\nWhile at it:\n\n* Set pc-\u003ebh to NULL in idetape_input_buffers() after all bh-s are done.\n\n* Cache !!(pc-\u003eflags \u0026 PC_FLAG_WRITING) in local variable in ide_pc_intr().\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "41fa9f863baacd32dd049daf8050d55a0c9e6f1a",
      "tree": "44cc612753746cd459e122f102c72f33b36aa6b7",
      "parents": [
        "b5479167f4206e0d821a51ae149d921cd7a58e54"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Mar 31 20:15:25 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Mar 31 20:15:25 2009 +0200"
      },
      "message": "ide: decrease size of -\u003epc_buf field in struct ide_atapi_pc\n\nstruct ide_atapi_pc is often allocated on the stack and size of -\u003epc_buf\nsize is 256 bytes.  However since only ide_floppy_create_read_capacity_cmd()\nand idetape_create_inquiry_cmd() require such size allocate buffers for\nthese pc-s explicitely and decrease -\u003epc_buf size to 64 bytes.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "b788ee9c6561fd9219a503216284d61036a0dc0b",
      "tree": "d83198a6c1a38661e60ac7454d1d82889c0472b3",
      "parents": [
        "2298169418f43ba5e0919762a4bab95a1227872a"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:46 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:46 2009 +0100"
      },
      "message": "ide: use do_rw_taskfile() for ATA_CMD_PACKET commands\n\n* Pass command to ide_issue_pc() and update -\u003edo_request methods\n  in ide-{cd,floppy,tape}.c accordingly.\n\n* Convert ide_pktcmd_tf_load() to ide_init_packet_cmd() which\n  just initializes command structure and use do_rw_taskfile()\n  to load ATA_CMD_PACKET commands.\n\nWhile at it:\n\n* Rename ide{floppy,tape}_issue_pc() to ide_{floppy,tape}_issue_pc().\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "130e886708d6e11f3d54e5d27c266578de56f343",
      "tree": "af6c09224bd1aa21119c052cd3664719916ec795",
      "parents": [
        "ba7d479c36dde12821c01ad0696d678635b8fb92"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:45 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:45 2009 +0100"
      },
      "message": "ide: remove ide_end_request()\n\n* Add ide_rq_bytes() helper.\n\n* Add blk_noretry_request() quirk to ide_complete_rq() (currently only fs\n  requests can be marked as \"noretry\" so there is no change in behavior).\n\n* Switch current ide_end_request() users to use ide_complete_rq().\n\n  [ No need to check for rq-\u003enr_sectors \u003d\u003d 0 in {ide_dma,task_pio}_intr(),\n    nsectors \u003d\u003d 0 in cdrom_end_request() and err \u003d\u003d 0 in ide_do_devset(). ]\n\n* Remove no longer needed ide_end_request().\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "f974b196f58fe042c7b2b4c0ee15d5a6112dbf40",
      "tree": "b717d35a8d6b3c60aa7a95ca1a1002918cb678a1",
      "parents": [
        "a9587fd8c48415cc93fef7f4ba7748a5d3477e7b"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:44 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:44 2009 +0100"
      },
      "message": "ide: pass number of bytes to complete to ide_complete_rq()\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "89f78b3261f7e331e41753ea2459fbb9b60a6f7a",
      "tree": "f294393d4d4a1db653c5f0ce7b5504ff589e4a3b",
      "parents": [
        "6902a5331256e1b9f4cef95a1e3622252113b260"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:43 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:43 2009 +0100"
      },
      "message": "ide: move rq-\u003eerrors quirk out from ide_end_request()\n\nMove rq-\u003eerrors quirk out from ide_end_request() to its call sites.\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6902a5331256e1b9f4cef95a1e3622252113b260",
      "tree": "f33ef1a732425e1862fcf0bbd0e909f82d247a8a",
      "parents": [
        "37245aabfa0c628ba884cd88fe5cd633b426a1b2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:43 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:43 2009 +0100"
      },
      "message": "ide: pass error value to ide_complete_rq()\n\nSet rq-\u003eerrors at ide_complete_rq() call sites and then pass\nerror value to ide_complete_rq().\n\n[ Some rq-\u003eerrors assignments look really wrong but this patch\n  leaves them alone to not introduce too many changes at once. ]\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "03a2faaea8f44edfe583ddf1240948019becfbe4",
      "tree": "08cb1f71390aa1972ad4eb9eba7da48ac3a6d9ce",
      "parents": [
        "3ee38302ffc63da93eb0313053a990bb3466e275"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:36 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:36 2009 +0100"
      },
      "message": "ide: return request status from -\u003epc_callback method\n\nMake -\u003epc_callback method return request status and then move\nthe request completion from -\u003epc_callback to ide_pc_intr().\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "3ee38302ffc63da93eb0313053a990bb3466e275",
      "tree": "b8d66e808fd6d55972adc29ce072deaf2483af6c",
      "parents": [
        "313afea7f25cc6d420179e0b316499c164e3e372"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:36 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:36 2009 +0100"
      },
      "message": "ide: remove -\u003eend_request method\n\n* Handle completion of private driver requests explicitly\n  for ide_floppy and ide_tape media in ide_kill_rq().\n\n* Remove no longer needed -\u003eend_request method.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "313afea7f25cc6d420179e0b316499c164e3e372",
      "tree": "573be1b3912d970951ba30c718332c6174ac8144",
      "parents": [
        "c152cc1a90f9680cefa74d9ff9ce36038081ba72"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:34 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:34 2009 +0100"
      },
      "message": "ide-{floppy,tape}: cleanup ide*_end_request()\n\n* ide*_end_request() is only called with uptodate \u003d\u003d 0 or uptodate \u003d\u003d 1\n  so cleanup it accordingly.\n\n* Inline ide*_end_request() content at call sites so the only user left\n  is -\u003eend_request method.\n\n* -\u003eend_request is now used only for private driver requests so remove\n  handling of other requests from ide*_end_request().\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "c152cc1a90f9680cefa74d9ff9ce36038081ba72",
      "tree": "7932faaf671d8ac20d61a2df2cfe43c7919b0d4f",
      "parents": [
        "5e2040fd0a97888952b37243b5868872bbe0f6ac"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:34 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:34 2009 +0100"
      },
      "message": "ide: use -\u003eend_request only for private device driver requests\n\n* Move IDE{FLOPPY,TAPE}_ERROR_* defines to \u003clinux/ide.h\u003e and rename them\n  to IDE_DRV_ERROR_*.\n\n* Handle -\u003eend_request special cases for floppy/tape media in ide_kill_rq().\n\n* Call -\u003eend_request only for private device driver requests.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5e2040fd0a97888952b37243b5868872bbe0f6ac",
      "tree": "f7fa199f04ddb17bea362be4b2decb7f276ce869",
      "parents": [
        "bfdb0b3beb0618dd03e7aa49e2fd3ac360aef370"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:34 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:34 2009 +0100"
      },
      "message": "ide: move -\u003efailed_pc to ide_drive_t\n\nMove -\u003efailed_pc from struct ide_{disk,tape}_obj to ide_drive_t.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "bfdb0b3beb0618dd03e7aa49e2fd3ac360aef370",
      "tree": "50243449b9e06d71eb3c419f7db5f6e4fd02fbd2",
      "parents": [
        "cc495557dfaeca552595cda8cd4427d67aa0142e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:33 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:33 2009 +0100"
      },
      "message": "ide-tape: remove superfluous tape-\u003elock\n\ntape-\u003elock is not needed (-\u003equeue_lock protects queue).\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "a09485df9cda49fbde2766c86eb18a9cae585162",
      "tree": "4dfc6219da40e86aa293621d43c5a71018c7992f",
      "parents": [
        "e120237c0e4d9a83c1380f5ff7b5f2ba31f1c820"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:31 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Mar 27 12:46:31 2009 +0100"
      },
      "message": "ide: move request type specific code from ide_end_drive_cmd() to callers (v3)\n\n* Move request type specific code from ide_end_drive_cmd() to callers.\n\n* Remove stale ide_end_drive_cmd() documentation and drop no longer\n  used \u0027stat\u0027 argument.  Then rename the function to ide_complete_rq().\n\nv2:\n* Fix handling of blk_pm_request() requests in task_no_data_intr().\n\nv3:\n* Some ide_no_data_taskfile() users (HPA code and HDIO_DRIVE_* ioctls\n  handlers) access original command later so we need to update it in\n  ide_complete_task().\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "71bfc7a7c73eaf1f99e309dba60822ba050e3ec5",
      "tree": "6eaf8bc81002fa8f699a5a6e2c790022b19a7742",
      "parents": [
        "e0c6dcd8d4257a129fc813ac68f20b77c6ae2a7a"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Thu Mar 05 16:10:56 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Mar 05 16:10:56 2009 +0100"
      },
      "message": "ide: NULL noise: drivers/ide/ide-*.c\n\nFix this sparse warnings:\n  drivers/ide/ide-disk_proc.c:130:11: warning: Using plain integer as NULL pointer\n  drivers/ide/ide-floppy_proc.c:32:11: warning: Using plain integer as NULL pointer\n  drivers/ide/ide-proc.c:234:11: warning: Using plain integer as NULL pointer\n  drivers/ide/ide-tape.c:2141:11: warning: Using plain integer as NULL pointer\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nCc: trivial@kernel.org\nCc: kernel-janitors@vger.kernel.org\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "8fed43684174b68f04d01d1210fd00536af790df",
      "tree": "df8d5f87c68526267d0ae320173814ed3f417fd5",
      "parents": [
        "d3dd7107f4d843d0f01d0f77d49a7c5449130577"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 25 20:28:24 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 25 20:28:24 2009 +0100"
      },
      "message": "ide: fix refcounting in device drivers\n\nDuring host driver module removal del_gendisk() results in a final\nput on drive-\u003egendev and freeing the drive by drive_release_dev().\n\nConvert device drivers from using struct kref to use struct device\nso device driver\u0027s object holds reference on -\u003egendev and prevents\ndrive from prematurely going away.\n\nAlso fix -\u003eremove methods to not erroneously drop reference on a\nhost driver by using only put_device() instead of ide*_put().\n\nReported-by: Stanislaw Gruszka \u003cstf_xl@wp.pl\u003e\nTested-by: Stanislaw Gruszka \u003cstf_xl@wp.pl\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "627e05daa10896a8f012fa78e8434c07e9e55ea7",
      "tree": "4104df5b2504dce8a26c59d6648e4e89229fc37f",
      "parents": [
        "585e9715c271f7ef171813eb49febf27dea75887"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jan 06 17:20:54 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jan 06 17:20:54 2009 +0100"
      },
      "message": "ide: remove -\u003eerror method from struct ide_driver\n\n* Remove (now superfluous) -\u003eerror method from struct ide_driver.\n\n* Unexport __ide_error() and make it static.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "7f3c868ba78e486bd9d7569f884dd46d8f59bb18",
      "tree": "c52ff0d21b22ae60194a462d565a6caf2518b569",
      "parents": [
        "9892ec5497af1ec38c46974b5a370ba11c636b19"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jan 06 17:20:53 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jan 06 17:20:53 2009 +0100"
      },
      "message": "ide: remove ide_driver_t typedef\n\nWhile at it:\n- s/struct ide_driver_s/struct ide_driver/\n- use to_ide_driver() macro in ide-proc.c\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "b65fac32cfe3b2f98cd472fef400bd1c1340de23",
      "tree": "493a7e30e23e5413a9e5ad6102b8e91ebc02c069",
      "parents": [
        "5b31f855f10d0053e738baa6d91fb6a3fad35119"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jan 06 17:20:50 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Jan 06 17:20:50 2009 +0100"
      },
      "message": "ide: merge ide_hwgroup_t with ide_hwif_t (v2)\n\n* Merge ide_hwgroup_t with ide_hwif_t.\n\n* Cleanup init_irq() accordingly, then remove no longer needed\n  ide_remove_port_from_hwgroup() and ide_ports[].\n\n* Remove now unused HWGROUP() macro.\n\nWhile at it:\n\n* ide_dump_ata_error() fixups\n\nv2:\n* Fix -\u003equirk_list check in do_ide_request()\n  (s/hwif-\u003ecur_dev/prev_port-\u003ecur_dev).\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "28ad91db77755f1c49d79652de11b28ee2cfbf03",
      "tree": "927c7bc473463c331824cef80bd285e43c4debc7",
      "parents": [
        "65a3309e552585c4908e50e3c9736afb764c97c0"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Fri Jan 02 16:12:56 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 02 16:12:56 2009 +0100"
      },
      "message": "ide-atapi: remove timeout arg to ide_issue_pc\n\nThere should be no functionality change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "4cad085efbce8dcc5006b0d1034089758b4fc7ba",
      "tree": "f9aeb0e7eec115e56aada920eefa40b093aec434",
      "parents": [
        "5f25843fa79b7c35097b0ffe8b2c5cc2428d6495"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Fri Jan 02 16:12:53 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jan 02 16:12:53 2009 +0100"
      },
      "message": "ide-cd: move cdrom_timer_expiry to ide-atapi.c\n\n- cdrom_timer_expiry -\u003e ide_cd_expiry\n- remove expiry-arg to ide_issue_pc as it is redundant now\n- ide_debug_log -\u003e debug_log\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "a4600f81393d685043fe2d485cf2b123301f467d",
      "tree": "c5deaf107eb7bf4b9da3e863e0f4b99cca189e89",
      "parents": [
        "b2f21e057dfbaa12acca1e79d9aeb3d9169d2e2e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 10:27:58 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:48:27 2008 -0400"
      },
      "message": "[PATCH] switch ide-tape\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d4430d62fa77208824a37fe6f85ab2831d274769",
      "tree": "5d4d0bca31e63eb208fbebe4f39c912b964c1e4d",
      "parents": [
        "badf8082c33d18b118d3a6f1b32d5ea6b97d3839"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 09:09:22 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:32 2008 -0400"
      },
      "message": "[PATCH] beginning of methods conversion\n\nTo keep the size of changesets sane we split the switch by drivers;\nto keep the damn thing bisectable we do the following:\n\t1) rename the affected methods, add ones with correct\nprototypes, make (few) callers handle both.  That\u0027s this changeset.\n\t2) for each driver convert to new methods.  *ALL* drivers\nare converted in this series.\n\t3) kill the old (renamed) methods.\n\nNote that it _is_ a flagday; all in-tree drivers are converted and by the\nend of this series no trace of old methods remain.  The only reason why\nwe do that this way is to keep the damn thing bisectable and allow per-driver\ndebugging if anything goes wrong.\n\nNew methods:\n\topen(bdev, mode)\n\trelease(disk, mode)\n\tioctl(bdev, mode, cmd, arg)\t\t/* Called without BKL */\n\tcompat_ioctl(bdev, mode, cmd, arg)\n\tlocked_ioctl(bdev, mode, cmd, arg)\t/* Called with BKL, legacy */\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1bddd9e6453ef1c7bc5b6f4ddbf7d31f4aee7a44",
      "tree": "6e82be80cf322be4b90a17a763f4932ece700056",
      "parents": [
        "74f3c8aff36ad6552ea609c8b20bfd588fa16f38"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Sep 02 17:19:43 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:16 2008 -0400"
      },
      "message": "[PATCH] lose the unused file argument in generic_ide_ioctl()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "79cb380397c834a35952d8497651d93b543ef968",
      "tree": "cfeb4b1c69327df9f8885d18fa0d0ef3e547cce4",
      "parents": [
        "9a6eb74d07f9152dd0e0ea551e878e869b8d2fc1"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 17 18:09:13 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 17 18:09:13 2008 +0200"
      },
      "message": "ide: allow device drivers to specify per-device type /proc settings\n\nTurn ide_driver_t\u0027s \u0027proc\u0027 field into -\u003eproc_entries method\n(and also \u0027settings\u0027 field into -\u003eproc_devsets method).  Then\nupdate all device drivers accordingly.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "42619d35c7af2f88cad56425fe3981f1f65ff0bd",
      "tree": "e2de0bfba684bcb8e2d3fd32c52365ce9055e129",
      "parents": [
        "e01286282eef85e4783b06fb2e0ed84fc111eb32"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 17 18:09:11 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 17 18:09:11 2008 +0200"
      },
      "message": "ide: remove IDE_AFLAG_NO_DOORLOCKING\n\nJust use IDE_DFLAG_DOORLOCKING instead.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "3ee074bf432d24a92894397ac48ad2f2bb95efdc",
      "tree": "03faf80fe0e2e29fc68763cfdee949792b5c3e2d",
      "parents": [
        "77997aaadd34510ed73153a4cd60161257a9e289"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 20:03:34 2008 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Oct 16 09:24:45 2008 -0700"
      },
      "message": "device create: ide: convert device_create_drvdata to device_create\n\nNow that device_create() has been audited, rename things back to the\noriginal call to be sane.\n\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4ab3d50224e35811b3351c28e63057595e8406e6",
      "tree": "ccd1a729543defa03df97f0dc0b416f53c793dcc",
      "parents": [
        "a36223b0dc14606b5c80aacbbe6288133693a841"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:43 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:43 2008 +0200"
      },
      "message": "ide: set IDE_AFLAG_DRQ_INTERRUPT in do_identify()\n\nSet IDE_AFLAG_DRQ_INTERRUPT in do_identify() instead of ATAPI\ndevice drivers *_setup() methods.\n\nWhile at it:\n- use ata_id_cdb_intr()\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "0ae4b3199ab1b6d511c6e0948e92049c272a346a",
      "tree": "73840e552453e1ef260de880aa8214a65227aa57",
      "parents": [
        "c39220483ebe6871fb129d4b2236cd95290c41fc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:37 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:37 2008 +0200"
      },
      "message": "ide: remove superfluous -\u003emedia field from ide_driver_t\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "97100fc816badbbc162644cfde7ad39ae9211fb4",
      "tree": "904faf5453c2dea32fa3fde5fda230118f3effda",
      "parents": [
        "be3c096ebdbe3c828aacb5473751a22840753eff"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:36 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:36 2008 +0200"
      },
      "message": "ide: add device flags\n\nAdd \u0027unsigned long dev_flags\u0027 to ide_drive_t and convert bitfields\nto IDE_DFLAG_* flags.\n\nWhile at it:\n- IDE_DFLAG_ADDRESSING -\u003e IDE_DFLAG_LBA48\n- fixup some comments\n- remove needless g-\u003eflags zeroing from ide*_probe()\n\nThere should be no functional changes caused by this patch.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5aeddf907f149cae7e19b7c23ccea3823d00698c",
      "tree": "c3507ed9a078f94bb091ed6557f570927b34f255",
      "parents": [
        "91ddc9988efeaed487eb7dd81d2557e1b1d501ef"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@googlemail.com",
        "time": "Mon Oct 13 21:39:34 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:34 2008 +0200"
      },
      "message": "ide: unify conversion macros\n\nIntroduce to_ide_drv() and ide_drv_g() macros and replace the respective\ndefinitions of similar ones in each driver.\n\nThere should be no functionality change resulting from this patch.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "baf08f0be6d986521bb2fbdc7af51fc4847da734",
      "tree": "5ac765703ad79edeafc6eec39fe42850bd6b5dc6",
      "parents": [
        "aa5d2de7b080873f6d9ac3aede423c9713bf0caa"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "message": "ide: make ide_transfer_pc() static\n\n* Move -\u003eticks field from struct ide_floppy_obj to ide_drive_t.\n\n* Move idefloppy_transfer_pc() to ide-atapi.c and make\n  ide_transfer_pc() use it.\n\n* Always use ide_transfer_pc as a handler in ide_issue_pc().\n\n* Remove no longer used idefloppy_start_pc_transfer(),\n  ide*_transfer_pc() and \u0027handler\u0027 argument from ide_issue_pc().\n\n* Make ide_transfer_pc() static.\n\nWhile at it:\n\n* idefloppy_transfer_pc() -\u003e ide_delayed_transfer_pc()\n\n* IDEFLOPPY_TICKS_DELAY -\u003e IDEFLOPPY_PC_DELAY\n\n* -\u003eticks -\u003e -\u003epc_delay\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "aa5d2de7b080873f6d9ac3aede423c9713bf0caa",
      "tree": "babf0dbf6a7d7e545053736e5ae6976faddabfd7",
      "parents": [
        "85e39035ca381846b031690f4d1ac1f0660da0a2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "message": "ide: make ide_pc_intr() static\n\n* Always use ide_pc_intr as a handler in ide_pc_intr().\n\n* Remove no longer used ide*_pc_intr() and \u0027handler\u0027\n  argument from ide_{transfer_pc,pc_intr}().\n\n* Make ide_pc_intr() static.\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "85e39035ca381846b031690f4d1ac1f0660da0a2",
      "tree": "ebdf6b4b173e3e11ce876b8b7b91651a60945f91",
      "parents": [
        "6b0da28b2d0f4f4e2c55689fc062db569075ff60"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "message": "ide: add -\u003epc_{update,io}_buffers methods\n\nAdd -\u003epc_{update,io}_buffers methods to ide_drive_t and use\nthem instead of {update,io}_buffers ide_pc_intr() arguments.\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6b0da28b2d0f4f4e2c55689fc062db569075ff60",
      "tree": "e7113f6db70fe3c2dd16bd2e7e1538fba4236c49",
      "parents": [
        "67c56364df843fb9e3ed1af014b8fbe4b22ff25d"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:32 2008 +0200"
      },
      "message": "ide: add ide_retry_pc() helper\n\n* Add ide_create_request_sense_cmd() and ide_retry_pc() helpers\n  and convert ide-{atapi,floppy,tape}.c to use them.\n\n* Remove no longer used ide*_create_request_sense_cmd(),\n  ide*_retry_pc() and \u0027retry_pc\u0027 argument from ide_pc_intr().\n\n* Make ide_queue_pc_head() static.\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "67c56364df843fb9e3ed1af014b8fbe4b22ff25d",
      "tree": "586a85b1535038dea95ef2b0bff9f7d6c9fa442e",
      "parents": [
        "844b9468523c8c2c45b90df4efcabcbe4926b5ab"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:31 2008 +0200"
      },
      "message": "ide: add request_sense_{pc,rq} to ide_drive_t\n\nAdd \u0027struct ide_atapi_pc request_sense_pc\u0027 and \u0027request request_sense_rq\u0027 to\nide_drive_t and use them instead of fields in struct ide_{floppy,tape}_obj.\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "844b9468523c8c2c45b90df4efcabcbe4926b5ab",
      "tree": "64d239e810c6f143f6d3206fc37200af47f9eee0",
      "parents": [
        "2b9efba48283f34083df6bc53f6752fba4e4d409"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:31 2008 +0200"
      },
      "message": "ide: drop \u0027timeout\u0027 and \u0027expiry\u0027 arguments from ide_pc_intr()\n\n* Move idescsi_expiry() to ide-atapi.c.\n\n* Move get_timeout() to \u003clinux/ide.h\u003e.\n\n* Drop \u0027timeout\u0027 and \u0027expiry\u0027 arguments from ide_pc_intr().\n\nWhile at it:\n\n* idescsi_expiry() -\u003e ide_scsi_expiry()\n\n* get_timeout() -\u003e ide_scsi_get_timeout()\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "2b9efba48283f34083df6bc53f6752fba4e4d409",
      "tree": "215d86f1934c896f8ec609ab033b69bf5b99e217",
      "parents": [
        "b14c72127fbe8f97e49de7437520175673f7306a"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:31 2008 +0200"
      },
      "message": "ide: add pointer to the current packet command to ide_drive_t\n\n* Add pointer to the current packet command (struct ide_atapi_pc *pc)\n  to ide_drive_t and use it instead of the pointer in struct ide_*_obj.\n\n* Use drive-\u003epc in ide_{issue,transfer}_pc() and ide_pc_intr()\n  instead of \u0027pc\u0027 argument.\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "b14c72127fbe8f97e49de7437520175673f7306a",
      "tree": "7cf54dd800cbb004cd44a947f2a4530fe132a26b",
      "parents": [
        "9b5a18e19f8c610c270ee9a0ba03177d737f6aa5"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:30 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Oct 13 21:39:30 2008 +0200"
      },
      "message": "ide: drop dsc_handle argument from ide_pc_intr()\n\n* Add \u0027int dsc\u0027 argument to -\u003epc_callback method.\n\n* Call ide_tape_handle_dsc() internally in ide_tape_callback()\n  if dsc argument is set and update ide_pc_intr() accordingly.\n\nThere should be no functional changes caused by this patch.\n\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "92f1f8fd8040e7b50a67a850a935509bb01201bb",
      "tree": "df27468982bc64f0a6fdc54f05153e382ca63a1b",
      "parents": [
        "d6e2955a6b82d2312b5ff885ce13c8ab54d59d96"
      ],
      "author": {
        "name": "Elias Oltmanns",
        "email": "eo@nebensachen.de",
        "time": "Fri Oct 10 22:39:40 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:40 2008 +0200"
      },
      "message": "ide: Remove ide_spin_wait_hwgroup() and use special requests instead\n\nUse a special request for serialisation purposes and get rid of the\nawkward ide_spin_wait_hwgroup(). This also involves converting the\nide_devset structure so it can be shared by the /proc and the ioctl code.\n\nSigned-off-by: Elias Oltmanns \u003ceo@nebensachen.de\u003e\n[bart: use rq-\u003ecmd[] directly]\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "d6e2955a6b82d2312b5ff885ce13c8ab54d59d96",
      "tree": "f8bc72a2f60218f2d14883b6b54b9454499ed158",
      "parents": [
        "de699ad595fb45022d1b049ed91ffd06fdd16c13"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:39 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:39 2008 +0200"
      },
      "message": "ide: move IDE{FLOPPY,TAPE}_WAIT_CMD defines to \u003clinux/ide.h\u003e\n\nWhile at it:\n\n* IDE{FLOPPY,TAPE}_WAIT_CMD -\u003e WAIT_{FLOPPY,TAPE}_CMD\n\n* Use enum for WAIT_* defines.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "de699ad595fb45022d1b049ed91ffd06fdd16c13",
      "tree": "9fc467c912faafb4d1bd5e16de5fbf537ef2c2f6",
      "parents": [
        "0c8a6c7aead1d3be85ce53e3aaacd52e38ede03e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:39 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:39 2008 +0200"
      },
      "message": "ide: add ide_do_test_unit_ready() helper\n\n* Add ide_do_test_unit_ready() helper and convert ide-{floppy,tape}.c\n  to use it.\n\n* Remove no longer used idetape_create_test_unit_ready_cmd().\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "0c8a6c7aead1d3be85ce53e3aaacd52e38ede03e",
      "tree": "2d43e9303f10c0f06b45bc97e661f0156aaf57da",
      "parents": [
        "0578042db3191e1ac76b53d213f2a691c3e1eaed"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:39 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:39 2008 +0200"
      },
      "message": "ide: add ide_do_start_stop() helper\n\n* Add ide_do_start_stop() helper and convert ide-{floppy,tape}.c\n  to use it.\n\n* Remove no longer used idefloppy_create_start_stop_cmd()\n  and idetape_create_load_unload_cmd().\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    }
  ],
  "next": "0578042db3191e1ac76b53d213f2a691c3e1eaed"
}
