)]}'
{
  "log": [
    {
      "commit": "0c659b82d11eaf5e1bee1f2bcb9994b9d09d175c",
      "tree": "5568b38d3642533b3a8a1aa88c973278b24e62d1",
      "parents": [
        "c3f93b8fc6471ddbbc2a7e89fdfcfc8367e17564"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Thu Apr 02 10:37:25 2009 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Mon Apr 06 20:00:51 2009 -0400"
      },
      "message": "ata: Add TRIM infrastructure\n\nThis is common code shared between the IDE and libata implementations\n\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "0384e2959127a56d0640505d004d8dd92f9c29f5",
      "tree": "fa2a8d6829ed61fa561deab03a259e25b7b49865",
      "parents": [
        "61a091827e273650b39eb87c799a6d260913fa0b",
        "c96f1732e25362d10ee7bcac1df8412a2e6b7d23"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 11:20:23 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 11:20:23 2009 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: (35 commits)\n  [libata] Improve timeout handling\n  [libata] Drain data on errors\n  pata_sc1200: Activate secondary channel\n  pata_artop: Serializing support\n  [libata] ahci: correct enclosure LED state save\n  [libata] More robust parsing for IDENTIFY DEVICE multi_count field\n  sata_mv: fix LED blinking for SoC+NCQ\n  sata_mv: optimize IRQ coalescing for 8-port chips\n  sata_mv: implement IRQ coalescing (v2)\n  sata_mv: cosmetic preparations for IRQ coalescing\n  pata-rb532-cf: platform_get_irq() fix ignored failure\n  pata_efar: fix *dma_mask\n  pata_radisys: fix mwdma_mask to exclude mwdma0\n  [libata] convert drivers to use ata.h mode mask defines\n  include/linux/ata.h: add some more transfer masks\n  ahci: Blacklist HP Compaq 6720s that spins off disks during ACPI power off\n  [libata] sata_mv: Implement direct FIS transmission via mv_qc_issue_fis().\n  [libata] Export ata_pio_queue_task() so that it can be used from sata_mv.\n  [libata] sata_mv: Add a new mv_sff_check_status() function to sata_mv.\n  [libata] sata_mv: Tighten up interrupt masking in mv_qc_issue()\n  ...\n"
    },
    {
      "commit": "22ddbd1e036ce035c1cccb2496aefafac79aba2c",
      "tree": "83b718df5cbec67b04d3b121147cdb6ced42e8d2",
      "parents": [
        "d2f9c0614e664708978c53eca4a5963e92830e88"
      ],
      "author": {
        "name": "Erik Inge Bolsø",
        "email": "knan-lkml@anduin.net",
        "time": "Sat Mar 14 21:37:48 2009 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Mar 24 22:12:00 2009 -0400"
      },
      "message": "include/linux/ata.h: add some more transfer masks\n\nSigned-off-by: Erik Inge Bolsø \u003cknan-lkml@anduin.net\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "552d3a99bdce8a0d7f9abe3766fb3655ef5757dc",
      "tree": "4abf3d83da9348d30d9a9a9d60f9751bb7d875c6",
      "parents": [
        "4cda15a0995f2da5727514f84ec26d8b7420e1f9"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Mar 24 23:22:58 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Mar 24 23:22:58 2009 +0100"
      },
      "message": "ide: remove broken EXABYTENEST support\n\ndo_identify() marks EXABYTENEST device as non-present and frees\ndrive-\u003eid so enable_nest() has absolutely no chance of working.\n\nThe code was like this since at least 2.6.12-rc2 and nobody\nhas noticed so just remove broken EXABYTENEST support.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "d42ad15b759d05a87f22b484af63987eff38ea88",
      "tree": "51ee423598e434624b8dc0db41d9b88022ea4833",
      "parents": [
        "ebcad5aaea26da3cb2ca90b7f31a67a027eb60db"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Thu Mar 05 17:20:55 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Mar 05 17:20:55 2009 +0100"
      },
      "message": "ata: add CFA specific identify data words\n\nDeclare CFA specific identify data words 162 and 163 for future use.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n[bart: update patch summary/description]\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "2999b58b795ad81f10e34bdbbfd2742172f247e4",
      "tree": "6ff5484a5a7083d105d5824d0ada16654484e7b8",
      "parents": [
        "5eb66fe05f08d515a7377787473bc4e4b1ed5b59"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Sun Feb 01 20:46:39 2009 +0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Mon Feb 02 22:45:10 2009 -0500"
      },
      "message": "ide/libata: fix ata_id_is_cfa() (take 4)\n\nWhen checking for the CFA feature set support, ata_id_is_cfa() tests bit 2 in\nword 82 of the identify data instead the word 83;  it also checks the ATA/PI\nversion support in the word 80 (which the CompactFlash specifications have as\nreserved), this having no slightest chance to work on the modern CF cards that\ndon\u0027t have 0x848A in the word 0...\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "a02227c9774b3bff08c7f557d06247e0a03ac435",
      "tree": "53bd926333ce6269043fae426144312e163e1fe9",
      "parents": [
        "93734a234447a3c091f76d76f7351af9d4dde518"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:31 2008 +0200"
      },
      "message": "ide: lba_capacity_is_ok() -\u003e ata_id_is_lba_capacity_ok()\n\nRename lba_capacity_is_ok() to ata_id_is_lba_capacity_ok()\nand move it to \u003clinux/ata.h\u003e (remove needless parens while at it).\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "93734a234447a3c091f76d76f7351af9d4dde518",
      "tree": "e133b68a95c54a84fa637893800d6e62b64a48fb",
      "parents": [
        "718c72e83da295efc9c8625b6f380ef10352d955"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:31 2008 +0200"
      },
      "message": "ide: ide_id_to_hd_driveid() -\u003e ata_id_to_hd_driveid()\n\nRename ide_id_to_hd_driveid() to ata_id_to_hd_driveid()\nand move it to \u003clinux/ata.h\u003e.\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ff2779b568e70822e0ef2cc7afeeefbe7c607652",
      "tree": "b14a77664e9d4c8284805c5691017245e6c35e4b",
      "parents": [
        "4b58f17d7c45a8e5f4acda641bec388398b9c0fa"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:31 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:31 2008 +0200"
      },
      "message": "ide: ide_id_has_flush_cache_ext() -\u003e ata_id_flush_ext_enabled()\n\n* Add ata_id_flush_ext_enabled() inline helper to \u003clinux/ata.h\u003e.\n\n* ide_id_has_flush_cache_ext() -\u003e ata_id_flush_ext_enabled()\n\n  The latter one also checks if the command is marked as\n  supported in word 83 and validity of words 83 \u0026 86.\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "4b58f17d7c45a8e5f4acda641bec388398b9c0fa",
      "tree": "60ff1975dea044c3f268818f69001df5ac10eb42",
      "parents": [
        "1a4e4d4d2cceb72be70526a485914abd638c7de1"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:30 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:30 2008 +0200"
      },
      "message": "ide: ide_id_has_flush_cache() -\u003e ata_id_flush_enabled()\n\n* Add ata_id_flush_enabled() inline helper to \u003clinux/ata.h\u003e.\n\n* ide_id_has_flush_cache() -\u003e ata_id_flush_enabled()\n\n  The latter one also checks if the command is marked as\n  supported in word 83 and validity of words 83 \u0026 86.\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "942dcd85bf8edf38cdc3745306ca250684d99a61",
      "tree": "4d43552e3805c1df8585bb4056d6076dc56e5f09",
      "parents": [
        "367d7e78dd48cf6ad35182a99d97abb5486e040e"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:30 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:30 2008 +0200"
      },
      "message": "ide: idedisk_supports_lba48() -\u003e ata_id_lba48_enabled()\n\n* Add ata_id_lba48_enabled() inline helper to \u003clinux/ata.h\u003e.\n\n* idedisk_supports_lba48() -\u003e ata_id_lba48_enabled()\n\n  The latter one also checks validity of words 83 \u0026 86.\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "367d7e78dd48cf6ad35182a99d97abb5486e040e",
      "tree": "70635fc87e0f094018870346577b3d84caefe61c",
      "parents": [
        "5d5870f0a26e2304c4a82592870c5bc88017f7c9"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:30 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Oct 10 22:39:30 2008 +0200"
      },
      "message": "ide: ide_dev_is_sata() -\u003e ata_id_is_sata()\n\n* Use optimized ATA version check from Sergei in ata_id_is_sata().\n\n* ide_dev_is_sata() -\u003e ata_id_is_sata()\n\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "e26feff647ef34423b048b940540a0059001ddb0",
      "tree": "acafe68602ee2f6f1a438c113073ffcc0040e949",
      "parents": [
        "d403a6484f0341bf0624d17ece46f24f741b6a92",
        "b911e473d24633c19414b54b82b9ff0b1a2419d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 10:52:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 10:52:45 2008 -0700"
      },
      "message": "Merge branch \u0027for-2.6.28\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-2.6.28\u0027 of git://git.kernel.dk/linux-2.6-block: (132 commits)\n  doc/cdrom: Trvial documentation error, file not present\n  block_dev: fix kernel-doc in new functions\n  block: add some comments around the bio read-write flags\n  block: mark bio_split_pool static\n  block: Find bio sector offset given idx and offset\n  block: gendisk integrity wrapper\n  block: Switch blk_integrity_compare from bdev to gendisk\n  block: Fix double put in blk_integrity_unregister\n  block: Introduce integrity data ownership flag\n  block: revert part of d7533ad0e132f92e75c1b2eb7c26387b25a583c1\n  bio.h: Remove unused conditional code\n  block: remove end_{queued|dequeued}_request()\n  block: change elevator to use __blk_end_request()\n  gdrom: change to use __blk_end_request()\n  memstick: change to use __blk_end_request()\n  virtio_blk: change to use __blk_end_request()\n  blktrace: use BLKTRACE_BDEV_SIZE as the name size for setup structure\n  block: add lld busy state exporting interface\n  block: Fix blk_start_queueing() to not kick a stopped queue\n  include blktrace_api.h in headers_install\n  ...\n"
    },
    {
      "commit": "8bff7c6b0f63c7ee9c5e3a076338d74125b8debb",
      "tree": "0863c7e0d09592ee9f4d568625348ef12e4a30df",
      "parents": [
        "a68bbddba486020c9c74825ce90c4c1ec463e0e8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Sep 24 13:05:10 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:19 2008 +0200"
      },
      "message": "libata: set queue SSD flag for SSD devices\n\nSSD devices should give an RPM setting of 1 in word 217 of the ID\npage. If we see such a device, tell the block layer about it.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ea6ce53cd5d005455ec0a3cc1d45d3af0cb90919",
      "tree": "a6868997eafc92becb5a94646fae4e6485f209ea",
      "parents": [
        "2ad69677b626fc311783b47af25dfecf7be2845b"
      ],
      "author": {
        "name": "Elias Oltmanns",
        "email": "eo@nebensachen.de",
        "time": "Fri Sep 19 23:46:01 2008 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Mon Sep 29 00:25:50 2008 -0400"
      },
      "message": "[libata] Introduce ata_id_has_unload()\n\nAdd a function to check an ATA device\u0027s id for head unload support as\nspecified in ATA-7.\n\nSigned-off-by: Elias Oltmanns \u003ceo@nebensachen.de\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "97b697a11b07e2ebfa69c488132596cc5eb24119",
      "tree": "942176291faf6ab0dff6297708ca8b98f6e2e8c1",
      "parents": [
        "99580664aa83ca04bb52988d504a4195b41833b0"
      ],
      "author": {
        "name": "Taisuke Yamada",
        "email": "tai@rakugaki.org",
        "time": "Sat Sep 13 16:46:15 2008 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Sat Sep 13 16:46:15 2008 -0400"
      },
      "message": "[libata] LBA28/LBA48 off-by-one bug in ata.h\n\nI recently bought 3 HGST P7K500-series 500GB SATA drives and\nhad trouble accessing the block right on the LBA28-LBA48 border.\nHere\u0027s how it fails (same for all 3 drives):\n\n  # dd if\u003d/dev/sdc bs\u003d512 count\u003d1 skip\u003d268435455 \u003e /dev/null\n  dd: reading `/dev/sdc\u0027: Input/output error\n  0+0 records in\n  0+0 records out\n  0 bytes (0 B) copied, 0.288033 seconds, 0.0 kB/s\n  # dmesg\n  ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0\n  ata1.00: BMDMA stat 0x25\n  ata1.00: cmd c8/00:08:f8:ff:ff/00:00:00:00:00/ef tag 0 dma 4096 in\n  res 51/04:08:f8:ff:ff/00:00:00:00:00/ef Emask 0x1 (device error)\n  ata1.00: status: { DRDY ERR }\n  ata1.00: error: { ABRT }\n  ata1.00: configured for UDMA/33\n  ata1: EH complete\n  ...\n\nAfter some investigations, it turned out this seems to be caused\nby misinterpretation of the ATA specification on LBA28 access.\nFollowing part is the code in question:\n\n  \u003d\u003d\u003d include/linux/ata.h \u003d\u003d\u003d\n  static inline int lba_28_ok(u64 block, u32 n_block)\n  {\n    /* check the ending block number */\n    return ((block + n_block - 1) \u003c ((u64)1 \u003c\u003c 28)) \u0026\u0026 (n_block \u003c\u003d 256);\n  }\n\nHGST drive (sometimes) fails with LBA28 access of {block \u003d 0xfffffff,\nn_block \u003d 1}, and this behavior seems to be comformant. Other drives,\nincluding other HGST drives are not that strict, through.\n\n\u003eFrom the ATA specification:\n(http://www.t13.org/Documents/UploadedDocuments/project/d1410r3b-ATA-ATAPI-6.pdf)\n\n  8.15.29  Word (61:60): Total number of user addressable sectors\n  This field contains a value that is one greater than the total number\n  of user addressable sectors (see 6.2). The maximum value that shall\n  be placed in this field is 0FFFFFFFh.\n\nSo the driver shouldn\u0027t use the value of 0xfffffff for LBA28 request\nas this exceeds maximum user addressable sector. The logical maximum\nvalue for LBA28 is 0xffffffe.\n\nThe obvious fix is to cut \"- 1\" part, and the patch attached just do\nthat. I\u0027ve been using the patched kernel for about a month now, and\nthe same fix is also floating on the net for some time. So I believe\nthis fix works reliably.\n\nJust FYI, many Windows/Intel platform users also seems to be struck\nby this, and HGST has issued a note pointing to Intel ICH8/9 driver.\n\n  \"28-bit LBA command is being used to access LBAs 29-bits in length\"\nhttp://www.hitachigst.com/hddt/knowtree.nsf/cffe836ed7c12018862565b000530c74/b531b8bce8745fb78825740f00580e23\n\nAlso, *BSDs seems to have similar fix included sometime around ~2004,\nthrough I have not checked out exact portion of the code.\n\nSigned-off-by: Taisuke Yamada \u003ctai@rakugaki.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "b59116205c54c89df9cc80721b59e1e8d14488f1",
      "tree": "317210a01a37caae6a9e62decfb2f0dbc1439699",
      "parents": [
        "476d9894dde2da2c2b326d70b5bce5eccc593c8b"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 18 21:40:05 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 18 21:40:05 2008 +0200"
      },
      "message": "ata: add missing ATA_* defines\n\nAdd missing ATA_* defines to \u003clinux/ata.h\u003e.  Also add\nATAPI_{LFS,EOM,ILI,IO,CODE} defines while at it.\n\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "476d9894dde2da2c2b326d70b5bce5eccc593c8b",
      "tree": "b79078df48bbf3ee00a6789adf4519a4c4d3d3b0",
      "parents": [
        "37014c64079748c47fd109ef2d91ecd785a8c764"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 18 21:40:05 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 18 21:40:05 2008 +0200"
      },
      "message": "ata: add missing ATA_CMD_* defines\n\nAdd missing ATA_CMD_* defines to \u003clinux/ata.h\u003e.  Also add\nATA_EXABYTE_ENABLE_NEST, SETFEATURES_AAM_* and ATA_SMART_*\ndefines while at it.\n\nPartially based on earlier work by Chris Wedgwood.\n\nAcked-by: Chris Wedgwood \u003ccw@f00f.org\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "37014c64079748c47fd109ef2d91ecd785a8c764",
      "tree": "0a1079a386f0884ceb0c8ad9674d3f387f55fd24",
      "parents": [
        "1b427a33b06ae76c64c1ad9af899a45b682ba6c6"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 18 21:40:05 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 18 21:40:05 2008 +0200"
      },
      "message": "ata: add missing ATA_ID_* defines (take 2)\n\nAdd missing ATA_ID_* defines and update {ata,atapi}_*()\ninlines accordingly.  The currently unused defines are\nneeded for the forthcoming drivers/ide/ changes.\n\nv2:\nAdd ATA_ID_SPG.\n\nAcked-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "9116300634c5c76cfcd0d2af689846e04d172256",
      "tree": "dfc527d28af35f19dcb9c4092757d6eabb8afb1d",
      "parents": [
        "559bbe6cbd0d8c68d40076a5f7dc98e3bf5864b2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Feb 21 13:25:50 2008 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Feb 24 00:27:33 2008 -0500"
      },
      "message": "libata: automatically use DMADIR if drive/bridge requires it\n\nBack in 2.6.17-rc2, a libata module parameter was added for atapi_dmadir.\n\nThat\u0027s nice, but most SATA devices which need it will tell us about it\nin their IDENTIFY PACKET response, as bit-15 of word-62 of the\nreturned data (as per ATA7, ATA8 specifications).\n\nSo for those which specify it, we should automatically use the DMADIR bit.\nOtherwise, disc writing will fail by default on many SATA-ATAPI drives.\n\nThis patch adds ATA_DFLAG_DMADIR and make ata_dev_configure() set it\nif atapi_dmadir is set or identify data indicates DMADIR is necessary.\natapi_xlat() is converted to check ATA_DFLAG_DMADIR before setting\nDMADIR.\n\nOriginal patch is from Mark Lord.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Mark Lord \u003cmlord@pobox.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4ca4e439640cd1d3659cbcf60e7a73c2ae0450b3",
      "tree": "659dceb7469341dca95d7a96774e787c3b510872",
      "parents": [
        "35a10a80daa04b7316d6bac1b1402cc347c35b1e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sun Dec 30 09:32:22 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:15 2008 -0500"
      },
      "message": "libata annotations and fixes\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0dc36888d4422140f9eaf50f24953ec109f750a3",
      "tree": "80253b1831849e4063b73c31c15011c5e4c48404",
      "parents": [
        "537b53c1692960b8b3b0324e886fbe48cb9e5c00"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Dec 18 16:34:43 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:14 2008 -0500"
      },
      "message": "libata: rename ATA_PROT_ATAPI_* to ATAPI_PROT_*\n\nATA_PROT_ATAPI_* are ugly and naming schemes between ATA_PROT_* and\nATA_PROT_ATAPI_* are inconsistent causing confusion.  Rename them to\nATAPI_PROT_* and make them consistent with ATA counterpart.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "c88f90c3779cd5e710f2acdf59ad2bd0380de98d",
      "tree": "7b3d7464f03d2abdc105d07728cab0df67262a25",
      "parents": [
        "7dc951aefdc1dc20228691b04867fb6195864d67"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Nov 27 19:43:48 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:12 2008 -0500"
      },
      "message": "libata: add ATA_CBL_PATA_IGN\n\nATA_CBL_PATA_UNK indicates that the cable type can\u0027t be determined\nfrom the host side and might be either 80c or 40c.  libata applies\ndrive or other generic limit in this case.  However, there are\ncontrollers where both host and drive side detections are\nmisimplemented and the driver has to rely solely on private method -\npeeking BIOS or ACPI configuration or using some other private\nmechanism.\n\nThis patch adds ATA_CBL_PATA_IGN which tells libata to ignore the\ncable type completely and just let the LLD determine the transfer mode\nvia host transfer mode masks and -\u003emode_filter().\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "405e66b38797875e80669eaf72d313dbb76533c3",
      "tree": "a069f0bb4ae1e81a58bc8f8965a2443d25186f0d",
      "parents": [
        "f20ded38aa54b92dd0af32578b8916d0aa2d9e05"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Nov 27 19:28:53 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:10 2008 -0500"
      },
      "message": "libata: implement protocol tests\n\nImplement protocol tests - ata_is_atapi(), ata_is_nodata(),\nata_is_pio(), ata_is_dma(), ata_is_ncq() and ata_is_data() and use\nthem to replace is_atapi_taskfile() and hard coded protocol tests.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ae8d4ee7ff429136c8b482c3b38ed994c021d3fc",
      "tree": "bf45047ab8a4f5325c6b752be02313d3112eded0",
      "parents": [
        "ffe188dd83e84119516688c822388c8f30a54877"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Sun Nov 04 22:05:49 2007 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Jan 23 05:24:09 2008 -0500"
      },
      "message": "libata: Disable ATA8-ACS proposed Trusted Computing features by default\n\nHistorically word 48 in the identify data was used to mean 32bit I/O\nwas supported for VLB IDE etc. ATA8 reassigns this word to the Trusted\nComputing Group, where it is used for TCG features. This means that\nan ATA8 TCG drive is going to trigger 32bit I/O on some systems which\nwill be funny.\n\nAnyway we need to sort this out ready for ATA8 so:\n- Reorder the ata.h header a bit so the ata_version function occurs early\n  in it\n- Make dword_io check the ATA version\n- Add an ATA8 version checking TCG presence test\n\nWhile we are at it the current drafts have a flaw where it may not be\npossible to disable TCG features at boot (and opt out of the trusted\nmodel) as TCG intends because it relies on presence of a different\noptional feature (DCS). Handle this in software by refusing the TCG\ncommands if libata.allow_tpm is not set. (We must make it possible\nas some environments such as proprietary VDR devices will doubtless\nwant to use it to lock up content)\n\nFinally as with CPRM print a warning so that the user knows they may\nnot be able to full access and use the device.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\n"
    },
    {
      "commit": "121a09e590d54be840289c6feac840453aa999d9",
      "tree": "3787fdb9c29811d161049b669209b99dedf79f40",
      "parents": [
        "0f7577434bcdf99456757b44d8911dc6e51c3178"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 14 01:06:40 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Jan 15 16:35:21 2008 -0500"
      },
      "message": "libata: correct handling of TSS DVD\n\nDevices that misreport the validity bit for word 93 look like SATA.  If\nthey are on the blacklist then we must not test for SATA but assume 40 wire\nin the 40 wire case (The TSSCorp reports 80 wire on SATA it seems!)\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ce2e0abbd31b047ac7be740d28ef710f5bbdb105",
      "tree": "d7dbdc8b603f8d90bbad5876225970d91c65f01d",
      "parents": [
        "c2e366a107e511ad00c2181c52e4150fc086ec0f"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Dec 15 15:04:59 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 17 20:33:12 2007 -0500"
      },
      "message": "libata: add more opcodes to ata.h\n\nAdd constants for DEVICE CONFIGURATION OVERLAY and SET_MAX to\ninclude/linux/ata.h.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6bbfd53d47abd1fb20d7c93a9b19a75970b66f49",
      "tree": "9c28b3b033e32dd5a03c08b61bdddcd79283791f",
      "parents": [
        "73946f9fc5be1433f1e182d11303188390ff242f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Nov 05 22:58:58 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Nov 05 18:10:28 2007 -0500"
      },
      "message": "libata: handle broken cable reporting\n\nOne or two ancient drives predated the cable spec and didn\u0027t sent the\nvalid bits for the field. I had hoped to leave this out of libata as a\npiece of historical annoyance but a recent CD drive shows the same bug so\nwe have to import support for it.\n\nSame concept as Bartlomiej\u0027s changes old IDE except that as we have\ncentralised blacklists we can avoid keeping another private table of stuff\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "17bd9a2f4c35de29d2539a2ff6851d61be281e25",
      "tree": "9119dc563f702644c4ca889a942f49be6a2fd18a",
      "parents": [
        "b55d1b1814c52463c11707f53dbdc223e09b2924"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Mon Oct 29 21:21:37 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Nov 04 22:53:15 2007 -0500"
      },
      "message": "libata and bogus LBA48 drives\n\nA colleague noticed recent versions of Ubuntu no longer detect his 80 GB\nST380020ACE drive. This drive is special in that it advertises LBA48 support,\nbut has the lba_capacity_2 field set to zero (cfr.\nhttp://lkml.org/lkml/2004/3/30/163).\n\nUpon closer look, libata indeed doesn\u0027t seem to handle this case yet.\nBelow is an (untested) fix.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f8d8e5799b75cf7ad530d2bf2a42229bf7360526",
      "tree": "f5094c82ca94ff1bdfbca4e7be69bfed7db5ccdd",
      "parents": [
        "03116d67e0973bb493fe9307e28973a24a272bcc"
      ],
      "author": {
        "name": "Tony Battersby",
        "email": "tonyb@cybernetics.com",
        "time": "Tue Oct 30 11:44:35 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Nov 03 08:46:54 2007 -0400"
      },
      "message": "libata: increase 128 KB / cmd limit for ATAPI tape drives\n\nCommands sent to ATAPI tape drives via the SCSI generic (sg) driver are\nlimited in the amount of data that they can transfer by the max_sectors\nvalue.  The max_sectors value is currently calculated according to the\ncommand set for disk drives, which doesn\u0027t apply to tape drives.  The\ndefault max_sectors value of 256 limits ATAPI tape drive commands to\n128 KB.  This patch against 2.6.24-rc1 increases the max_sectors value\nfor tape drives to 65535, which permits tape drive commands to transfer\njust under 32 MB.\n\nTested with a SuperMicro PDSME motherboard, AHCI, and a Sony SDX-570V\nSATA tape drive.\n\nNote that some of the chipset drivers also set their own max_sectors\nvalue, which may override the value set in libata-core.  I don\u0027t have\nany of these chipsets to test, so I didn\u0027t go messing with them.  Also,\nATAPI devices other than tape drives may benefit from similar changes,\nbut I have only tape drives and disk drives to test.\n\nSigned-off-by: Tony Battersby \u003ctonyb@cybernetics.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ca77329fb713b7fea6a307068e0dd0248e7aa640",
      "tree": "6a1b987f489d7c3f0bbe81647b4ee2b0216afe8a",
      "parents": [
        "ab6fc95f609b372a19e18ea689986846ab1ba29c"
      ],
      "author": {
        "name": "Kristen Carlson Accardi",
        "email": "kristen.c.accardi@intel.com",
        "time": "Thu Oct 25 00:58:59 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 29 11:00:35 2007 -0400"
      },
      "message": "[libata] Link power management infrastructure\n\nDevice Initiated Power Management, which is defined\nin SATA 2.5 can be enabled for disks which support it.\nThis patch enables DIPM when the user sets the link\npower management policy to \"min_power\".\n\nAdditionally, libata drivers can define a function\n(enable_pm) that will perform hardware specific actions to\nenable whatever power management policy the user set up\nfor Host Initiated Power management (HIPM).\nThis power management policy will be activated after all\ndisks have been enumerated and intialized.  Drivers should\nalso define disable_pm, which will turn off link power\nmanagement, but not change link power management policy.\n\nDocumentation/scsi/link_power_management_policy.txt has additional\ninformation.\n\nSigned-off-by:  Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "054a5fbaceb2eb3a31ea843c1cf0b8e10b91478c",
      "tree": "cbf21985f3894b11fe00666cef8ac33bae4f007d",
      "parents": [
        "4dbfa39b6c95eb9d0aedb5bd00bb552b91c31e3d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Oct 25 18:30:36 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Oct 29 06:15:25 2007 -0400"
      },
      "message": "libata: track SLEEP state and issue SRST to wake it up\n\nATA devices in SLEEP mode don\u0027t respond to any commands.  SRST is\nnecessary to wake it up.  Till now, when a command is issued to a\ndevice in SLEEP mode, the command times out, which makes EH reset the\ndevice and retry the command after that, causing a long delay.\n\nThis patch makes libata track SLEEP state and issue SRST automatically\nif a command is about to be issued to a device in SLEEP.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Bruce Allen \u003cballen@gravity.phys.uwm.edu\u003e\nCc: Andrew Paprocki \u003candrew@ishiboo.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2dcb407e61458ded17503d6bd12b8c064965368b",
      "tree": "6044e032197b84f9943a385b0c9dbb6656c3f97f",
      "parents": [
        "01e7ae8c13bb06a2ce622ebace33bb7e28ef596c"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 19 06:42:56 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Oct 23 20:59:42 2007 -0400"
      },
      "message": "[libata] checkpatch-inspired cleanups\n\nTackle the relatively sane complaints of checkpatch --file.\n\nThe vast majority is indentation and whitespace changes, the rest are\n\n* #include fixes\n* printk KERN_xxx prefix addition\n* BSS/initializer cleanups\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "1333e19434da116bc832e1b8925359d1565fedc9",
      "tree": "581785c8864f55347e1de0eb10850cc374b79b6e",
      "parents": [
        "6949b9148d3656afc13a2ccc06d13c071ec71bdc"
      ],
      "author": {
        "name": "Robert Hancock",
        "email": "hancockr@shaw.ca",
        "time": "Tue Oct 02 11:22:02 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:45 2007 -0400"
      },
      "message": "libata: add human-readable error value decoding\n\nThis adds human-readable decoding of the ATA status and error registers\n(similar to what drivers/ide does) as well as the SATA Serror register\nto libata error handling output.  This prevents the need to pore\nthrough standards documents to figure out the meaning of the bits\nin these registers when looking at error reports.  Some bits that\ndrivers/ide decoded are not decoded here, since the bits are either\ncommand-dependent or obsolete, and properly parsing them would add\ntoo much complexity.\n\nSigned-off-by: Robert Hancock \u003chancockr@shaw.ca\u003e\n\n[edited slightly to make output a bit more symmetric]\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "854c73a2f1c3bcc4aa88c25e208dc597e8efb795",
      "tree": "210569f3c4fa4f9413ceb0bc3fcf89648a9894b2",
      "parents": [
        "c78968bb0f7714ceba1cdfa23714454fc98cefdf"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Sep 23 13:14:11 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:40 2007 -0400"
      },
      "message": "libata: misc updates for AN\n\nUpdate AN support in preparation of PMP support.\n\n* s/ata_id_has_AN/ata_id_has_atapi_AN/\n* add AN enabled reporting during configuration\n* add err_mask to AN configuration failure reporting\n* update LOCKING comment for ata_scsi_media_change_notify()\n* check whether ATA dev is attached to SCSI dev ata_scsi_media_change_notify()\n* set ATA_FLAG_AN in ahci and sata_sil24\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Kriten Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c7293870a93a99e9ce0f4d98f3a271539c7c6ad6",
      "tree": "837cb89920034e7983b483f1d8db5fb96c454414",
      "parents": [
        "614fe29bd91f99cc1c1fbf3274fa918691044f47"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Aug 22 23:31:43 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:37 2007 -0400"
      },
      "message": "libata: Strict checking for identify reporting\n\nThe ATA specifications require checks on certain flags before assuming\nthe validity of other data. Go through the methods and correct those\nneeding extra checks. Also note limits on ata_id_major_version with\nrespect to ATA-1 and ATA-2. Correct the 32bit PIO check.\n\nWants to sit in -mm for a bit in case of a screwup on my part that I\ndidn\u0027t hit on the test drives and also in case someone, somewhere has\na drive that gets it wrong.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "9f45cbd3f0fc597530aaf85cad7fe52cd63f1fd8",
      "tree": "44f9f11250f7629e7091b1532489d7a6539f758a",
      "parents": [
        "05d1efffdc9bf84311bb1a3c2e3db55b544ca119"
      ],
      "author": {
        "name": "Kristen Carlson Accardi",
        "email": "kristen.c.accardi@intel.com",
        "time": "Wed Aug 15 03:57:11 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:33 2007 -0400"
      },
      "message": "[libata] check for SATA async notify support\n\nCheck to see if an ATAPI device supports Asynchronous Notification.\nIf so, enable it, if the host controller supports AN.\n\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0bc2a79a2002e3cc1b514c100b6c576983da6a90",
      "tree": "7669cfe54f3cf5125be440c5c9e84d29cec27294",
      "parents": [
        "e3667ebf857ba744b5211c90d46f6a17dd9a2479"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Jul 31 14:01:48 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 12 14:55:32 2007 -0400"
      },
      "message": "libata: Correct IORDY handling\n\nDebugging a report of a problem with an ancient solid state disk showed\nup some problems in the IORDY handling\n\n1.\tWe check the wrong bit to see if the device has IORDY\n2.\tEven then some ancient creaking piles of crap don\u0027t support\n\tSETXFER at all.\n\nThe cases it fixes are obscure and the risk of side effects is slight\nbut possible. This also moves us slightly closer to supporting original\nMFM/RLL disks with libata.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "91a6d4ed333a47003f07636b3bd143521e0bbad1",
      "tree": "43f7dc981119e0a76a9f4efc5eca51f451fef924",
      "parents": [
        "c5cf0ffa71d32c03607d287b76483479afb0bcd3"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Mon Aug 27 19:35:22 2007 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Aug 31 04:00:19 2007 -0400"
      },
      "message": "ata: add ATA_MWDMA* and ATA_SWDMA* defines\n\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "4099d14322149c7a467e4997b87be4ba8eb78697",
      "tree": "133a913d7f9c2dacaaaef5cfdf2ae6911dc21f4c",
      "parents": [
        "6a824c92db4d606c324272c4eed366fb71672440"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jul 20 01:11:59 2007 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Fri Jul 20 01:11:59 2007 +0200"
      },
      "message": "ide: add PIO masks\n\n* Add ATA_PIO[0-6] defines to \u003clinux/ata.h\u003e.\n\n* Add -\u003epio_mask field to ide_pci_device_t and ide_hwif_t.\n\n* Add PIO masks to host drivers.\n\n\u003clinux/ata.h\u003e change ACK-ed by Jeff Garzik \u003cjeff@garzik.org\u003e.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "814600ee10d3c056ada315cdbdc2ebe48f54c75a",
      "tree": "0d83d136e891ad1bbec738572ef37390c00e7e9b",
      "parents": [
        "fee7ca72d3dae1078031b6fd272b9930f43bd3d1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Jul 01 19:05:58 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Jul 10 21:46:03 2007 -0400"
      },
      "message": "libata-link: add PMP related ATA constants\n\nAdd Port Multiplier related ATA constants and macros.  Some of these\nwill be used by ata_link implementation.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "ab2181cf390902f0371f30e4ebeb407b4aaa7314",
      "tree": "4d1acf61f9d013f7da33eb3aad0bf474b405268d",
      "parents": [
        "a09060ffe516a0e55f29c89b7da2da760c9487d7"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon May 28 08:30:36 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jul 09 12:17:33 2007 -0400"
      },
      "message": "[ATA] Add named constant for ATAPI command DEVICE RESET\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "2c3d2a46f1ccf591850b20f4fdde12bcf2bf3dfd",
      "tree": "148a2cd32ae40185bb547cb96cd17bcd920b8ab0",
      "parents": [
        "fa4453c4c94a61bbefe470b16ddbb6218481c6dc"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Thu Jun 07 16:01:17 2007 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Jun 09 23:08:12 2007 -0400"
      },
      "message": "libata passthru: update cached device paramters\n\nINIT_DEV_PARAMS and SET_MULTI_MODE change the device parameters cached\nby libata.  Re-read IDENTIFY DEVICE info and update the cached device\nparamters when seeing these commands.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1dce589c38c36ae69614840ee230183f3a7d43c5",
      "tree": "b236f4ee06cca72bc07d88f6fbbf87ddc6b8ab83",
      "parents": [
        "f93f1078d08e0f63a6a4bdaa154de3642fc03d5d"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Thu Jun 07 15:49:22 2007 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Jun 09 23:08:11 2007 -0400"
      },
      "message": "libata passthru: support PIO multi commands\n\n  support the pass through of PIO multi commands.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "169439c2e35f01e7832a9b4fc8a7446980c3d593",
      "tree": "83cbc6898be74b2bfb49bd4eaa966913c49de9da",
      "parents": [
        "1e999736cafdffc374f22eed37b291129ef82e4e"
      ],
      "author": {
        "name": "Mark Lord",
        "email": "liml@rtr.ca",
        "time": "Tue Apr 17 18:26:07 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:40:40 2007 -0400"
      },
      "message": "libata: Handle drives that require a spin-up command before first access\n\n(S)ATA drives can be configured for \"power-up in standby\",\na mode whereby a specific \"spin up now!\" command is required\nbefore the first media access.\n\nCurrently, a drive with this feature enabled can not be used at all\nwith libata, and once in this mode, the drive becomes a doorstop.\n\nThe older drivers/ide subsystem at least enumerates the drive,\nso that it can be woken up after the fact from a userspace HDIO_*\ncommand, but not libata.\n\nThis patch adds support to libata for the \"power-up in standby\"\nmode where a \"spin up now!\" command (SET_FEATURES) is needed.\nWith this, libata will recognize such drives, spin them up,\nand then re-IDENTIFY them if necessary to get a full/complete\nset of drive features data.\n\nDrives in this state are determined by looking for\nspecial values in id[2], as documented in the current ATA specs.\n\nSigned-off-by: Mark Lord \u003cmlord@pobox.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1e999736cafdffc374f22eed37b291129ef82e4e",
      "tree": "d71e0907827841de66f172dec0cc4d550bd2cec8",
      "parents": [
        "6bfff31e77cfa1b13490337e5a4dbaa3407e83ac"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Apr 11 00:23:13 2007 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:06 2007 -0400"
      },
      "message": "libata: HPA support\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\n\nAdd support for ignoring the BIOS HPA result (off by default) and setting\nthe disk to the full available size unless already frozen.\n\nTested with various platforms/disks and confirmed to work with the\nMacintosh (which broke earlier) and ata_piix (breakage due to the LBA48\nreadback that Tejun fixed).\n\nFor normal users this brings us, I believe, to feature parity with old IDE\n(and of course more featured in some areas too).\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "5a5dbd18a7496ed403f6f54bb20c955c65482fa5",
      "tree": "031eec40ab42ac4ab04e59db539b8126ac31fb6d",
      "parents": [
        "1234010684bb9cde51125ec3d1c71054a9f24f47"
      ],
      "author": {
        "name": "Mark Lord",
        "email": "liml@rtr.ca",
        "time": "Fri Mar 16 10:22:26 2007 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Apr 28 14:16:01 2007 -0400"
      },
      "message": "libata: add support for READ/WRITE LONG\n\nThe READ/WRITE LONG commands are theoretically obsolete,\nbut the majority of drives in existance still implement them.\n\nThe WRITE_LONG and WRITE_LONG_ONCE commands are of particular\ninterest for fault injection testing -- eg. creating \"media errors\"\nat specific locations on a disk.\n\nThe fussy bit is that these commands require a non-standard\nsector size, usually 520 bytes instead of 512.\n\nThis patch adds support to libata for READ/WRITE LONG commands\nissued via SG_IO/ATA_16.\n\nSigned-off-by:  Mark Lord \u003cmlord@pobox.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "18d6e9d51891f91af4e7351cbab3cb180bb9f430",
      "tree": "5ba793fd334c4afbbcdfeb00353f46c9d3aaf6a2",
      "parents": [
        "56287768e31268969abd94b38b931a29d1ced1ce"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Mon Apr 02 11:34:15 2007 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Wed Apr 04 02:12:27 2007 -0400"
      },
      "message": "libata: Limit max sector to 128 for TORiSAN DVD drives (take 3)\n\npatch 3/4:\n  The TORiSAN drive locks up when max sector \u003d\u003d 256.\n  Limit max sector to 128 for the TORiSAN DRD-N216 drives.\n  (http://bugzilla.kernel.org/show_bug.cgi?id\u003d6710)\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "32d90911568f67fad3f73623e106667a37c6e7ed",
      "tree": "96690244a571855cb89343028a03016279ebf914",
      "parents": [
        "f5ecac2d8e0beb0e4d3eb09833cfd19d8f9f004d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Wed Feb 21 20:25:08 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 23 05:37:11 2007 -0500"
      },
      "message": "libata: test major version in ata_id_is_sata()\n\nTest major version in ata_id_is_sata() not separately.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "61f216c7196e15e56d97c5a75af01e6684f17fa3",
      "tree": "20a5c677c6ed74d4518a8da399f71d2f3bd5bc8b",
      "parents": [
        "5387373bfe78b7795b96378250f6848f39d78b80"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon Feb 05 23:21:19 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Feb 15 18:04:01 2007 -0500"
      },
      "message": "libata: fix drive side 80c cable check, take 3\n\nThe 80c wire bit is bit 13, not 14.  Bit 14 is always 1 if word93 is\nimplemented.  This increases the chance of incorrect wire detection\nespecially because host side cable detection is often unreliable and\nwe sometimes soley depend on drive side cable detection.  Fix the test\nand add word93 validity check.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "49554c19569c91d0943b67ca731c9abfc857883f",
      "tree": "4a05df47a57f79565c1ce2bed0b3d4561a282b3b",
      "parents": [
        "2c7620d50c23737728bccfb26ffb94cd51e58007"
      ],
      "author": {
        "name": "Alan",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Feb 05 16:17:19 2007 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:39 2007 -0500"
      },
      "message": "ata: Add defines for the iordy bits\n\nIORDY and IORDY enable/disable flags.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "a0cf733b333eeeafb7324e2897448006c693c26c",
      "tree": "9a08b3e197cf4d1d17c39ed93cbcdd26fd722316",
      "parents": [
        "cdf56bcf14b9d441777703eef95eef807e4136ec"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Tue Jan 02 20:18:49 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:30 2007 -0500"
      },
      "message": "libata: straighten out ATA_ID_* constants\n\n* Kill _OFS suffixes in ATA_ID_{SERNO|FW_REV|PROD}_OFS for consistency\n  with other ATA_ID_* constants.\n\n* Kill ATA_SERNO_LEN\n\n* Add and use ATA_ID_SERNO_LEN, ATA_ID_FW_REV_LEN and ATA_ID_PROD_LEN.\n  This change also makes ata_device_blacklisted() use proper length\n  for fwrev.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "fc085150b491bfc186efbca90a14cf907a3060a9",
      "tree": "b5bf8b6eb6d0dabd8699e6b41c239619590659e2",
      "parents": [
        "2f27ce03628acdb81ead4abe914c713e04a3229e"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Oct 10 14:28:11 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 01 22:40:25 2006 -0500"
      },
      "message": "[PATCH] libata: add 40pin \"short\" cable support, honour drive side speed detection\n\n[deweerdt@free.fr: build fix]\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Frederik Deweerdt \u003cdeweerdt@free.fr\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "9bec2e38527a9f2497b3d976715c672d08d6160d",
      "tree": "b081189d1beca3a81ade7209c131977cd8f23f3b",
      "parents": [
        "b01e86fee6c821e4e003fd4e9f65453ac478a58e"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 31 00:02:15 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 31 00:02:15 2006 -0400"
      },
      "message": "[libata] Trim trailing whitespace.\n"
    },
    {
      "commit": "b352e57dc3bb5033996adaa67c2f69b795eddd39",
      "tree": "2bfec75e331452c84a591b6fad1e1407b22a1922",
      "parents": [
        "cea0d336e7e139becc9432499e0ba8234ffbed5f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Aug 10 18:52:12 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Aug 14 14:04:37 2006 -0400"
      },
      "message": "[PATCH] libata: Add CompactFlash support\n\nThe CFA world has some additional rules and drive modes we need to support for\nnewer expansion cards and on embedded boxes\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8b881b0410de0f72a43e814393abf3a4cb29ebb4",
      "tree": "4ee2da79e3e069226bb7824019f81e25fa5c3622",
      "parents": [
        "2b8ae728a8bada0cca10f30d3e7c52d384e8d5ad"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Jun 11 09:59:27 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Thu Aug 10 06:49:45 2006 -0400"
      },
      "message": "[ATA] Increase lba48 max-sectors from 200 to 256.\n\nAlso, moved ATA_MAX_SECTORS and ATA_MAX_SECTORS_LBA48 from\nlinux/libata.h to linux/ata.h, now that they truly reflect the standard\n(well... mostly; note TODO comment).\n\nThis changes the performance profile (and potential bug profile)\nfor a bunch of drivers, so be wary.\n"
    },
    {
      "commit": "3057ac3c1a992ee135cbb7b7d1a12e58d81f0739",
      "tree": "38d83a88ee949b9db8f6655f90f98d88f8a5f2fd",
      "parents": [
        "39b07ce6d9f7cd4da8567baed844801e0aaa7b1a"
      ],
      "author": {
        "name": "zhao, forrest",
        "email": "forrest.zhao@intel.com",
        "time": "Mon Jun 12 12:01:34 2006 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 12 00:18:35 2006 -0400"
      },
      "message": "[PATCH] Snoop SET FEATURES - WRITE CACHE ENABLE/DISABLE command(v5)\n\nThis patch makes libata snoop \u0027SET FEATURES - WRITE CACHE\nENABLE/DISABLE\u0027 command, executing requisite revalidation processes\nto update cached data.\n\nSigned-off-by: Forrest Zhao \u003cforrest.zhao@intel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "88e490340ea4c3a2ebc0187a4339912e2fc1a081",
      "tree": "ab2604a796754a0fba301b4362dc649136b180c3",
      "parents": [
        "c17ea20d9a689d7335e97e09354865cdd9f873e1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 21:03:38 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 21:03:38 2006 +0900"
      },
      "message": "[PATCH] libata-ncq: add NCQ related ATA/libata constants and macros\n\nAdd NCQ related ATA/libata constants and macros.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "12436c30f4808e00fa008c6787c609bc6ae216ba",
      "tree": "22ddaad8def4f4a77637a3da62a8d8f422a95c29",
      "parents": [
        "88ce7550c38f46c8697f53727a571bf838bee398",
        "7894eaf291238a62a565e9e9777483beeb00eeae"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:59:15 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:59:15 2006 +0900"
      },
      "message": "Merge branch \u0027irq-pio\u0027\n\nConflicts:\n\n\tdrivers/scsi/libata-core.c\n\tinclude/linux/libata.h\n"
    },
    {
      "commit": "9be1e979f2e1e57a091a658fa88dac266f9fd6fe",
      "tree": "781b216ce5a2b39c711ee32d285f4455feba7d34",
      "parents": [
        "246619da308c6910a3ae30e7e5fbf46139619efe"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:58:17 2006 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Mon May 15 20:58:17 2006 +0900"
      },
      "message": "[PATCH] libata-eh: add ATA and libata flags for new EH\n\nAdd ATA and libata flags to be used by new EH.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\n"
    },
    {
      "commit": "11ed56fb7899f9eb9eaef8e5919db1bf08f1b07e",
      "tree": "b01421cb139b11065d776ed361a7a12b3a1aecc9",
      "parents": [
        "54da9a3968448681d0ddf193ec90f2480c5cba1c",
        "2cc432eed0491df66e14b578139bba2c75fb3f9a"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Mar 24 09:24:04 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Mar 24 09:24:04 2006 -0500"
      },
      "message": "Merge branch \u0027upstream\u0027\n\nConflicts:\n\n\tdrivers/scsi/sata_vsc.c\n"
    },
    {
      "commit": "b6782728d703fa3f0e5478a8b89e49ea10b1fdd0",
      "tree": "bb3c44ac421d77c42a58ed426236897016b60991",
      "parents": [
        "806a6e7a9904d4a1dfd3fd79d373bf31d71d34cb"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Mar 21 15:52:49 2006 +0000"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 21:21:31 2006 -0500"
      },
      "message": "[PATCH] libata: Add the useful macros/constants needed for merging PATA stuff\n\nHPA presence/enabled\nHPA commands\n\nAlso add ata_id_is_cfa() as that is needed to detect and handle CF cards\nwhich currently we reject.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f59b0cf8a3a39b75e580066c6a9aeabd97ec2743",
      "tree": "785118d3a81dbeea6308d6282eb32ae514089485",
      "parents": [
        "41ade50c4eff9477e6aef6b15e84673c6758ec0d"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Thu Mar 16 17:59:22 2006 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Mar 21 20:39:46 2006 -0500"
      },
      "message": "[PATCH] libata-dev: Remove ATA_PROT_PIO_MULT\n\nRemove the ATA_PROT_PIO_MULT protocol.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c2956a3b0d1c17b38da369811a6ce93eb7a01a04",
      "tree": "4b70c386afe2547908a8f03f0746ff614eb393e0",
      "parents": [
        "801c63c38ae52e8bfb3f6518de00a0be22c55f9a"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Fri Mar 03 10:34:05 2006 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Mar 03 12:19:43 2006 -0500"
      },
      "message": "[PATCH] libata-dev: recognize WRITE_MULTI_FUA_EXT for r/w multiple\n\nRecognize ATA_CMD_WRITE_MULTI_FUA_EXT as r/w multiple commands.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3875e1945b55f0eb83fe7359614a801eeb716761",
      "tree": "4567aef3fb7d081cb7d7b7c9bcd94e0e44d39557",
      "parents": [
        "587005de144acd3007b8e7f2a2a7c6add157c155",
        "f1b318793dcd2d9ff6b5ac06e7762098fa079cee"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Feb 13 00:13:48 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Feb 13 00:13:48 2006 -0500"
      },
      "message": "Merge branch \u0027upstream\u0027\n"
    },
    {
      "commit": "3d2ca91095f8ab6dc0cb925374eec62fa5336764",
      "tree": "4320fb9649dfbd389ea07d299288732b767534d7",
      "parents": [
        "2940740bcaa5948967d261dfceec04f40b2d2fa1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Feb 12 22:47:04 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Feb 12 14:24:41 2006 -0500"
      },
      "message": "[PATCH] libata: separate out ata_id_major_version()\n\nSeparate out ATA major version calculation from ata_dev_identify()\ninto ata_id_major_version().  It\u0027s preparation for splitting\nata_dev_identify().\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "8dd2e3bd57c3b389febba1de6b10372ef507f985",
      "tree": "1fdb120ec9c0c81f8f2a9452ae6c225d68aed5e3",
      "parents": [
        "2af5920b81a4cd0a22d40b6b2c38356d3df03e13",
        "71e834f563799e09c6bd7d6638993b464fac26f5"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Jan 27 02:26:46 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Jan 27 02:26:46 2006 -0500"
      },
      "message": "Merge branch \u0027tmp\u0027\n"
    },
    {
      "commit": "ea9b395fe20ac74be788f415af2622ac8f0c35c7",
      "tree": "d1653e1a4cbe360aa7132ea4e29ab92a02038224",
      "parents": [
        "61420e147a706ee7c7a902008045547fb2a2a330",
        "1bc4ccfff8675adc3d96f91245eb7e2dc0043ca9"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Jan 17 10:29:06 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Jan 17 10:29:06 2006 -0500"
      },
      "message": "Merge branch \u0027upstream\u0027\n"
    },
    {
      "commit": "0825788ff27c7145e9d558cb2a26f3837d1f9be5",
      "tree": "f6bdb892cec8ca0df69c08a3477c89f1542999e5",
      "parents": [
        "02f693c7118f6be9e677070eb630c1f3a654cdd3",
        "1bc4ccfff8675adc3d96f91245eb7e2dc0043ca9"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Jan 17 10:26:28 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Jan 17 10:26:28 2006 -0500"
      },
      "message": "Merge branch \u0027upstream\u0027\n"
    },
    {
      "commit": "d99cf9d679a520d67f81d805b7cb91c68e1847f0",
      "tree": "415aefe6d168df27c006fcc53b1ea5242eabaaea",
      "parents": [
        "7ed40918a386afc2e14a6d3da563ea6d13686c25",
        "e650c305ec3178818b317dad37a6d9c7fa8ba28d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 09:01:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 09:01:25 2006 -0800"
      },
      "message": "Merge branch \u0027post-2.6.15\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\nManual fixup for merge with Jens\u0027 \"Suspend support for libata\", commit\nID 9b847548663ef1039dd49f0eb4463d001e596bc3.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b847548663ef1039dd49f0eb4463d001e596bc3",
      "tree": "105a0eece522b1347bea57f609f6c04ed673fdb3",
      "parents": [
        "88202a0c84e1951d6630d1d557d4801a8cc5b5ef"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:28:07 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:36:09 2006 -0800"
      },
      "message": "[PATCH] Suspend support for libata\n\nThis patch adds suspend patch to libata, and ata_piix in particular. For\nmost low level drivers, they should just need to add the 4 hooks to\nwork. As I can only test ata_piix, I didn\u0027t enable it for more\nthough.\n\nSuspend support is the single most important feature on a notebook, and\nmost new notebooks have sata drives. It\u0027s quite embarrassing that we\n_still_ do not support this. Right now, it\u0027s perfectly possible to\nsuspend the drive in mid-transfer.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9a3dccc42556537a48f39ee9a9e7ab90a933f766",
      "tree": "e67d7b314d4e0732bfa5558bef4f1941ea80cb58",
      "parents": [
        "93c9338713d4e11102cd09b4670ad42a336b06a3"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Fri Jan 06 09:56:18 2006 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Fri Jan 06 09:56:18 2006 +0100"
      },
      "message": "[BLOCK] add FUA support to libata\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "07f6f7d074e68d56d82e7cc5c65096033ac8dc56",
      "tree": "d420722be7721691e5c56dc5a0ff326e926a58e6",
      "parents": [
        "fbcdd80b0d5bde06f3483b9a13f9599a0452431c"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Tue Nov 01 19:33:20 2005 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Nov 09 01:22:19 2005 -0500"
      },
      "message": "[PATCH] libata irq-pio: add read/write multiple support\n\n   - add is_multi_taskfile() to ata.h\n   - initialize ata_device-\u003emulti_count with device identify data\n   - use ata_pio_sectors() to support r/w multiple commands\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "35ebbae2836a361330b784706b7140c90a346a53",
      "tree": "ada3c046a8b6bfdf21bcb0932b4b65c95c2af073",
      "parents": [
        "c6a33e2464edd87f8c12cc2d11369a5b44c65b77",
        "5fadd053d9bb4345ec6f405d24db4e7eb49cf81e"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 12:30:29 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 12:30:29 2005 -0400"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "15dbb5a3f971a28040ae6cbcd8bbdf19b629fa83",
      "tree": "e65562d7300ac653207b1e45ec7e5960ddf78fff",
      "parents": [
        "be697c3f137c9ed808753bbbc5d7751c6e5303fc",
        "5fadd053d9bb4345ec6f405d24db4e7eb49cf81e"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 12:30:16 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 28 12:30:16 2005 -0400"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "057ace5e79da9ebf2aa82833cfea825533ac06fb",
      "tree": "f27ed6cbd9a185041862471ef421e6415e099344",
      "parents": [
        "cf482935c6abe5245e481213c6e6df808c976f56"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Oct 22 14:27:05 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Oct 22 14:27:05 2005 -0400"
      },
      "message": "libata: const-ification bombing run\n\nEnforce access rules where appropriate.\n\nIf the compiler is smart enough, this may buy us an optimization or two\nas a side effect.\n"
    },
    {
      "commit": "11e29e21514517f3022a1f30998ac4c7b1197658",
      "tree": "195f9ce419f5141d6bab4676184d16fd600cf139",
      "parents": [
        "307e4dc28ee255bf22b431f242f847c9d96fe3fa"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Fri Oct 21 18:46:32 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Fri Oct 21 18:46:32 2005 -0400"
      },
      "message": "libata: handle early device PIO modes correctly\n"
    },
    {
      "commit": "4e0e329d9a2011f9f7a7c0a378dc3bff7b0a0283",
      "tree": "a802614e01460631c694dfa118642d54c3d5fc79",
      "parents": [
        "e33b9dfa3008fcaa908dc0c8c472a812c400f839",
        "59a10b172fccaea793352c00fd9065f0a5b4ef70"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Oct 18 21:23:11 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Oct 18 21:23:11 2005 -0400"
      },
      "message": "Merge branch \u0027upstream\u0027\n"
    },
    {
      "commit": "c6a33e2464edd87f8c12cc2d11369a5b44c65b77",
      "tree": "f15eb374fa98fb1f76bf3a7cffd9cb8ef7173091",
      "parents": [
        "59a10b172fccaea793352c00fd9065f0a5b4ef70"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Wed Oct 12 15:12:26 2005 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Oct 18 17:18:16 2005 -0400"
      },
      "message": "[PATCH] libata CHS: LBA28/LBA48 optimization (revise #6)\n\n     - add lba_28_ok() and lba_48_ok() to ata.h.\n     - check ending block number instead of staring block number.\n     - use lba_28_ok() for CHS range check\n     - LBA28/LBA48 optimization\n\nSuggested by Mark Lord and Alan Cox.\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\n\n\u003d\u003d\u003d\u003d\u003d\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "8cbd6df1f0ce977ab7b61feffa59879bb5e0ed8f",
      "tree": "c460778581293ad479ec4983690ccc46bcb4df56",
      "parents": [
        "07506697d1c615924298406f2357810709c09bcd"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Wed Oct 12 15:06:27 2005 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Tue Oct 18 17:16:13 2005 -0400"
      },
      "message": "[PATCH] libata CHS: calculate read/write commands and protocol on the fly (revise #6)\n\n     - merge ata_prot_to_cmd() and ata_dev_set_protocol() as\n       ata_rwcmd_protocol()\n     - pave road for read/write multiple support\n     - remove usage of pre-cached command and protocol values and call\n       ata_rwcmd_protocol() instead\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "0fbbbf2bde4da5cb01a949c3d7b21c0627f520a8",
      "tree": "f081ef10f3067b28a1ee316a8e7292eeda143419",
      "parents": [
        "54f00389563c80fa1de250a21256313ba01ca07d",
        "2b235826098bb653982894dfc3f70fd029f6c2e4"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Oct 03 19:48:49 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Oct 03 19:48:49 2005 -0400"
      },
      "message": "Merge libata upstream (which includes C/H/S support) include irq-pio branch.\nMerge branch \u0027upstream\u0027\n"
    },
    {
      "commit": "b4b52db71529bbe46da914eda772fb574914c94d",
      "tree": "3f29440fd0a5b16ef06cb04296682df269b478c2",
      "parents": [
        "a1213499b0ef75d8c627b461047805a235c9dd00"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Sep 26 12:48:41 2005 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Sep 28 13:29:56 2005 -0400"
      },
      "message": "[PATCH] ata: re-order speeds sensibly.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "312f7da2824c82800ee78d6190f12854456957af",
      "tree": "68b3b18a4ddd783a5c75dba688aabf2de0682fb3",
      "parents": [
        "14be71f4c5c5ad1e222c5202ee6d234e9c8828b7"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Tue Sep 27 17:38:03 2005 +0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Sep 28 12:07:13 2005 -0400"
      },
      "message": "[PATCH] libata: interrupt driven pio for libata-core\n\n- add PIO_ST_FIRST for the state before sending ATAPI CDB or sending\n\"ATA PIO data out\" first data block.\n- add ATA_TFLAG_POLLING and ATA_DFLAG_CDB_INTR flags\n- remove the ATA_FLAG_NOINTR flag since the interrupt handler is now\naware of the states\n- modify ata_pio_sector() and atapi_pio_bytes() to work in the interrupt\ncontext\n- modify the ata_host_intr() to handle PIO interrupts\n- modify ata_qc_issue_prot() to initialize states\n- atapi_packet_task() changed to handle \"ATA PIO data out\" first data block\n- support the pre-ATA4 ATAPI device which raise interrupt when ready to\nreceive CDB\n\nSigned-off-by: Albert Lee \u003calbertcc@tw.ibm.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\n"
    },
    {
      "commit": "76b2bf9b4dee2fb32ef17f5c84a99ce481a14be2",
      "tree": "49cd36d6e980044c2a88f2c14cdc9259e0f0f1b4",
      "parents": [
        "2fca877b68b2b4fc5b94277858a1bedd46017cde",
        "8f3d17fb7bcb7c255197d11469fb5e9695c9d2f4"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Aug 29 19:24:43 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Aug 29 19:24:43 2005 -0400"
      },
      "message": "Merge libata branch \u0027chs-support\u0027 to latest upstream kernel.\n"
    },
    {
      "commit": "70d374ea9907036e15574a5ce89219edd5baee10",
      "tree": "b858bb4a841eb91b1d91b41c33698d05fa7bfb37",
      "parents": [
        "aa7e16d6b88b3b38db0d2ee49ed5e44e7b2045ec",
        "bf4e70e54cf31dcca48d279c7f7e71328eebe749"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Aug 29 15:59:42 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Mon Aug 29 15:59:42 2005 -0400"
      },
      "message": "Merge /spare/repo/linux-2.6/\n"
    },
    {
      "commit": "af36d7f0df56de3e3e4bbfb15d0915097ecb8cab",
      "tree": "cbeb3d387b99fe8b83e0ff8631c422e7a0489645",
      "parents": [
        "0572e3da3ff5c3744b2f606ecf296d5f89a4bbdf"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Aug 28 20:18:39 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Aug 28 20:18:39 2005 -0400"
      },
      "message": "[libata] license change, other bits\n\n- changes license of all code from OSL+GPL to plain ole GPL\n  - except for NVIDIA, who hasn\u0027t yet responded about sata_nv\n  - copyright holders were already contacted privately\n\n- adds info in each driver about where hardware/protocol docs may be\n  obtained\n\n- where I have made major contributions, updated copyright dates\n"
    },
    {
      "commit": "972dcafb6d743a6c7611a2e4681ed814e30d6230",
      "tree": "d294613ec5d9ffc90534e4ebfdb81325649d8167",
      "parents": [
        "4c71812261ce3c48a7c5dd257d96d9fd35d62287"
      ],
      "author": {
        "name": "Douglas Gilbert",
        "email": "dougg@torque.net",
        "time": "Thu Aug 11 03:35:53 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu Aug 11 03:35:53 2005 -0400"
      },
      "message": "[libata scsi] add START STOP UNIT translation\n"
    },
    {
      "commit": "ff40c6d3d1437ecdf295b8e39adcb06c3d6021ef",
      "tree": "3666d029b4bd4df2909dbefd9c7a09e6042b7d32",
      "parents": [
        "8bf62ecee58360749c5f0e68bc97d5e02a6816b1",
        "2a5a68b840cbab31baab2d9b2e1e6de3b289ae1e"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pretzel.yyz.us",
        "time": "Wed Jun 22 13:07:28 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Jun 22 13:07:28 2005 -0400"
      },
      "message": "Merge upstream kernel changes into \u0027C/H/S support\u0027 branch of libata.\n"
    },
    {
      "commit": "8bf62ecee58360749c5f0e68bc97d5e02a6816b1",
      "tree": "a3da6e695fc5a71ac7f3246707380a9ac22f6402",
      "parents": [
        "88d7bd8cb9eb8d64bf7997600b0d64f7834047c5"
      ],
      "author": {
        "name": "Albert Lee",
        "email": "albertcc@tw.ibm.com",
        "time": "Thu May 12 15:29:42 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu May 12 15:29:42 2005 -0400"
      },
      "message": "[libata] C/H/S support, for older devices\n"
    },
    {
      "commit": "6f2f38128170814e151cfedf79532e19cd179567",
      "tree": "6728b987c6d4199c4d03335407f5b55859b34a86",
      "parents": [
        "88d7bd8cb9eb8d64bf7997600b0d64f7834047c5"
      ],
      "author": {
        "name": "Brad Campbell",
        "email": "brad@wasp.net.au",
        "time": "Thu May 12 15:07:47 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Thu May 12 15:07:47 2005 -0400"
      },
      "message": "[PATCH] libata basic detection and errata for PATA-\u003eSATA bridges\n\nThis patch works around an issue with WD drives (and possibly others)\nover SiL PATA-\u003eSATA Bridges on SATA controllers locking up with\ntransfers \u003e 200 sectors.\n\nSigned-off-by: Brad Campbell \u003cbrad@wasp.net.au\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
