)]}'
{
  "log": [
    {
      "commit": "489f7ab6c18cdd64a2d444e056d60a0e722f4ad7",
      "tree": "2c7ed6a0042dc15c91ece08c5a3866f610ddca6d",
      "parents": [
        "b322b7816908487c08b89b72f838174c37d8c836",
        "82d27b2b2f3a80ffa7759a49b9cba39e47df476e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 14 13:46:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 14 13:46:25 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (31 commits)\n  trivial: remove the trivial patch monkey\u0027s name from SubmittingPatches\n  trivial: Fix a typo in comment of addrconf_dad_start()\n  trivial: usb: fix missing space typo in doc\n  trivial: pci hotplug: adding __init/__exit macros to sgi_hotplug\n  trivial: Remove the hyphen from git commands\n  trivial: fix ETIMEOUT -\u003e ETIMEDOUT typos\n  trivial: Kconfig: .ko is normally not included in module names\n  trivial: SubmittingPatches: fix typo\n  trivial: Documentation/dell_rbu.txt: fix typos\n  trivial: Fix Pavel\u0027s address in MAINTAINERS\n  trivial: ftrace:fix description of trace directory\n  trivial: unnecessary (void*) cast removal in sound/oss/msnd.c\n  trivial: input/misc: Fix typo in Kconfig\n  trivial: fix grammo in bus_for_each_dev() kerneldoc\n  trivial: rbtree.txt: fix rb_entry() parameters in sample code\n  trivial: spelling fix in ppc code comments\n  trivial: fix typo in bio_alloc kernel doc\n  trivial: Documentation/rbtree.txt: cleanup kerneldoc of rbtree.txt\n  trivial: Miscellaneous documentation typo fixes\n  trivial: fix typo milisecond/millisecond for documentation and source comments.\n  ...\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": "4737f0978d6e64eae468e01fa181abf6499e6b84",
      "tree": "44871914422157121d4a68d376e60d1b1e7f1f92",
      "parents": [
        "3226224039c8f8cb840d236b5f27d2a1104789e2"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Fri Jun 05 00:44:53 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:50 2009 +0200"
      },
      "message": "trivial: Kconfig: .ko is normally not included in module names\n\n.ko is normally not included in Kconfig help, make it consistent.\n\nSigned-off-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "19af5cdb7c79ff5ec96a99893ffb7f894f4a3dc1",
      "tree": "09e855da51df91fc35e98b26e420f26e84305cff",
      "parents": [
        "98a1708de1bfa5fe1c490febba850d6043d3c7fa"
      ],
      "author": {
        "name": "Martin Olsson",
        "email": "martin@minimum.se",
        "time": "Thu Apr 23 11:37:37 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jun 12 18:01:46 2009 +0200"
      },
      "message": "trivial: fix typo milisecond/millisecond for documentation and source comments.\n\nSigned-off-by: Martin Olsson \u003cmartin@minimum.se\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\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": "27951daa71f1c91300ae4de9441916d1ffe2b078",
      "tree": "72d9ecde8c784c0837b7caf64b97fac5ffd5a424",
      "parents": [
        "59c288ffb6dfb55bdd6bfe6826ab6203ff791930",
        "e8e7526c3c0863be25ab03a0871ee0978de5ba50"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:00:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 11 10:00:03 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: (28 commits)\n  ide-tape: fix debug call\n  alim15x3: Remove historical hacks, re-enable init_hwif for PowerPC\n  ide-dma: don\u0027t reset request fields on dma_timeout_retry()\n  ide: drop rq-\u003edata handling from ide_map_sg()\n  ide-atapi: kill unused fields and callbacks\n  ide-tape: simplify read/write functions\n  ide-tape: use byte size instead of sectors on rw issue functions\n  ide-tape: unify r/w init paths\n  ide-tape: kill idetape_bh\n  ide-tape: use standard data transfer mechanism\n  ide-tape: use single continuous buffer\n  ide-atapi,tape,floppy: allow -\u003epc_callback() to change rq-\u003edata_len\n  ide-tape,floppy: fix failed command completion after request sense\n  ide-pm: don\u0027t abuse rq-\u003edata\n  ide-cd,atapi: use bio for internal commands\n  ide-atapi: convert ide-{floppy,tape} to using preallocated sense buffer\n  ide-cd: convert to using generic sense request\n  ide: add helpers for preparing sense requests\n  ide-cd: don\u0027t abuse rq-\u003ebuffer\n  ide-atapi: don\u0027t abuse rq-\u003ebuffer\n  ...\n"
    },
    {
      "commit": "ad7c52d0988a8965989dc06d630c52a5bde849d5",
      "tree": "e0500a523bf85b9957001d0ff5d9fb7701315245",
      "parents": [
        "5df3bc2d35bd5cd08053f71679b27577b42676d6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Jun 10 14:37:21 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Jun 10 14:37:21 2009 +0200"
      },
      "message": "ide: re-implement ide_pci_init_one() on top of ide_pci_init_two()\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5df3bc2d35bd5cd08053f71679b27577b42676d6",
      "tree": "e187ddd0bfa82f161f00bee0b713441802c5a9d6",
      "parents": [
        "5f4417a156a6e44359effa9492de3ed5638a9b13"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Jun 10 14:37:21 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Jun 10 14:37:21 2009 +0200"
      },
      "message": "ide: unexport ide_find_dma_mode()\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5f4417a156a6e44359effa9492de3ed5638a9b13",
      "tree": "7868d60ce2c0b38b07727090c865d04fa93a622d",
      "parents": [
        "a20b2a44eca52818ef52a94959480b7e6ea2f528"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Wed Jun 10 14:37:20 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Jun 10 14:37:20 2009 +0200"
      },
      "message": "ide: fix PowerMac bootup oops\n\nPowerMac bootup with CONFIG_IDE\u003dy oopses in ide_pio_cycle_time():\nbecause \"ide: try to use PIO Mode 0 during probe if possible\" causes\npmac_ide_set_pio_mode() to be called before drive-\u003eid has been set.\n\nBart points out other places which now need drive-\u003eid set earlier,\nso follow his advice to allocate it in ide_port_alloc_devices()\n(using kzalloc_node, without error message, as when allocating drive)\nand memset it for reuse in ide_port_init_devices_data().\n\nFixed in passing: ide_host_alloc() was missing ide_port_free_devices()\nfrom an error path.\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: Joao Ramos \u003cjoao.ramos@inov.pt\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "a20b2a44eca52818ef52a94959480b7e6ea2f528",
      "tree": "1e9fb4ee969b81978e35a59e6a16c176a8b19a29",
      "parents": [
        "75c2d7d71a85d02594da07d5d2ad587451b64b02"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jun 08 22:07:28 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Jun 08 22:07:28 2009 +0200"
      },
      "message": "ide: skip probe if there are no devices on the port (v2)\n\nIn ide_probe_port() skip probe if ide_port_wait_ready() returns -ENODEV\nand print error message instead of debug one if it returns -EBUSY.\n\nv2:\nFix the default \u0027rc\u0027 value.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "75c2d7d71a85d02594da07d5d2ad587451b64b02",
      "tree": "289db9c67cdcbdf950170a98e22d13c1345604ea",
      "parents": [
        "9d01e4cd7eb4a70b04cf5a5b4f79c99e8e3e3edc"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.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": "sl82c105: add printk() logging facility\n\nAdd missing printk() logging facility in sl82c105_dma_lost_irq().\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\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": "734affdcae20af4fec95e46a64fb29f063a15c19",
      "tree": "68b3867575b363253fca17dcd239664149a6f1a2",
      "parents": [
        "8bc1e5aa06a2a9a425c4a6795fc564cba1521487"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:10 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:10 2009 +0200"
      },
      "message": "ide: add IDE_DFLAG_NIEN_QUIRK device flag\n\nAdd IDE_DFLAG_NIEN_QUIRK device flag and use it instead of\ndrive-\u003equirk_list.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "8bc1e5aa06a2a9a425c4a6795fc564cba1521487",
      "tree": "16f9e58bf832d1caaf1b7962f670c10a951cc056",
      "parents": [
        "0fcef027f60318cfa64ae4cdf5aa33905607d650"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:09 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:09 2009 +0200"
      },
      "message": "ide: respect quirk_drives[] list on all controllers\n\n* Add ide_check_nien_quirk_list() helper to the core code\n  and then use it in ide_port_tune_devices().\n\n* Remove no longer needed -\u003equirkproc methods from hpt366.c\n  and pdc202xx_{new,old}.c.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "0fcef027f60318cfa64ae4cdf5aa33905607d650",
      "tree": "048432a855856762445a848b2ac0a623f9413e97",
      "parents": [
        "d328e7657de1fde30141365466589ab259cf4f64"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:08 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:08 2009 +0200"
      },
      "message": "hpt366: enable all quirks for devices on quirk_drives[] list\n\nEnable also quirks in do_reset1() and ide_config_drive_speed()\nfor devices on quirk_drives[] list.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "d328e7657de1fde30141365466589ab259cf4f64",
      "tree": "7f85e4a7a066d054d0876ebb6fbe2c085712fa99",
      "parents": [
        "d6dcdea726855d78048e4bfb950342afc0e83e47"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:07 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:07 2009 +0200"
      },
      "message": "hpt366: sync quirk_drives[] list with pdc202xx_{new,old}.c\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "d6dcdea726855d78048e4bfb950342afc0e83e47",
      "tree": "72443de673b911f3078bb916867143624ef52912",
      "parents": [
        "f9952beeaa851f7f79a4dd895bfed3f3ff6deebc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:07 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:07 2009 +0200"
      },
      "message": "ide: remove superfluous SELECT_MASK() call from do_rw_taskfile()\n\nWith -\u003ewrite_devctl method call (which unmasks drive IRQ) preceding\nSELECT_MASK() call there is really no need for the latter.\n\nMoreover with the combination of HPT36x controller and the drive on\nthe quirk_drives[] list this can result in superfluous enable_irq()\ncall which in turn will trigger WARN() in __enable_irq().\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "f9952beeaa851f7f79a4dd895bfed3f3ff6deebc",
      "tree": "d1ab68325300fb7bc6fbfb86c09cb3e76d5814e9",
      "parents": [
        "dff8817b78e6e6a4913f2caf7637d62dcc49a03c"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.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: remove superfluous SELECT_MASK() call from ide_driveid_update()\n\nWe always call SELECT_MASK(drive, 0) after ide_dev_read_id() call\nso there is no need to do it again in the error path.\n\nMoreover with the combination of HPT36x controller and the drive on\nthe quirk_drives[] list this can result in superfluous enable_irq()\ncall which in turn will trigger WARN() in __enable_irq().\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "dff8817b78e6e6a4913f2caf7637d62dcc49a03c",
      "tree": "2a9864fea9bb685813bdf5745ec7ab51f81c6aa7",
      "parents": [
        "49d8078ad1c3dca5b11ce18391bf6bd9af9acdf5"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.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": "icside: remove superfluous -\u003emaskproc method\n\n[inspired by pata_icside]\n\nEnabling/disabling of card IRQs is handled fine by IRQ and IDE\nsubsystems so there is no need for custom -\u003emaskproc method.\n\nMoreover icside_maskproc() would enable IRQ only if it was already\nenabled [because of \u0027if (state-\u003eenabled \u0026\u0026 !mask)\u0027 check].\n\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": "ffddf1717b0d388879c646eaf6261a2b393c06ad",
      "tree": "a39a6356cbd2f7bdf54dff50e7bac91a75991cb7",
      "parents": [
        "1221e241e3a6f1ff5b0de03d58d871f7c995781b"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.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": "pdc202xx_old: kill resetproc() method\n\nThe driver\u0027s resetproc() method resets both channels at once -- most probably\nby driving RESET- on them.  Not only such reset can severely disturb concurrent\noperations on another channel, it also ensues 2-second delay, while there\u0027s no\napparent reason why SRST reset being performed prior to resetproc() call needs\nto be followed up by another reset.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "1221e241e3a6f1ff5b0de03d58d871f7c995781b",
      "tree": "5df00175d7a279900aedec14855608d37d3ed539",
      "parents": [
        "72b9304f04d0724a25251e9e9041aa95f89c15dd"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Sun Jun 07 15:37:04 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:04 2009 +0200"
      },
      "message": "pdc202xx_old: don\u0027t call pdc202xx_reset() on IRQ timeout\n\nThe driver\u0027s dma_lost_irq() and dma_clear() methods call pdc202xx_reset()\nwhich resets both channels at once -- most probably by driving RESET- on them.\nNot only such reset can severely disturb concurrent operations on another\nchannel, it is also a clear overkill (especially in the first case) and is\ncompletely unexpected and thus not properly handled by the IDE core in this\ncontext (in the second case the usual SRST reset would most probably ensue\nanyway though); it also causes quite arbitrary 2-second delay. Hence, use the\nstandard ide_dma_lost_irq() method and don\u0027t install the optional dma_clear()\nmethod at all -- the driver should do well without this age-old cruft...\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "72b9304f04d0724a25251e9e9041aa95f89c15dd",
      "tree": "57c6536da5a336388de5b93c5b2d65e7db2ec43c",
      "parents": [
        "6250d3af2a1036fb356264442211a4246c7d64c7"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Sun Jun 07 15:37:03 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 15:37:03 2009 +0200"
      },
      "message": "pdc202xx_old: use ide_dma_test_irq()\n\nThe driver\u0027s dma_test_irq() method, although tests some chip specific interrupt\nbits, finally always relies on the SFF-8038i standard interrupt bit.  I see no\npoint in testing the bits that are not trusted anyway -- the driver should be\nfully able to use the standard method implemetation, ide_dma_test_irq().\n\nWith this change \u0027pdc202xx_dma_ops\u0027 finally becomes identical to \u0027sff_dma_ops\u0027,\nand we can get rid of it...\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6250d3af2a1036fb356264442211a4246c7d64c7",
      "tree": "12474d59b96c0dc518159cb694f0e654cb18b5f6",
      "parents": [
        "4c9773ed7946fc375edba057770f5ef16d8b44fe",
        "075affcbe01d4d7cefcd0e30a98df1253bcf8d92"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 14:27:11 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 14:27:11 2009 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n"
    },
    {
      "commit": "075affcbe01d4d7cefcd0e30a98df1253bcf8d92",
      "tree": "ceadcf00f56c5a7a394e689e61734811efe33b82",
      "parents": [
        "e957b60d1583022a0f7c03267d37fcae2ddb78b1"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 13:52:52 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 13:52:52 2009 +0200"
      },
      "message": "ide: preserve Host Protected Area by default (v2)\n\nFrom the perspective of most users of recent systems, disabling Host\nProtected Area (HPA) can break vendor RAID formats, GPT partitions and\nrisks corrupting firmware or overwriting vendor system recovery tools.\n\nUnfortunately the original (kernels \u003c 2.6.30) behavior (unconditionally\ndisabling HPA and using full disk capacity) was introduced at the time\nwhen the main use of HPA was to make the drive look small enough for the\nBIOS to allow the system to boot with large capacity drives.\n\nThus to allow the maximum compatibility with the existing setups (using\nHPA and partitioned with HPA disabled) we automically disable HPA if\nany partitions overlapping HPA are detected.  Additionally HPA can also\nbe disabled using the \"nohpa\" module parameter (i.e. \"ide_core.nohpa\u003d0.0\"\nto disable HPA on /dev/hda).\n\nv2:\nFix -\u003eresume HPA support.\n\nWhile at it:\n- remove stale \"idebus\u003d\" entry from Documentation/kernel-parameters.txt\n\nCc: Robert Hancock \u003chancockrwd@gmail.com\u003e\nCc: Frans Pop \u003celendil@planet.nl\u003e\nCc: \"Andries E. Brouwer\" \u003cAndries.Brouwer@cwi.nl\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\n[patch description was based on input from Alan Cox and Frans Pop]\nEmphatically-Acked-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "e957b60d1583022a0f7c03267d37fcae2ddb78b1",
      "tree": "5e9518eb38d427b9ac41c9b90b31b9b2453aebfc",
      "parents": [
        "db429e9ec0f9dee2d8e50c154f04f29f880fc9d6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 13:52:52 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 13:52:52 2009 +0200"
      },
      "message": "ide-gd: implement block device -\u003eset_capacity method (v2)\n\n* Use -\u003eprobed_capacity to store native device capacity for ATA disks.\n\n* Add -\u003eset_capacity method to struct ide_disk_ops.\n\n* Implement disk device -\u003eset_capacity method for ATA disks.\n\n* Implement block device -\u003eset_capacity method.\n\nv2:\n* Check if LBA and HPA are supported in ide_disk_set_capacity().\n\n* According to the spec the SET MAX ADDRESS command shall be\n  immediately preceded by a READ NATIVE MAX ADDRESS command.\n\n* Add ide_disk_hpa_{get_native,set}_capacity() helpers.\n\nTogether with the previous patch adding -\u003eset_capacity block device\nmethod this allows automatic disabling of Host Protected Area (HPA)\nif any partitions overlapping HPA are detected.\n\nCc: Robert Hancock \u003chancockrwd@gmail.com\u003e\nCc: Frans Pop \u003celendil@planet.nl\u003e\nCc: \"Andries E. Brouwer\" \u003cAndries.Brouwer@cwi.nl\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nEmphatically-Acked-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "669165daad2ec839df85b8c5f7bc155e76a2f404",
      "tree": "8f30dad6d22568f42bf187264f267b80ac88b1e4",
      "parents": [
        "521a415c9f6d4e5463807ce6d36598acabcd204f"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Sun Jun 07 13:52:50 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 13:52:50 2009 +0200"
      },
      "message": "pdc202xx_old: fix resetproc() method\n\npdc202xx_reset() calls pdc202xx_reset_host() twice, for both channels, while\nthat function actually twiddles the single, shared software reset bit -- the\nnet effect is a duplicated reset and horrendous 4 second delay happening not\nonly on a channel reset but also when dma_lost_irq() and dma_clear() methods\nare called.  Fold pdc202xx_reset_host() into pdc202xx_reset(), fix printk(),\nand move it before the actual reset...\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "521a415c9f6d4e5463807ce6d36598acabcd204f",
      "tree": "31c561cbbb304c464bdeaaf54a97055ec2aa42a0",
      "parents": [
        "c339dfdd65b52bfd947ab29d1210314a2f6d622d"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Sun Jun 07 13:52:50 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun Jun 07 13:52:50 2009 +0200"
      },
      "message": "pdc202xx_old: fix \u0027pdc20246_dma_ops\u0027\n\nCommit ac95beedf8bc97b24f9540d4da9952f07221c023 (ide: add struct ide_port_ops\n(take 2)) erroneously converted the driver\u0027s dma_timeout() and dma_lost_irq()\nmethods to call the driver\u0027s resetproc() method regardless of whether it was\ndefined for this specific controller while it hadn\u0027t been defined and hence\ncalled for PDC20246. So the dma_clear() method, the successor of dma_timeout(),\nshouldn\u0027t exist and the dma_lost_irq() method should be standard for PDC20246.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "c339dfdd65b52bfd947ab29d1210314a2f6d622d",
      "tree": "00e096764387f8ba41c5917a3e826eeaec75c34e",
      "parents": [
        "5993856e53fbc4b4f28e2d481deaebeb715b1267"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 30 20:06:54 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 30 20:06:54 2009 +0200"
      },
      "message": "ide_pci_generic: add quirk for Netcell ATA RAID\n\nWe need to explicitly mark words 85-87 as valid ones since\nfirmware doesn\u0027t do it.\n\nThis should fix support for LBA48 and FLUSH CACHE [EXT] command\nwhich stopped working after we applied more strict checking of\nidentify words in:\n\n\tcommit 942dcd85bf8edf38cdc3745306ca250684d99a61\n\t(\"ide: idedisk_supports_lba48() -\u003e ata_id_lba48_enabled()\")\n\nand\n\n\tcommit 4b58f17d7c45a8e5f4acda641bec388398b9c0fa\n\t(\"ide: ide_id_has_flush_cache() -\u003e ata_id_flush_enabled()\")\n\nReported-and-tested-by: \"Trevor Hemsley\" \u003ctrevor.hemsley@ntlworld.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "3b77f777b8f1c001b63e317c4ce317292ff0ff94",
      "tree": "50870b78a433b52e04781d67ffcbd05f1a535d33",
      "parents": [
        "c72758f33784e5e2a1a4bb9421ef3e6de8f9fcf3"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Sat May 23 08:23:16 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sat May 23 08:23:16 2009 +0200"
      },
      "message": "ide-disk: fix missing max_sectors accessor function\n\nThe recent move to accessor functions for querying queue limits\nmissed an entry in ide-disk.c:\n\ndrivers/ide/ide-disk.c: In function ‘ide_disk_setup’:\ndrivers/ide/ide-disk.c:642: error: ‘struct request_queue’ has no member named ‘max_sectors’\n\nFix it.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1",
      "tree": "d60d15a082171c58ac811d547d51a9c3119f23e3",
      "parents": [
        "9bd7de51ee8537094656149eaf45338cadb7d7d4"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:49 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Do away with the notion of hardsect_size\n\nUntil now we have had a 1:1 mapping between storage device physical\nblock size and the logical block sized used when addressing the device.\nWith SATA 4KB drives coming out that will no longer be the case.  The\nsector size will be 4KB but the logical block size will remain\n512-bytes.  Hence we need to distinguish between the physical block size\nand the logical ditto.\n\nThis patch renames hardsect_size to logical_block_size.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9bd7de51ee8537094656149eaf45338cadb7d7d4",
      "tree": "a691987319dfcdb07de2bce619746f88d26882c4",
      "parents": [
        "e4b636366c00738b9609cda307014d71b1225b7f",
        "6a44587ee716ac911082cbdec766e5b3f051c071"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:28:35 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:28:35 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-2.6.31\n\nConflicts:\n\tdrivers/ide/ide-io.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "e4b636366c00738b9609cda307014d71b1225b7f",
      "tree": "760b67b3624eda62e943e48ce93635c30a5b47bf",
      "parents": [
        "b9ed7252d219c1c663944bf03846eabb515dbe75",
        "279e677faa775ad16e75c32e1bf4a37f8158bc61"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:25:34 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 20:25:34 2009 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-2.6.31\n\nConflicts:\n\tdrivers/block/hd.c\n\tdrivers/block/mg_disk.c\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4c9773ed7946fc375edba057770f5ef16d8b44fe",
      "tree": "cd642c901d6b6f051cbe7a29e6565913e61f0614",
      "parents": [
        "9f36d31437922354d104a2db407f397e79e4027e",
        "5993856e53fbc4b4f28e2d481deaebeb715b1267"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 17:10:55 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 17:10:55 2009 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n"
    },
    {
      "commit": "5993856e53fbc4b4f28e2d481deaebeb715b1267",
      "tree": "4774231cd65a95b81f713a2941321533881ac272",
      "parents": [
        "28ee9bc5cc42776e0364399b401a64906ac1ac8e"
      ],
      "author": {
        "name": "Harald Welte",
        "email": "HaraldWelte@viatech.com",
        "time": "Fri May 22 16:23:39 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:39 2009 +0200"
      },
      "message": "via82cxxx: Add VIA VX855 PCI Device ID\n\nThis patch adds the PCI Device ID 0xc409 to the PCI ID table of via82cxxx.c,\nas well as the 0x8409 south bridge ID.\n\nThis is required to make the IDE driver work on the VX855/VX875 integrated\nchipset.\n\nSigned-off-by: Harald Welte \u003cHaraldWelte@viatech.com\u003e\nCc: Joseph Chan \u003cJosephChan@via.com.tw\u003e\nCc: Bruce Chang \u003cBruceChang@via.com.tw\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "28ee9bc5cc42776e0364399b401a64906ac1ac8e",
      "tree": "037aa24bbb500cb0aeebc6b9f7140796387061dc",
      "parents": [
        "cc30137a221372c67a943ad9ea68121a2bd57a6e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:38 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:38 2009 +0200"
      },
      "message": "ide: report timeouts in ide_busy_sleep()\n\n* change \u0027hwif\u0027 argument to \u0027drive\u0027\n* report an error on timeout\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "cc30137a221372c67a943ad9ea68121a2bd57a6e",
      "tree": "e7ba24af14ac4b19c6ccc1746555ee588b28a0be",
      "parents": [
        "26bfcf21e25fa090f099fa0ccf201424989cbd7b"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:38 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:38 2009 +0200"
      },
      "message": "ide: improve failed opcode reporting\n\nNowadays we (almost) always store the currently executing command\nin hwif-\u003ecmd so we can use it for the failed opcode reporting.\n\nCc: Martin Lottermoser \u003cMartin.Lottermoser@t-online.de\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "26bfcf21e25fa090f099fa0ccf201424989cbd7b",
      "tree": "d07465d0b94d7841740e01fab0da27e44026ff80",
      "parents": [
        "e3b29f05124b07303088795396ff858811d2acb8"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:37 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:37 2009 +0200"
      },
      "message": "ide: fix printk() levels in ide_dump_ata[pi]_error()\n\nFixes \"\u003c3\u003e\" in error messages like this one:\n\nhdc: cdrom_decode_status: error\u003d0x40 \u003c3\u003e{ LastFailedSense\u003d0x04 }\n\nReported-by: Martin Lottermoser \u003cMartin.Lottermoser@t-online.de\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "e3b29f05124b07303088795396ff858811d2acb8",
      "tree": "00b483ca6b30228119be19a362bbb0044ce87be8",
      "parents": [
        "8369d5fa63260cc54464b4687aa6a0f78402d98e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:37 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:37 2009 +0200"
      },
      "message": "ide: fix OOPS during ide-cd error recovery\n\nOn Tuesday 19 May 2009 20:29:28 Martin Lottermoser wrote:\n\n\u003e   hdc: cdrom_decode_status: error\u003d0x40 \u003c3\u003e{ LastFailedSense\u003d0x04 }\n\u003e   ide: failed opcode was: unknown\n\u003e   hdc: DMA disabled\n\u003e   ------------[ cut here ]------------\n\u003e   kernel BUG at drivers/ide/ide-io.c:872!\n\nIt is possible for ide-cd to ignore ide_error()\u0027s return value under\nsome circumstances.  Workaround it in ide_intr() and ide_timer_expiry()\nby checking if there is a device/port reset pending currently.\n\nFixes bug #13345:\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13345\n\nReported-by: Martin Lottermoser \u003cMartin.Lottermoser@t-online.de\u003e\nReported-and-tested-by: Modestas Vainius \u003cmodestas@vainius.eu\u003e\nCc: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "8369d5fa63260cc54464b4687aa6a0f78402d98e",
      "tree": "0d36d4d7af4f9acb6b5436a1786170928a7ba888",
      "parents": [
        "d8788298d491ee5026981eb751b0341a996b22e4"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:36 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri May 22 16:23:36 2009 +0200"
      },
      "message": "ide: fix 40-wire cable detection for TSST SH-S202* ATAPI devices (v2)\n\nSince 2.6.26 we support UDMA66 on ATAPI devices requiring IVB quirk:\n\n  commit 8588a2b732928b343233af9b1855705b8286bed4\n  (\"ide: add SH-S202J to ivb_list[]\")\n\nWe also later added support for more such devices in:\n\n  commit e97564f362a93f8c248246c19828895950341252\n  (\"ide: More TSST drives with broken cable detection\")\n\nand in:\n\n  commit 3ced5c49bd2d1f2c7f769e3a54385883de63a652\n  (\"ide: add TSSTcorp CDDVDW SH-S202H to ivb_list[]\")\n\nIt turns out that such devices lack cable detection altogether\n(which in turn results in incorrect detection of 40-wire cables\nby our current cable detection strategy) so always handle them\nby trusting host-side cable detection only.\n\nv2:\nModel detection fixup from Martin.\n\nReported-and-tested-by: Martin Lottermoser \u003cMartin.Lottermoser@t-online.de\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": "9f36d31437922354d104a2db407f397e79e4027e",
      "tree": "a799933c3d327103b49298416581e8ad5e788d43",
      "parents": [
        "dca3983059a4481e4ae97bbf0ac4b4c21429e1a5"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:25 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:25 2009 +0200"
      },
      "message": "ide: remove hw_regs_t typedef\n\nRemove hw_regs_t typedef and rename struct hw_regs_s to struct ide_hw.\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "dca3983059a4481e4ae97bbf0ac4b4c21429e1a5",
      "tree": "ee15aed0673b5474bdadc93e3054f361bf2e839b",
      "parents": [
        "29e52cf793ded6bece50de50e738596f94f07d9f"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:24 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:24 2009 +0200"
      },
      "message": "ide: pass number of ports to ide_host_{alloc,add}() (v2)\n\nPass number of ports to ide_host_{alloc,add}() and then update\nall users accordingly.\n\nv2:\n- drop no longer needed NULL initializers in buddha.c, cmd640.c and gayle.c\n  (noticed by Sergei)\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "29e52cf793ded6bece50de50e738596f94f07d9f",
      "tree": "d11e73ba109fd0107159fa31f65ddd58222d720d",
      "parents": [
        "ca1b96e00ab5d1b0838965834469a0284c81a517"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:22 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:22 2009 +0200"
      },
      "message": "ide: remove chipset field from hw_regs_t\n\n* Convert host drivers that still use hw_regs_t\u0027s chipset field to use\n  the one in struct ide_port_info instead.\n\n* Move special handling of ide_pci chipset type from ide_hw_configure()\n  to ide_init_port().\n\n* Remove chipset field from hw_regs_t.\n\nWhile at it:\n- remove stale comment in delkin_cb.c\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ca1b96e00ab5d1b0838965834469a0284c81a517",
      "tree": "694727e3e50eb651640f87aac51aed8fecc0a2c0",
      "parents": [
        "582078ee3d7dacd74a7b3fe02ea258cadf32b602"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:21 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:21 2009 +0200"
      },
      "message": "ide: replace special_t typedef by IDE_SFLAG_* flags\n\nReplace:\n- special_t typedef by IDE_SFLAG_* flags\n- \u0027special_t special\u0027 ide_drive_t\u0027s field by \u0027u8 special_flags\u0027 one\n\nThere should be no functional changes caused by this patch.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "582078ee3d7dacd74a7b3fe02ea258cadf32b602",
      "tree": "6aa9c20c9df5367782716ef4960e4fac1b9b24ff",
      "parents": [
        "5f582c8e2193e3848039de87e6a3ace7cbc7ed88"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:18 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:18 2009 +0200"
      },
      "message": "ide: merge ide_disk_special() into do_special() (v2)\n\nWhile at it:\n- change debug printk() level to KERN_DEBUG and use __func__\n- update documentation\n\nv2:\n- fix DEBUG build (noticed by Sergei)\n\nThere should be no functional changes caused by this patch.\n\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "5f582c8e2193e3848039de87e6a3ace7cbc7ed88",
      "tree": "57774bee00f4094fe0bcebd67ca1203d6c36257c",
      "parents": [
        "6029336426a2b43e4bc6f4a84be8789a047d139e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:18 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 19:12:18 2009 +0200"
      },
      "message": "ide: BUG() on unknown flags in ide_disk_special()\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "6029336426a2b43e4bc6f4a84be8789a047d139e",
      "tree": "a83bdc5af2d842b0c9ec1dbffbeae80edce13eaa",
      "parents": [
        "e8e7526c3c0863be25ab03a0871ee0978de5ba50"
      ],
      "author": {
        "name": "Joao Ramos",
        "email": "joao.ramos@inov.pt",
        "time": "Sun May 17 17:22:54 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sun May 17 17:22:54 2009 +0200"
      },
      "message": "ide: try to use PIO Mode 0 during probe if possible\n\nInitially set PIO Mode 0 for all host drivers that have a \u0027set_pio_mode\u0027\nmethod before the IDE core figures out the most suited PIO mode for the\nattached device.\n\nSigned-off-by: Joao Ramos \u003cjoao.ramos@inov.pt\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.montavista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.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": "fdac1c76beb9d142675c852834a64a77703bd450",
      "tree": "abb94feb22e481f32ac8f274038df10088fbc6a2",
      "parents": [
        "03682411b1ccd38cbde2e9a6ab43884ff34fbefc",
        "d8788298d491ee5026981eb751b0341a996b22e4"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 16 19:49:03 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 16 19:49:03 2009 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n"
    },
    {
      "commit": "d8788298d491ee5026981eb751b0341a996b22e4",
      "tree": "064a4da54b619a23c3ca119d081bf7405b524f95",
      "parents": [
        "b019447ce73513432af052f30fa239d6dc93e111"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Sat May 16 19:03:36 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 16 19:03:36 2009 +0200"
      },
      "message": "piix: The Sony TZ90 needs the cable type hardcoding\n\nThe Sony TZ90 needs the cable type hardcoding. See bug #12734\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nReported-by:  Jonathan E. Snow \u003cjesnow@uh.edu\u003e\n[bart: port it from ata_piix to piix and give reporter the proper credit]\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "b019447ce73513432af052f30fa239d6dc93e111",
      "tree": "63e4a45829b9ebe3b91e055c49d6687a8e50abe6",
      "parents": [
        "36999a5af1b6c5379e59f0ddf434db08d03c19e4"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Sat May 16 19:03:36 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 16 19:03:36 2009 +0200"
      },
      "message": "icside: register second channel of version 6 PCB\n\nThe second IDE channel of version 6 PCB is not being registered anymore since\nthe commit 48c3c1072651922ed153bcf0a33ea82cf20df390 (ide: add struct ide_host\n(take 3)).\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "36999a5af1b6c5379e59f0ddf434db08d03c19e4",
      "tree": "1664d5927ec972914aac4f2541e2b6f461c3721d",
      "parents": [
        "96c16743973e8c1a7b9c655d10b7973408d6d1dd"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:41 2009 +0900"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Sat May 16 19:03:18 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\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "9934c8c04561413609d2bc38c6b9f268cba774a4",
      "tree": "30dd8f7be54f9b2e03094de9cd03b6a9ee2909cd",
      "parents": [
        "2343046826a8ca426b07601d9593ee046c298b68"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 08 11:54:16 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:52:18 2009 +0200"
      },
      "message": "block: implement and enforce request peek/start/fetch\n\nTill now block layer allowed two separate modes of request execution.\nA request is always acquired from the request queue via\nelv_next_request().  After that, drivers are free to either dequeue it\nor process it without dequeueing.  Dequeue allows elv_next_request()\nto return the next request so that multiple requests can be in flight.\n\nExecuting requests without dequeueing has its merits mostly in\nallowing drivers for simpler devices which can\u0027t do sg to deal with\nsegments only without considering request boundary.  However, the\nbenefit this brings is dubious and declining while the cost of the API\nambiguity is increasing.  Segment based drivers are usually for very\nold or limited devices and as converting to dequeueing model isn\u0027t\ndifficult, it doesn\u0027t justify the API overhead it puts on block layer\nand its more modern users.\n\nPrevious patches converted all block low level drivers to dequeueing\nmodel.  This patch completes the API transition by...\n\n* renaming elv_next_request() to blk_peek_request()\n\n* renaming blkdev_dequeue_request() to blk_start_request()\n\n* adding blk_fetch_request() which is combination of peek and start\n\n* disallowing completion of queued (not started) requests\n\n* applying new API to all LLDs\n\nRenamings are for consistency and to break out of tree code so that\nit\u0027s apparent that out of tree drivers need updating.\n\n[ Impact: block request issue API cleanup, no functional change ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "8f6205cd572fece673da0255d74843680f67f879",
      "tree": "bb89c1c5fe4436f5a0ec27f0d96074c7031a83ae",
      "parents": [
        "1011c1b9f2e45ce7c6e38888d2b83936aec38771"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 08 11:53:59 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:52:14 2009 +0200"
      },
      "message": "ide: dequeue in-flight request\n\nide generally has single request in flight and tracks it using\nhwif-\u003erq and all state handlers follow the following convention.\n\n* ide_started is returned if the request is in flight.\n\n* ide_stopped is returned if the queue needs to be restarted.  The\n  request might or might not have been processed fully or partially.\n\n* hwif-\u003erq is set to NULL, when an issued request completes.\n\nSo, dequeueing model can be implemented by dequeueing after fetch,\nrequeueing if hwif-\u003erq isn\u0027t NULL on ide_stopped return and doing\nabout the same thing on completion / port unlock paths.  These changes\ncan be made in ide-io proper.\n\nIn addition to the above main changes, the following updates are\nnecessary.\n\n* ide-cd shouldn\u0027t dequeue a request when issuing REQUEST SENSE for it\n  as the request is already dequeued.\n\n* ide-atapi uses request queue as stack when issuing REQUEST SENSE to\n  put the REQUEST SENSE in front of the failed request.  This now\n  needs to be done using requeueing.\n\n[ Impact: dequeue in-flight request ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: 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": "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": "5b93629b4509c03ffa87a9316412fedf6f58cb37",
      "tree": "ad5ceda3f718361b8df3057b4f9edcc79aa4cd9d",
      "parents": [
        "c3a4d78c580de4edc9ef0f7c59812fb02ceb037f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:38 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:53 2009 +0200"
      },
      "message": "block: implement blk_rq_pos/[cur_]sectors() and convert obvious ones\n\nImplement accessors - blk_rq_pos(), blk_rq_sectors() and\nblk_rq_cur_sectors() which return rq-\u003ehard_sector, rq-\u003ehard_nr_sectors\nand rq-\u003ehard_cur_sectors respectively and convert direct references of\nthe said fields to the accessors.\n\nThis is in preparation of request data length handling cleanup.\n\nGeert\t: suggested adding const to struct request * parameter to accessors\nSergei\t: spotted error in patch description\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nAcked-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nTested-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAckec-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.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": "03682411b1ccd38cbde2e9a6ab43884ff34fbefc",
      "tree": "f7a3ff8194d31d704e4b9a300e401a0b59694e34",
      "parents": [
        "23a39eede5f04eb8c4e8d6622231d98fe46bdc65"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Thu Apr 30 18:38:01 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 30 18:38:01 2009 +0200"
      },
      "message": "alim15x3: Remove historical hacks, re-enable init_hwif for PowerPC\n\nSome time ago we had to disable init_hwif callback for PowerPC builds.\nThat was because of a historical IRQ overwrite in the driver, which\nwas causing IDE malfunction on the MPC8610HPCD PowerPC boards.\n\nIt\u0027s unclear whether this overwrite is still useful, but it is proven\nto cause a bit of harm, and today some PowerPC targets (Xilinx ML510,\nas reported by Roderick Colenbrander) need the init_hwif, so we have\nto re-enable it and remove the overwrite.\n\nReported-by: Roderick Colenbrander \u003cthunderbird2k@gmail.com\u003e\nSuggested-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "23a39eede5f04eb8c4e8d6622231d98fe46bdc65",
      "tree": "db83c18d46157b1958d7af64381a52cec2a4c2d9",
      "parents": [
        "b656eba122929881c52d38ae16637167aaa5b88b",
        "96c16743973e8c1a7b9c655d10b7973408d6d1dd"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 30 18:28:35 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 30 18:28:35 2009 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n"
    },
    {
      "commit": "96c16743973e8c1a7b9c655d10b7973408d6d1dd",
      "tree": "965c9915d06762fa68cd033b71be2ac851722f0b",
      "parents": [
        "b930f964cfe65941c6b1ba61efedfe49da3f6353"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "petkovbb@gmail.com",
        "time": "Thu Apr 30 18:24:34 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 30 18:24:34 2009 +0200"
      },
      "message": "ide-cd: fix REQ_QUIET tests in cdrom_decode_status\n\nOriginal patch (dfa4411cc3a690011cab90e9a536938795366cf9) was buggy.\nThis is a more proper fix which introduces blk_rq_quiet() macro\nalleviating the need for dumb, too short caching variables.\n\nThanks to Helge Deller and Bart for debugging this.\n\nSigned-off-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nReported-and-tested-by: Helge Deller \u003cdeller@gmx.de\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "586cf2681f527ce8b85b9bd57c8b9f7945fbe051",
      "tree": "cbd2efbd93677d81929417fcb3faf94460737dd0",
      "parents": [
        "5ad960fe8d0e4f99fe2b8dded45e8251137293c9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 21 12:16:56 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:33 2009 +0200"
      },
      "message": "ide-dma: don\u0027t reset request fields on dma_timeout_retry()\n\nImpact: drop unnecessary code\n\nNow that everything uses bio and block operations, there is no need to\nreset request fields manually when retrying a request.  Every field is\nguaranteed to be always valid.  Drop unnecessary request field\nresetting from ide_dma_timeout_retry().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5ad960fe8d0e4f99fe2b8dded45e8251137293c9",
      "tree": "b781a857b5bc7ed2ca13b852bda1da316d3f1f7a",
      "parents": [
        "29d1a4371035e01b0d079bc5aa88b50f5af7a566"
      ],
      "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: drop rq-\u003edata handling from ide_map_sg()\n\nImpact: remove code path which is no longer necessary\n\nAll IDE data transfers now use rq-\u003ebio.  Simplify ide_map_sg()\naccordingly.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\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": "765139ef5f1a4b1d5cb1f1a7a12de7ee61f6500f",
      "tree": "cced409300ad193c7a3d9203441834c629cfcb7e",
      "parents": [
        "02e7cf8f848841ca21864ccd019e480b73c323b7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Apr 19 07:00:43 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:30 2009 +0200"
      },
      "message": "ide-pm: don\u0027t abuse rq-\u003edata\n\nImpact: cleanup rq-\u003edata usage\n\nide-pm uses rq-\u003edata to carry pointer to struct request_pm_state\nthrough request queue and rq-\u003especial is used to carray pointer to\nlocal struct ide_cmd, which isn\u0027t necessary.  Use rq-\u003especial for\nrequest_pm_state instead and use local ide_cmd in\nide_start_power_step().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\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": "c457ce874a0f3dfa3d5e9f2309789f6f34e24325",
      "tree": "bd6a66e463d2360c9a6fbbfbad085935c91c4ddc",
      "parents": [
        "e69d800f7e8797a8e3423380ee9d8ca1cb90c388"
      ],
      "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-cd: convert to using generic sense request\n\nPreallocate a sense request in the -\u003edo_request method and reinitialize\nit only on demand, in case it\u0027s been consumed in the IRQ handler path.\nThe reason for this is that we don\u0027t want to be mapping rq to bio in\nthe IRQ path and introduce all kinds of unnecessary hacks to the block\nlayer.\n\ntj: * Both user and kernel PC requests expect sense data to be stored\n      in separate storage other than drive-\u003esense_data.  Copy sense\n      data to rq-\u003esense on completion if rq-\u003esense is not NULL.  This\n      fixes bogus sense data on PC requests.\n\nAs a result, remove cdrom_queue_request_sense.\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": "e69d800f7e8797a8e3423380ee9d8ca1cb90c388",
      "tree": "4f2241b44bf56db7e8f977b742a5e56f53424596",
      "parents": [
        "1f181d2b1569dfb88a584a6e1847e9e1c7645951"
      ],
      "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: add helpers for preparing sense requests\n\nThis is in preparation of removing the queueing of a sense request out\nof the IRQ handler path.\n\nUse struct request_sense as a general sense buffer for all ATAPI\ndevices ide-{floppy,tape,cd}.\n\ntj: * blk_get_request(__GFP_WAIT) can\u0027t be called from do_request() as\n      it can cause deadlock.  Converted to use inline struct request\n      and blk_rq_init().\n\n    * Added xfer / cdb len selection depending on device type.\n\n    * All sense prep logics folded into ide_prep_sense() which never\n      fails.\n\n    * hwif-\u003erq clearing and sense_rq used handling moved into\n      ide_queue_sense_rq().\n\n    * blk_rq_map_kern() conversion is moved to later patch.\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": "1f181d2b1569dfb88a584a6e1847e9e1c7645951",
      "tree": "7a72aa199dddc8ea39cc424bb2c21f34e58089df",
      "parents": [
        "ac0b0113ddbab3ed2388132d368c97292f9f3c84"
      ],
      "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-cd: don\u0027t abuse rq-\u003ebuffer\n\nImpact: rq-\u003ebuffer usage cleanup\n\nide-cd uses rq-\u003ebuffer to carry pointer to the original request when\nissuing REQUEST_SENSE.  Use rq-\u003especial instead.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\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": "d868ca24302e99a0e8a86071ca2c66273edf97d9",
      "tree": "447a39c6e1880f16ff329b9014471945a9db0e22",
      "parents": [
        "8968932e54db35cf9d69cfbbd50c26dfaaa586c7"
      ],
      "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-taskfile: don\u0027t abuse rq-\u003ebuffer\n\nImpact: rq-\u003ebuffer usage cleanup\n\nide_raw_taskfile() directly uses rq-\u003ebuffer to carry pointer to the\ndata buffer.  This complicates both block interface and ide backend\nrequest handling.  Use blk_rq_map_kern() instead and drop special\nhandling for REQ_TYPE_ATA_TASKFILE from ide_map_sg().\n\nNote that REQ_RW setting is moved upwards as blk_rq_map_kern() uses it\nto initialize bio rw flag.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "8968932e54db35cf9d69cfbbd50c26dfaaa586c7",
      "tree": "3ed9e5441de92603ad60755b7f0a6129eef17c7d",
      "parents": [
        "59a4f6f355fc718581ddcf1bb45a469d4756c035"
      ],
      "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-floppy: block pc always uses bio\n\nImpact: remove unnecessary code path\n\nBlock pc requests always use bio and rq-\u003edata is always NULL.  No need\nto worry about !rq-\u003ebio cases in idefloppy_block_pc_cmd().  Note that\nide-atapi uses ide_pio_bytes() for bio PIO transfer which handle sg\nfine.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "59a4f6f355fc718581ddcf1bb45a469d4756c035",
      "tree": "4593ab2fdf3a8521a63c07b47c717c1e6d84e6ff",
      "parents": [
        "214ae19104141404f18ad6651752eb38e3dd584e"
      ],
      "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:29 2009 +0200"
      },
      "message": "ide-cd: clear sense buffer before issuing request sense\n\nImpact: code simplification\n\nide_cd_request_sense_fixup() clears the tail of the sense buffer if\nthe device didn\u0027t completely fill it.  This patch makes\ncdrom_queue_request_sense() clear the sense buffer before issuing the\ncommand instead of clearing it afterwards.  This simplifies code and\neases future changes.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "b2963ac1738542d30305d7e12c8c078a383a425c",
      "tree": "7f180c249b6aef5acce84eb11cea41a0e237e5eb",
      "parents": [
        "220d06b5531e7b8a6226b2fdfb21198c3ccc4f76"
      ],
      "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: don\u0027t set REQ_SOFTBARRIER\n\nide doesn\u0027t have to worry about REQ_SOFTBARRIER.  Don\u0027t set it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "220d06b5531e7b8a6226b2fdfb21198c3ccc4f76",
      "tree": "9babf9bbe555dc77570bfafc5e8c86c835056c2f",
      "parents": [
        "0de57fb93b1daaeaecb658a98b3299ae460c02e9"
      ],
      "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: use blk_run_queue() instead of blk_start_queueing()\n\nblk_start_queueing() is being phased out in favor of\n[__]blk_run_queue().  Switch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\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": "b656eba122929881c52d38ae16637167aaa5b88b",
      "tree": "8d8e997b7e831160e7885f6cda3a9b752e558767",
      "parents": [
        "24fc484ab2291d242d1d6bfb5ca5b781061a8578",
        "b930f964cfe65941c6b1ba61efedfe49da3f6353"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 23 22:56:58 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 23 22:56:58 2009 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n"
    },
    {
      "commit": "d7f5143522d938ea7c4f117c6fa6b1d3fa5af994",
      "tree": "d9ba342310f7ff7526b8978aaf55b5e0dde119f4",
      "parents": [
        "33e86019f77b6358bfe06767e08154be032d8751"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 23 22:53:45 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 23 22:53:45 2009 +0200"
      },
      "message": "palm_bk3710: palm_bk3710_udmatimings[] CodingStyle fixup\n\nRemove superfluous commas and add missing whitespaces.\n\nNoticed-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "33e86019f77b6358bfe06767e08154be032d8751",
      "tree": "b012121015315c30b84ffec1cfe47e69612e9477",
      "parents": [
        "83cff839268feb2f31ae7667b9b2b7641dc10575"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Thu Apr 23 22:53:43 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Apr 23 22:53:43 2009 +0200"
      },
      "message": "palm_bk3710: those registers/bitfields don\u0027t exist\n\nBugfixes noted by checking the code against the controller\ndocumentation (TI document number SPRUE21):\n\n - Remove declarations for eight non-existent registers (!);\n   and remove accesses to two of them.\n\n - Remove access to various non-existent bitfields in some of\n   the registers which *do* exist (those fields must-be-zero).\n\n - Provide comment to replace bogus reset logic (removed above,\n   it relied on non-existent bitfields).  Resets require GPIO\n   help; this driver doesn\u0027t currently know about that.\n\nWith some minor cleanup:  relocate a comment, avoid an extra\nlookup of the PIO timings.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "24fc484ab2291d242d1d6bfb5ca5b781061a8578",
      "tree": "ea1d38f9ee40fd3b680f030d28b8aebb0f84b789",
      "parents": [
        "2ecf0a57c60dcb588f310d94412118e15c510532",
        "83cff839268feb2f31ae7667b9b2b7641dc10575"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Apr 22 20:38:45 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Apr 22 20:38:45 2009 +0200"
      },
      "message": "Merge branch \u0027for-linus\u0027 into for-next\n"
    },
    {
      "commit": "b0aedb04eae79372fbe101d98513773d6b89935d",
      "tree": "b99caae4caa2b5973ef63c0b66f90c9695222b08",
      "parents": [
        "a1f9a89c90b4ac143c5b6054c2a157572b272cd2"
      ],
      "author": {
        "name": "Bruno Prémont",
        "email": "bonbons@linux-vserver.org",
        "time": "Wed Apr 22 20:33:41 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Apr 22 20:33:41 2009 +0200"
      },
      "message": "ide: Stop disks on reboot for laptop which cuts power\n\nMy laptop (Acer Travelmate 660) always cuts the power when rebooting\nwhich causes the disk to emergency-park it\u0027s head.\n\nAdd a dmi check to stop disk as for shutdown on this laptop.\n\nSigned-off-by: Bruno Prémont \u003cbonbons@linux-vserver.org\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "a1f9a89c90b4ac143c5b6054c2a157572b272cd2",
      "tree": "1b1d0c34dd4857b21d9057eb384763b74b7ab62a",
      "parents": [
        "db2f38c22ea3f545be3b5772e5f9dc5861b74536"
      ],
      "author": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Wed Apr 22 20:33:40 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Apr 22 20:33:40 2009 +0200"
      },
      "message": "ide-cd: fix kernel crash on hppa regression\n\nWith 2.6.30-rc2 I face a kernel crash on the 32bit hppa architecture \ndue to ide-cd when udev creates the device nodes at startup:\n\nKernel Fault: Code\u003d26 regs\u003d8ed34c40 (Addr\u003d00000024)\nIASQ: 00000000 00000000 IAOQ: 1034b5ac 1034b5b0\n IIR: 4ab30048    ISR: 00000000  IOR: 00000024\n CPU:        0   CR30: 8ed34000 CR31: ffff55ff\n ORIG_R28: 00000000\n IAOQ[0]: ide_complete_rq+0x2c/0x70\n IAOQ[1]: ide_complete_rq+0x30/0x70\n RP(r2): cdrom_newpc_intr+0x178/0x46c\nBacktrace:\n [\u003c1035c608\u003e] cdrom_newpc_intr+0x178/0x46c\n [\u003c1034c494\u003e] ide_intr+0x1b0/0x214\n [\u003c1016d284\u003e] handle_IRQ_event+0x70/0x150\n [\u003c1016d4b0\u003e] __do_IRQ+0x14c/0x1cc\n [\u003c102f7864\u003e] superio_interrupt+0x88/0xbc\n [\u003c1016d284\u003e] handle_IRQ_event+0x70/0x150\n [\u003c1016d4b0\u003e] __do_IRQ+0x14c/0x1cc\n [\u003c10112efc\u003e] do_cpu_irq_mask+0x9c/0xd0\n [\u003c10116068\u003e] intr_return+0x0/0x4\n\nThis crash seems to happen due to an uninitialized variable \"rc\".\nThe compiler even warns about that:\n  CC      drivers/ide/ide-cd.o                                                         \n/mnt/sda4/home/cvs/parisc/git-kernel/linus-linux-2.6/drivers/ide/ide-cd.c: In function `cdrom_newpc_intr\u0027:\n/mnt/sda4/home/cvs/parisc/git-kernel/linus-linux-2.6/drivers/ide/ide-cd.c:612: warning: `rc\u0027 might be used uninitialized in this function\n\nAfter applying the trivial patch below, which just initializes \nthe variable to zero, the kernel doesn\u0027t crash any longer:\n\nStarting the hotplug events dispatcher: udevd.\nSynthesizing the initial hotplug events...\nhda: command error: status\u003d0x51 { DriveReady SeekComplete Error }\nhda: command error: error\u003d0x54 \u003c3\u003e{ AbortedCommand LastFailedSense\u003d0x05 }\nide: failed opcode was: unknown\ndone.\n\nSigned-off-by: Helge Deller \u003cdeller@gmx.de\u003e\nAcked-by: Borislav Petkov \u003cpetkovbb@gmail.com\u003e\nCc: Linus \u003ctorvalds@linux-foundation.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "db2f38c22ea3f545be3b5772e5f9dc5861b74536",
      "tree": "57b07f93fb6e474761a31446c96a9821e1aa98d8",
      "parents": [
        "15da90b516e9da92cc1d90001e640fd6707d0e27"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Apr 22 20:33:40 2009 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Apr 22 20:33:40 2009 +0200"
      },
      "message": "palm_bk3710: UDMA performance fix\n\nFix UDMA throughput bug:  tCYC averages t2CYCTYP/2, but the code\npreviously assumed it was the same as t2CYCTYP.  (That is, it was\nusing just one clock edge, not both.)  Move the table\u0027s type\ndeclaration so it\u0027s adjacent to the table, making it more clear\nwhat those numbers mean.\n\nOn one system this change increased throughput by almost 4x: UDMA/66\nsometimes topped 23 MB/sec (on a drive known to do much better).  On\nanother system it was around a 10% win (UDMA/66 up to 7+ MB/sec).\n\nThe difference might be caused by the ratio between memory and IDE\nclocks.  In the system with large speedup, this was exactly 2 (as a\nworkaround for a rev 1.1 silicon bug).  The other system used a more\nstandard ratio of 1.63 (and rev 2.1 silicon) ... clock domain synch\nmight have some issues, they\u0027re not unheard-of.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "2ecf0a57c60dcb588f310d94412118e15c510532",
      "tree": "0491672f5c24b7a73493510eb5572c1ac034cb00",
      "parents": [
        "2c316bb57ad4e9f0f3de2d7ef1ae85530c2a7e69"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 21 12:16:56 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 21 12:16:56 2009 +0900"
      },
      "message": "ide-dma: don\u0027t reset request fields on dma_timeout_retry()\n\nImpact: drop unnecessary code\n\nNow that everything uses bio and block operations, there is no need to\nreset request fields manually when retrying a request.  Every field is\nguaranteed to be always valid.  Drop unnecessary request field\nresetting from ide_dma_timeout_retry().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "2c316bb57ad4e9f0f3de2d7ef1ae85530c2a7e69",
      "tree": "4c67b1e6d0f1c27940188833a46a51b82e43d6ec",
      "parents": [
        "6d7003877c2f0578f1c08f66d05c3f72ef4ae596"
      ],
      "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: drop rq-\u003edata handling from ide_map_sg()\n\nImpact: remove code path which is no longer necessary\n\nAll IDE data transfers now use rq-\u003ebio.  Simplify ide_map_sg()\naccordingly.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\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"
    }
  ],
  "next": "88f1b941c5c94016a59144a3c94c9ca31eb16205"
}
