)]}'
{
  "log": [
    {
      "commit": "025146e13b63483add912706c101fb0fb6f015cc",
      "tree": "42d2d42e2222f0a2d6373a0ddf0cbf733f75dcba",
      "parents": [
        "ae03bf639a5027d27270123f5f6e3ee6a412781d"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:51 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:55 2009 +0200"
      },
      "message": "block: Move queue limits to an embedded struct\n\nTo accommodate stacking drivers that do not have an associated request\nqueue we\u0027re moving the limits to a separate, embedded structure.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "ae03bf639a5027d27270123f5f6e3ee6a412781d",
      "tree": "d705f41a188ad656b1f47f7952626a9f992e3b8f",
      "parents": [
        "e1defc4ff0cf57aca6c5e3ff99fa503f5943c1f1"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 22 17:17:50 2009 -0400"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 22 23:22:54 2009 +0200"
      },
      "message": "block: Use accessor functions for queue limits\n\nConvert all external users of queue limits to using wrapper functions\ninstead of poking the request queue variables directly.\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": "5ae115af1dd47734b8f5ecc30b34b7b594b87c57",
      "tree": "be3d405c723997255c5333b5b7c64fdf751c55d7",
      "parents": [
        "a15ae93ff7c710191362978453f306943808298d",
        "5993856e53fbc4b4f28e2d481deaebeb715b1267"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 22 08:22:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 22 08:22:39 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:\n  via82cxxx: Add VIA VX855 PCI Device ID\n  ide: report timeouts in ide_busy_sleep()\n  ide: improve failed opcode reporting\n  ide: fix printk() levels in ide_dump_ata[pi]_error()\n  ide: fix OOPS during ide-cd error recovery\n  ide: fix 40-wire cable detection for TSST SH-S202* ATAPI devices (v2)\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": "9fe02c03b4e892acb3c33819ac4385d43b2f0bd7",
      "tree": "c2b7503c9ce846aaeacde76141314e2dbcde927a",
      "parents": [
        "6c2445efb816a34dab7bb7357317e2d656f14cb1",
        "03fbdb15c14e9746c63168e3ff2c64b9c8336d33"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 20 16:30:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 20 16:30:36 2009 -0700"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm: (25 commits)\n  [ARM] 5519/1: amba probe: pass \"struct amba_id *\" instead of void *\n  [ARM] 5517/1: integrator: don\u0027t put clock lookups in __initdata\n  [ARM] 5518/1: versatile: don\u0027t put clock lookups in __initdata\n  [ARM] mach-l7200: fix spelling of SYS_CLOCK_OFF\n  [ARM] Double check memmap is actually valid with a memmap has unexpected holes V2\n  [ARM] realview: fix broadcast tick support\n  [ARM] realview: remove useless smp_cross_call_done()\n  [ARM] smp: fix cpumask usage in ARM SMP code\n  [ARM] 5513/1: Eurotech VIPER SBC: fix compilation error\n  [ARM] 5509/1: ep93xx: clkdev enable UARTS\n  ARM: OMAP2/3: Change omapfb to use clkdev for dispc and rfbi, v2\n  ARM: OMAP3: Fix HW SAVEANDRESTORE shift define\n  ARM: OMAP3: Fix number of GPIO lines for 34xx\n  [ARM] S3C: Do not set clk-\u003eowner field if unset\n  [ARM] S3C2410: mach-bast.c registering i2c data too early\n  [ARM] S3C24XX: Fix unused code warning in arch/arm/plat-s3c24xx/dma.c\n  [ARM] S3C64XX: fix GPIO debug\n  [ARM] S3C64XX: GPIO include cleanup\n  [ARM] nwfpe: fix \u0027floatx80_is_nan\u0027 sparse warning\n  [ARM] nwfpe: Add decleration for ExtendedCPDO\n  ...\n"
    },
    {
      "commit": "03fbdb15c14e9746c63168e3ff2c64b9c8336d33",
      "tree": "819b4986a4f274c3402b74ccf0c7c815647daf3d",
      "parents": [
        "a93ea9b357a4d4fce9a1f65bf9c152fb67c30716"
      ],
      "author": {
        "name": "Alessandro Rubini",
        "email": "rubini@gnudd.com",
        "time": "Wed May 20 22:39:08 2009 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed May 20 23:26:51 2009 +0100"
      },
      "message": "[ARM] 5519/1: amba probe: pass \"struct amba_id *\" instead of void *\n\nThe second argument of the probe method points to the amba_id\nstructure, so it\u0027s better passed with the correct type. None of the\ncurrent in-tree drivers uses the pointer, so they have only been\nchecked for a clean compile.\n\nChange suggested by Russell King.\n\nSigned-off-by: Alessandro Rubini \u003crubini@unipv.it\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "0a7ae2ff0d29bb3b327edff4c8ab67b3834fa811",
      "tree": "88309ac99a39e15b9b23525a00a15b1564957b32",
      "parents": [
        "ac36552a52a6ec8563ac0a109e2a0935673f4abb"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 20 08:54:31 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed May 20 08:54:31 2009 +0200"
      },
      "message": "block: change the tag sync vs async restriction logic\n\nMake them fully share the tag space, but disallow async requests using\nthe last any two slots.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a411f4bbb89f1f08687b344064d6775bce1e4658",
      "tree": "8898f98285e712f8b5bb99db184bc1a21b1a643c",
      "parents": [
        "c29b70f6ee4f2fa3ef07f55bc9082945861e5391"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun May 17 19:00:01 2009 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 19 12:14:56 2009 +0200"
      },
      "message": "block: Un-export blk_rq_append_bio\n\nOSD was the last in-tree user of blk_rq_append_bio(). Now\nthat it is fixed blk_rq_append_bio is un-exported and\nis only used internally by block layer.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "79eb63e9e5875b84341a3a05f8e6ae9cdb4bb6f6",
      "tree": "bdadc2037c1d0f24c6c73b71ae82fdd7b907e610",
      "parents": [
        "bc38bf106c967389a465d926be22c7371abba69d"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun May 17 18:57:15 2009 +0300"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 19 12:14:56 2009 +0200"
      },
      "message": "block: Add blk_make_request(), takes bio, returns a request\n\nNew block API:\ngiven a struct bio allocates a new request. This is the parallel of\ngeneric_make_request for BLOCK_PC commands users.\n\nThe passed bio may be a chained-bio. The bio is bounced if needed\ninside the call to this member.\n\nThis is in the effort of un-exporting blk_rq_append_bio().\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCC: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1cde26f928863d90e9e7c1217880c8450464d305",
      "tree": "e0f6e5157cccc8ab8b87b1192a1da6ddc6113e82",
      "parents": [
        "6c3b46f74587d46e71b8c2b78fdca626a3aca280"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Mon May 18 14:41:30 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 18 14:41:30 2009 +0200"
      },
      "message": "virtio_blk: SG_IO passthru support\n\nAdd support for SG_IO passthru to virtio_blk.  We add the scsi command\nblock after the normal outhdr, and the scsi inhdr with full status\ninformation aswell as the sense buffer before the regular inhdr.\n\n[hch: forward ported, added the VIRTIO_BLK_F_SCSI flags, some comments\n and tested the whole beast]\n[axboe: updated to use -\u003eresid and not dual-path the byte count]\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (+ checkpatch.pl tweak)\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "eb33575cf67d3f35fa2510210ef92631266e2465",
      "tree": "55dd9958dd10758aa5b1ad0186a3356ae620da44",
      "parents": [
        "e1342f1da06d39b3bbd530e9306347c4438bc6e5"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Wed May 13 17:34:48 2009 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Mon May 18 11:22:24 2009 +0100"
      },
      "message": "[ARM] Double check memmap is actually valid with a memmap has unexpected holes V2\n\npfn_valid() is meant to be able to tell if a given PFN has valid memmap\nassociated with it or not. In FLATMEM, it is expected that holes always\nhave valid memmap as long as there is valid PFNs either side of the hole.\nIn SPARSEMEM, it is assumed that a valid section has a memmap for the\nentire section.\n\nHowever, ARM and maybe other embedded architectures in the future free\nmemmap backing holes to save memory on the assumption the memmap is never\nused. The page_zone linkages are then broken even though pfn_valid()\nreturns true. A walker of the full memmap must then do this additional\ncheck to ensure the memmap they are looking at is sane by making sure the\nzone and PFN linkages are still valid. This is expensive, but walkers of\nthe full memmap are extremely rare.\n\nThis was caught before for FLATMEM and hacked around but it hits again for\nSPARSEMEM because the page_zone linkages can look ok where the PFN linkages\nare totally screwed. This looks like a hatchet job but the reality is that\nany clean solution would end up consumning all the memory saved by punching\nthese unexpected holes in the memmap. For example, we tried marking the\nmemmap within the section invalid but the section size exceeds the size of\nthe hole in most cases so pfn_valid() starts returning false where valid\nmemmap exists. Shrinking the size of the section would increase memory\nconsumption offsetting the gains.\n\nThis patch identifies when an architecture is punching unexpected holes\nin the memmap that the memory model cannot automatically detect and sets\nARCH_HAS_HOLES_MEMORYMODEL. At the moment, this is restricted to EP93xx\nwhich is the model sub-architecture this has been reported on but may expand\nlater. When set, walkers of the full memmap must call memmap_valid_within()\nfor each PFN and passing in what it expects the page and zone to be for\nthat PFN. If it finds the linkages to be broken, it assumes the memmap is\ninvalid for that PFN.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "b83674c0da6558e357c6b482ccf299eeea77d8ef",
      "tree": "22f71c1f3f099887b53884a9cabbb6aaeb3bc0a6",
      "parents": [
        "ceb5edc457f07956c82dccfb54ca8ae7e2a399f0"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Sun May 17 01:02:03 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 17 11:45:45 2009 -0700"
      },
      "message": "reiserfs: fixup perms when xattrs are disabled\n\nThis adds CONFIG_REISERFS_FS_XATTR protection from reiserfs_permission.\n\nThis is needed to avoid warnings during file deletions and chowns with\nxattrs disabled.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4bca3286433585b5f1c3e7d8ac37a2f4b3def9ca",
      "tree": "54188630bb30858acf409df5bd07b7f31bf575ec",
      "parents": [
        "61d79a8eb362f826a002d3d14c4f9a070a818542"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Fri May 15 00:40:35 2009 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri May 15 14:14:56 2009 -0400"
      },
      "message": "libata: Media rotation rate and form factor heuristics\n\nThis patch provides new heuristics for parsing both the form factor and\nmedia rotation rate ATA IDENFITY words.\n\nThe reported ATA version must be 7 or greater and the device must return\nvalues defined as valid in the standard.  Only then are the\ncharacteristics reported to SCSI via the VPD B1 page.\n\nThis seems like a reasonable compromise to me considering that we have\nbeen shipping several kernel releases that key off the rotation rate bit\nwithout any version checking whatsoever.  With no complaints so far.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "c6538499814d8112c5d4d08570a7cf0758e5f8f5",
      "tree": "3c3574d8aea838d91372765847577772092f09bc",
      "parents": [
        "662f11cf2aaedd3d5fe6afbec78ba3288fd0c4ca",
        "cd17cbfda004fe5f406c01b318c6378d9895896f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 15 08:05:37 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  Revert \"mm: add /proc controls for pdflush threads\"\n  viocd: needs to depend on BLOCK\n  block: fix the bio_vec array index out-of-bounds test\n"
    },
    {
      "commit": "cd17cbfda004fe5f406c01b318c6378d9895896f",
      "tree": "821e279bc6d9d52bc13fa6c3905ebbd44a2e4860",
      "parents": [
        "05dc7b613481c695bb4fc476c6fbb46364b63f62"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 15 11:32:24 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri May 15 11:32:24 2009 +0200"
      },
      "message": "Revert \"mm: add /proc controls for pdflush threads\"\n\nThis reverts commit fafd688e4c0c34da0f3de909881117d374e4c7af.\n\nWork is progressing to switch away from pdflush as the process backing\nfor flushing out dirty data. So it seems pointless to add more knobs\nto control pdflush threads. The original author of the patch did not\nhave any specific use cases for adding the knobs, so we can easily\nrevert this before 2.6.30 to avoid having to maintain this API\nforever.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "bd99f5e17b317a6d342ffaf500e2a9fd632d2a22",
      "tree": "83dfd8b181b9655b5d41dcce28f1034d42cf1d31",
      "parents": [
        "2ea3f868487dcee0bfd91055f1c42bb172efc507",
        "ad567ffb32f067b30606071eb568cf637fe42185"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 12 17:12:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 12 17:12:36 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:\n  dma: fix ipu_idmac.c to not discard the last queued buffer\n  ioatdma: fix \"ioatdma frees DMA memory with wrong function\"\n  ipu_idmac: Use disable_irq_nosync() from within irq handlers.\n  dmatest: fix max channels handling\n"
    },
    {
      "commit": "4f005dbe5584fe54c9f6d6d4f0acd3fb29be84da",
      "tree": "d9a4add9553af6c50fae59a79e9ab217945a7090",
      "parents": [
        "ca50a51e890b0a62b44b5642c1ba5049909e5a8b"
      ],
      "author": {
        "name": "Maciej Sosnowski",
        "email": "maciej.sosnowski@intel.com",
        "time": "Thu Apr 23 12:31:51 2009 +0200"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 12 14:41:47 2009 -0700"
      },
      "message": "ioatdma: fix \"ioatdma frees DMA memory with wrong function\"\n\nas reported by Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\n\nioatdma 0000:00:08.0: DMA-API: device driver frees DMA memory with\nwrong function [device address\u003d0x000000007f76f800] [size\u003d2000 bytes]\n[map\nped as single] [unmapped as page]\n\nThe ioatdma driver was unmapping all regions\n(either allocated as page or single) using unmap_page.\nThis patch lets dma driver recognize if unmap_single or unmap_page should be used.\nIt introduces two new dma control flags:\nDMA_COMPL_SRC_UNMAP_SINGLE and DMA_COMPL_DEST_UNMAP_SINGLE.\nThey should be set to indicate dma driver to do dma-unmapping as single\n(first one for the source, tha latter for the destination).\nIf respective flag is not set, the driver assumes dma-unmapping as page.\n\nSigned-off-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nReported-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nTested-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ecf4667d30dd63fa130e22f8f2da3e6ce003358b",
      "tree": "1ad1603bd191bf1c128f650c2e2be6555fa4feac",
      "parents": [
        "7348d82a67b3fe0363e7f0679b50ecbdc65116c7"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue May 12 13:19:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 12 14:11:35 2009 -0700"
      },
      "message": "syscalls.h add the missing sys_pipe2 declaration\n\nIn order to build the generic syscall table, we need a declaration for\nevery system call.  sys_pipe2 was added without a proper declaration, so\nadd this to syscalls.h now.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2b1ccc0ee918a653d0483fdad9dd6112ce8e9043",
      "tree": "b640b08b9852955f3399307cbe7d733118c5eca0",
      "parents": [
        "e458824f9d32e9bf7700d1eb0d201749af48eee0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 12 11:11:48 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue May 12 11:11:48 2009 +0200"
      },
      "message": "splice: fix misleading comment\n\nSplice is tied to pipes by design, it\u0027ll not change. And now that\nthe splice stuff is in splice.h (and note pipe.h), the rest of the comment\nis out-of-date as well.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6818173bd658439b83896a2a7586f64ab51bf29c",
      "tree": "17d25ee77485af18da1a80cb7f1d8ec581c6abfc",
      "parents": [
        "7c77f0b3f9208c339a4b40737bb2cb0f0319bb8d"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Thu May 07 15:37:36 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 14:13:10 2009 +0200"
      },
      "message": "splice: implement default splice_read method\n\nIf f_op-\u003esplice_read() is not implemented, fall back to a plain read.\nUse vfs_readv() to read into previously allocated pages.\n\nThis will allow splice and functions using splice, such as the loop\ndevice, to work on all filesystems.  This includes \"direct_io\" files\nin fuse which bypass the page cache.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b1f744937f1be3e6d3009382a755679133cf782d",
      "tree": "0e90e43589ecfe28199030e8e396c0193199da7e",
      "parents": [
        "e6bb7a96c2c36f20c05ef648f15bd3c2b1834c78"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon May 11 17:56:09 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 11:06:48 2009 +0200"
      },
      "message": "block: move completion related functions back to blk-core.c\n\nLet\u0027s put the completion related functions back to block/blk-core.c\nwhere they have lived. We can also unexport blk_end_bidi_request() and\n__blk_end_bidi_request(), which nobody uses.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "1822952ba2b9f22f79019d07ebbeca31dc14b718",
      "tree": "de3a727e811f33bc908cd6c4d2f0cf5a1693dab3",
      "parents": [
        "9934c8c04561413609d2bc38c6b9f268cba774a4"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Mon May 11 17:56:07 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 11:06:47 2009 +0200"
      },
      "message": "block: let blk_end_request_all handle bidi requests\n\nblk_end_request_all() and __blk_end_request_all() should finish all\nbytes including bidi, by definition. That\u0027s what all bidi users need ,\nbidi requests must be complete as a whole (partial completion is\nimpossible).\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9934c8c04561413609d2bc38c6b9f268cba774a4",
      "tree": "30dd8f7be54f9b2e03094de9cd03b6a9ee2909cd",
      "parents": [
        "2343046826a8ca426b07601d9593ee046c298b68"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri May 08 11:54:16 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:52:18 2009 +0200"
      },
      "message": "block: implement and enforce request peek/start/fetch\n\nTill now block layer allowed two separate modes of request execution.\nA request is always acquired from the request queue via\nelv_next_request().  After that, drivers are free to either dequeue it\nor process it without dequeueing.  Dequeue allows elv_next_request()\nto return the next request so that multiple requests can be in flight.\n\nExecuting requests without dequeueing has its merits mostly in\nallowing drivers for simpler devices which can\u0027t do sg to deal with\nsegments only without considering request boundary.  However, the\nbenefit this brings is dubious and declining while the cost of the API\nambiguity is increasing.  Segment based drivers are usually for very\nold or limited devices and as converting to dequeueing model isn\u0027t\ndifficult, it doesn\u0027t justify the API overhead it puts on block layer\nand its more modern users.\n\nPrevious patches converted all block low level drivers to dequeueing\nmodel.  This patch completes the API transition by...\n\n* renaming elv_next_request() to blk_peek_request()\n\n* renaming blkdev_dequeue_request() to blk_start_request()\n\n* adding blk_fetch_request() which is combination of peek and start\n\n* disallowing completion of queued (not started) requests\n\n* applying new API to all LLDs\n\nRenamings are for consistency and to break out of tree code so that\nit\u0027s apparent that out of tree drivers need updating.\n\n[ Impact: block request issue API cleanup, no functional change ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Borislav Petkov \u003cpetkovbb@googlemail.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a2dec7b36364a5cc564c4d76cf16d2e7d33f5c05",
      "tree": "76dfb84ba5fa097a929ab81cf5718c6fcbc9d720",
      "parents": [
        "34b7d2c957199834c474c9d46739265643f4d9c7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:44 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:55 2009 +0200"
      },
      "message": "block: hide request sector and data_len\n\nBlock low level drivers for some reason have been pretty good at\nabusing block layer API.  Especially struct request\u0027s fields tend to\nget violated in all possible ways.  Make it clear that low level\ndrivers MUST NOT access or manipulate rq-\u003esector and rq-\u003edata_len\ndirectly by prefixing them with double underscores.\n\nThis change is also necessary to break build of out-of-tree codes\nwhich assume the previous block API where internal fields can be\nmanipulated and rq-\u003edata_len carries residual count on completion.\n\n[ Impact: hide internal fields, block API change ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "2e46e8b27aa57c6bd34b3102b40ee4d0144b4fab",
      "tree": "134f560f66c2af277f0f25e5b85f6c1acaddfc06",
      "parents": [
        "9780e2dd8254351f6cbe11304849126b51dbd561"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu May 07 22:24:41 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon May 11 09:50:54 2009 +0200"
      },
      "message": "block: drop request-\u003ehard_* and *nr_sectors\n\nstruct request has had a few different ways to represent some\nproperties of a request.  -\u003ehard_* represent block layer\u0027s view of the\nrequest progress (completion cursor) and the ones without the prefix\nare supposed to represent the issue cursor and allowed to be updated\nas necessary by the low level drivers.  The thing is that as block\nlayer supports partial completion, the two cursors really aren\u0027t\nnecessary and only cause confusion.  In addition, manual management of\nrequest detail from low level drivers is cumbersome and error-prone at\nthe very least.\n\nAnother interesting duplicate fields are rq-\u003e[hard_]nr_sectors and\nrq-\u003e{hard_cur|current}_nr_sectors against rq-\u003edata_len and\nrq-\u003ebio-\u003ebi_size.  This is more convoluted than the hard_ case.\n\nrq-\u003e[hard_]nr_sectors are initialized for requests with bio but\nblk_rq_bytes() uses it only for !pc requests.  rq-\u003edata_len is\ninitialized for all request but blk_rq_bytes() uses it only for pc\nrequests.  This causes good amount of confusion throughout block layer\nand its drivers and determining the request length has been a bit of\nblack magic which may or may not work depending on circumstances and\nwhat the specific LLD is actually doing.\n\nrq-\u003e{hard_cur|current}_nr_sectors represent the number of sectors in\nthe contiguous data area at the front.  This is mainly used by drivers\nwhich transfers data by walking request segment-by-segment.  This\nvalue always equals rq-\u003ebio-\u003ebi_size \u003e\u003e 9.  However, data length for\npc requests may not be multiple of 512 bytes and using this field\nbecomes a bit confusing.\n\nIn general, having multiple fields to represent the same property\nleads only to confusion and subtle bugs.  With recent block low level\ndriver cleanups, no driver is accessing or manipulating these\nduplicate fields directly.  Drop all the duplicates.  Now rq-\u003esector\nmeans the current sector, rq-\u003edata_len the current total length and\nrq-\u003ebio-\u003ebi_size the current segment length.  Everything else is\ndefined in terms of these three and available only through accessors.\n\n* blk_recalc_rq_sectors() is collapsed into blk_update_request() and\n  now handles pc and fs requests equally other than rq-\u003esector update.\n  This means that now pc requests can use partial completion too (no\n  in-kernel user yet tho).\n\n* bio_cur_sectors() is replaced with bio_cur_bytes() as block layer\n  now uses byte count as the primary data length.\n\n* blk_rq_pos() is now guranteed to be always correct.  In-block users\n  converted.\n\n* blk_rq_bytes() is now guaranteed to be always valid as is\n  blk_rq_sectors().  In-block users converted.\n\n* blk_rq_sectors() is now guaranteed to equal blk_rq_bytes() \u003e\u003e 9.\n  More convenient one is used.\n\n* blk_rq_bytes() and blk_rq_cur_bytes() are now inlined and take const\n  pointer to request.\n\n[ Impact: API cleanup, single way to represent one property of a request ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Boaz Harrosh \u003cbharrosh@panasas.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": "0016effb90589a87290a2ee721e34dc37e87b67c",
      "tree": "6e52adab5fd775a62edfad7f373916b8d1b31ba6",
      "parents": [
        "93b49d45eb97574057ee03dfdd590c209f5132f8",
        "e67c85626cd02e306da1b4195bfaf68d61050796"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 10 10:49:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 10 10:49:31 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:\n  Revert driver core: move platform_data into platform_device\n  Revert driver core: fix passing platform_data\n  Remove old PRINTK_DEBUG config item\n  Doc/sysfs-rules: Swap the order of the words so the sentence makes more sense\n  Driver core: platform: fix kernel-doc warnings\n"
    },
    {
      "commit": "93b49d45eb97574057ee03dfdd590c209f5132f8",
      "tree": "d01e5af58331ab6a8c758e445aeb943cf803dfa9",
      "parents": [
        "f9f51cc0ce544224a8332a4c1733624fcbc70a32",
        "b0c4f3222c7406f0aee9d52b7d604a1d36108463"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 10 10:49:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 10 10:49:08 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (22 commits)\n  Fix the race between capifs remount and node creation\n  Fix races around the access to -\u003es_options\n  switch ufs directories to ufs_sync_file()\n  Switch open_exec() and sys_uselib() to do_open_filp()\n  Make open_exec() and sys_uselib() use may_open(), instead of duplicating its parts\n  Reduce path_lookup() abuses\n  Make checkpatch.pl shut up on fs/inode.c\n  NULL noise in fs/super.c:kill_bdev_super()\n  romfs: cleanup romfs_fs.h\n  ROMFS: romfs_dev_read() error ignored\n  fs: dcache fix LRU ordering\n  ocfs2: Use nd_set_link().\n  Fix deadlock in ipathfs -\u003eget_sb()\n  Fix a leak in failure exit in 9p -\u003eget_sb()\n  Convert obvious places to deactivate_locked_super()\n  New helper: deactivate_locked_super()\n  reiserfs: remove privroot hiding in lookup\n  reiserfs: dont associate security.* with xattr files\n  reiserfs: fixup xattr_root caching\n  Always lookup priv_root on reiserfs mount and keep it\n  ...\n"
    },
    {
      "commit": "2ad20802b759cc2d16dc9470fa15874610d21714",
      "tree": "f9a0d657a3162bb87ff31d0c580b7910938fd9d1",
      "parents": [
        "091bf7624d1c90cec9e578a18529f615213ff847",
        "e1cc1c578055d20d36e084e324001fb5e0355a71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 10 10:46:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 10 10:46:45 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (26 commits)\n  bonding: fix panic if initialization fails\n  IXP4xx: complete Ethernet netdev setup before calling register_netdev().\n  IXP4xx: use \"ENODEV\" instead of \"ENOSYS\" in module initialization.\n  ipvs: Fix IPv4 FWMARK virtual services\n  ipv4: Make INET_LRO a bool instead of tristate.\n  net: remove stale reference to fastroute from Kconfig help text\n  net: update skb_recycle_check() for hardware timestamping changes\n  bnx2: Fix panic in bnx2_poll_work().\n  net-sched: fix bfifo default limit\n  igb: resolve panic on shutdown when SR-IOV is enabled\n  wimax: oops: wimax_dev_add() is the only one that can initialize the state\n  wimax: fix oops if netlink fails to add attribute\n  Bluetooth: Move dev_set_name() to a context that can sleep\n  netfilter: ctnetlink: fix wrong message type in user updates\n  netfilter: xt_cluster: fix use of cluster match with 32 nodes\n  netfilter: ip6t_ipv6header: fix match on packets ending with NEXTHDR_NONE\n  netfilter: add missing linux/types.h include to xt_LED.h\n  mac80211: pid, fix memory corruption\n  mac80211: minstrel, fix memory corruption\n  cfg80211: fix comment on regulatory hint processing\n  ...\n"
    },
    {
      "commit": "2a32cebd6cbcc43996c3e2d114fa32ba1e71192a",
      "tree": "0ad94849a7bc3e97cd19978005d1898c8bb44b36",
      "parents": [
        "f9dbd05bc97d1d4f17c2057612f6a8e4dbd039e0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri May 08 16:05:57 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:51:34 2009 -0400"
      },
      "message": "Fix races around the access to -\u003es_options\n\nPut generic_show_options read access to s_options under rcu_read_lock,\nsplit save_mount_options() into \"we are setting it the first time\"\n(uses in foo_fill_super()) and \"we are relacing and freeing the old one\",\nsynchronize_rcu() before kfree() in the latter.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6e8341a11eb21826b7192d0bb88cb5b44900a9af",
      "tree": "f9e03050f0834c2c4a21f1e6a255b6b0d1262b25",
      "parents": [
        "a44ddbb6d8a8ffe4e34e417048dfdd8f3dd1de4f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Apr 06 11:16:22 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:42 2009 -0400"
      },
      "message": "Switch open_exec() and sys_uselib() to do_open_filp()\n\n... and make path_lookup_open() static\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "db6c1fbb92eeb4cb52c6133e0c533602f49fc4bd",
      "tree": "c38d6f47eb6cfca748b0023d9c62256ec05ac5fb",
      "parents": [
        "774e33e70b2bffa8c602d22a5d27c0061a0039cc"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Apr 07 18:07:08 2009 +0200"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:41 2009 -0400"
      },
      "message": "romfs: cleanup romfs_fs.h\n\nThere\u0027s no kernel-only content in it anymore, so move it to header-y\nand remove the superflous #ifdef __KERNEL__.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "74dbbdd7fdc11763f4698d2f3e684cf4446951e6",
      "tree": "f31d70174915b0d209fafeec35e996e8ed7e269d",
      "parents": [
        "677c9b2e393a0cd203bd54e9c18b012b2c73305a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 06 01:07:50 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:39 2009 -0400"
      },
      "message": "New helper: deactivate_locked_super()\n\nDoes equivalent of up_write(\u0026s-\u003es_umount); deactivate_super(s);\nHowever, it does not does not unlock it until it\u0027s all over.\nAs the result, it\u0027s safe to use to dispose of new superblock on -\u003eget_sb()\nfailure exits - nobody will see the sucker until it\u0027s all over.\nEquivalent using up_write/deactivate_super is safe for that purpose\nif superblock is either\tsafe to use or has NULL -\u003es_root when we unlock.\nNormally filesystems take the required precautions, but\n\ta) we do have bugs in that area in some of them.\n\tb) up_write/deactivate_super sequence is extremely common,\nso the helper makes sense anyway.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "677c9b2e393a0cd203bd54e9c18b012b2c73305a",
      "tree": "575d3f70bb9fbf12171ff526909b68377bede67b",
      "parents": [
        "b82bb72ba7df473461c5e2368a4e7497c8ce76e9"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Tue May 05 15:30:17 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:39 2009 -0400"
      },
      "message": "reiserfs: remove privroot hiding in lookup\n\n With Al Viro\u0027s patch to move privroot lookup to fs mount, there\u0027s no need\n to have special code to hide the privroot in reiserfs_lookup.\n\n I\u0027ve also cleaned up the privroot hiding in reiserfs_readdir_dentry and\n removed the last user of reiserfs_xattrs().\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ab17c4f02156c4f75d7fa43a5aa2a7f942d47201",
      "tree": "20ff8ec91144d20966ac70adb24bd3372e3508c4",
      "parents": [
        "edcc37a0478836b4a51eafb1bcec6a52708f681d"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Tue May 05 15:30:15 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:39 2009 -0400"
      },
      "message": "reiserfs: fixup xattr_root caching\n\n The xattr_root caching was broken from my previous patch set. It wouldn\u0027t\n cause corruption, but could cause decreased performance due to allocating\n a larger chunk of the journal (~ 27 blocks) than it would actually use.\n\n This patch loads the xattr root dentry at xattr initialization and creates\n it on-demand. Since we\u0027re using the cached dentry, there\u0027s no point\n in keeping lookup_or_create_dir around, so that\u0027s removed.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "edcc37a0478836b4a51eafb1bcec6a52708f681d",
      "tree": "95294fa607420d760823401a6c6e7d9deb698bb1",
      "parents": [
        "5a6059c358d3b3004cb6b8562e3b049b1f8564f9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun May 03 06:00:05 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 09 10:49:38 2009 -0400"
      },
      "message": "Always lookup priv_root on reiserfs mount and keep it\n\n... even if it\u0027s a negative dentry.  That way we can set -\u003ed_op on\nroot before anyone could race with us.  Simplify d_compare(), while\nwe are at it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e67c85626cd02e306da1b4195bfaf68d61050796",
      "tree": "c7cccc5780599f668a36f18caa622b1c7469a08a",
      "parents": [
        "bee86321b7b2312fbb62f4cb903eba1cca45e8ad"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 08 23:13:32 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri May 08 19:22:21 2009 -0700"
      },
      "message": "Revert driver core: move platform_data into platform_device\n\nThis reverts commit 006f4571a15fae3a0575f2a0f9e9b63b3d1012f8:\n\n\tThis patch moves platform_data from struct device into\n\tstruct platform_device, based on the two ideas:\n\n\t1. Now all platform_driver is registered by platform_driver_register,\n\t   which makes probe()/release()/... of platform_driver passed parameter\n\t   of platform_device *, so platform driver can get platform_data from\n\t   platform_device;\n\n\t2. Other kind of devices do not need to use platform_data, we can\n\t   decrease size of device if moving it to platform_device.\n\n\tTaking into consideration of thousands of files to be fixed and they\n\tcan\u0027t be finished in one night(maybe it will take a long time), so we\n\tkeep platform_data in device to allow two kind of cases coexist until\n\tall platform devices pass its platfrom data from\n\tplatform_device-\u003eplatform_data.\n\n\tAll patches to do this kind of conversion are welcome.\n\nAs we don\u0027t really want to do it, it was a bad idea.\n\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "d7a5926978cb109b2db5985c65086483caf9e226",
      "tree": "0431ca74aec312ed69dea21a7039b4c734307723",
      "parents": [
        "8c9ed899b44c19e81859fbb0e9d659fe2f8630fc",
        "90e4ee5d311d4e0729daa676b1d7f754265b5874"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 07 21:13:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 07 21:13:24 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: (32 commits)\n  [CIFS] Fix double list addition in cifs posix open code\n  [CIFS] Allow raw ntlmssp code to be enabled with sec\u003dntlmssp\n  [CIFS] Fix SMB uid in NTLMSSP authenticate request\n  [CIFS] NTLMSSP reenabled after move from connect.c to sess.c\n  [CIFS] Remove sparse warning\n  [CIFS] remove checkpatch warning\n  [CIFS] Fix final user of old string conversion code\n  [CIFS] remove cifs_strfromUCS_le\n  [CIFS] NTLMSSP support moving into new file, old dead code removed\n  [CIFS] Fix endian conversion of vcnum field\n  [CIFS] Remove trailing whitespace\n  [CIFS] Remove sparse endian warnings\n  [CIFS] Add remaining ntlmssp flags and standardize field names\n  [CIFS] Fix build warning\n  cifs: fix length handling in cifs_get_name_from_search_buf\n  [CIFS] Remove unneeded QuerySymlink call and fix mapping for unmapped status\n  [CIFS] rename cifs_strndup to cifs_strndup_from_ucs\n  Added loop check when mounting DFS tree.\n  Enable dfs submounts to handle remote referrals.\n  [CIFS] Remove older session setup implementation\n  ...\n"
    },
    {
      "commit": "356d6c2d55b71303a17910ea2cce3eba8e44bd29",
      "tree": "1a55442d61782eabab5682f9a10b4d8694ae650e",
      "parents": [
        "86b698b8cba723fc7e7db50f664ccf0d7da57ee1",
        "fecc1133b66af6e0cd49115a248f34bbb01f180a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 05 12:00:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 05 12:00:53 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "280f37afa2c270ff029cb420b34396aa002909c3",
      "tree": "6d90560f2210c7ddb4da5640a2d190357c4f41b4",
      "parents": [
        "b98b4947cb79d670fceca0e951c092eea93e9baa"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 05 17:46:07 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 05 17:46:07 2009 +0200"
      },
      "message": "netfilter: xt_cluster: fix use of cluster match with 32 nodes\n\nThis patch fixes a problem when you use 32 nodes in the cluster\nmatch:\n\n% iptables -I PREROUTING -t mangle -i eth0 -m cluster \\\n  --cluster-total-nodes  32  --cluster-local-node  32 \\\n  --cluster-hash-seed 0xdeadbeef -j MARK --set-mark 0xffff\niptables: Invalid argument. Run `dmesg\u0027 for more information.\n% dmesg | tail -1\nxt_cluster: this node mask cannot be higher than the total number of nodes\n\nThe problem is related to this checking:\n\nif (info-\u003enode_mask \u003e\u003d (1 \u003c\u003c info-\u003etotal_nodes)) {\n\tprintk(KERN_ERR \"xt_cluster: this node mask cannot be \"\n\t\t\t\"higher than the total number of nodes\\n\");\n\treturn false;\n}\n\n(1 \u003c\u003c 32) is 1. Thus, the checking fails.\n\nBTW, I said this before but I insist: I have only tested the cluster\nmatch with 2 nodes getting ~45% extra performance in an active-active setup.\nThe maximum limit of 32 nodes is still completely arbitrary. I\u0027d really\nappreciate if people that have more nodes in their setups let me know.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "80445de57764b45fc26315c19fe7dc9fc57c2c65",
      "tree": "dc288dd1fbf94dae32e08ac9549ed814c2463f99",
      "parents": [
        "32bc66d8d0edc9b04dea9ebac299bdb7ad781d6b",
        "bc83871e8325bb17da2930a76c2a3806377a76c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 05 08:26:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 05 08:26:10 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (30 commits)\n  e1000: fix virtualization bug\n  bonding: fix alb mode locking regression\n  Bluetooth: Fix issue with sysfs handling for connections\n  usbnet: CDC EEM support (v5)\n  tcp: Fix tcp_prequeue() to get correct rto_min value\n  ehea: fix invalid pointer access\n  ne2k-pci: Do not register device until initialized.\n  Subject: [PATCH] br2684: restore net_dev initialization\n  net: Only store high 16 bits of kernel generated filter priorities\n  virtio_net: Fix function name typo\n  virtio_net: Cleanup command queue scatterlist usage\n  bonding: correct the cleanup in bond_create()\n  virtio: add missing include to virtio_net.h\n  smsc95xx: add support for LAN9512 and LAN9514\n  smsc95xx: configure LED outputs\n  netconsole: take care of NETDEV_UNREGISTER event\n  xt_socket: checks for the state of nf_conntrack\n  bonding: bond_slave_info_query() fix\n  cxgb3: fixing gcc 4.4 compiler warning: suggest parentheses around operand of ‘!’\n  netfilter: use likely() in xt_info_rdlock_bh()\n  ...\n"
    },
    {
      "commit": "a7ca7fccacc029958fd09985e7f3529b90ec791d",
      "tree": "40158ef0b9b4fa26a9cf31888ecd0f071c7f8aeb",
      "parents": [
        "37e55cf0ceb8803256bf69a3e45bd668bf90b76f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 05 14:31:12 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue May 05 14:31:12 2009 +0200"
      },
      "message": "netfilter: add missing linux/types.h include to xt_LED.h\n\nPointed out by Dave Miller:\n\n  CHECK   include/linux/netfilter (57 files)\n/home/davem/src/GIT/net-2.6/usr/include/linux/netfilter/xt_LED.h:6: found __[us]{8,16,32,64} type without #include \u003clinux/types.h\u003e\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "9f722c0978b04acba209f8ca1896ad05814bc3a3",
      "tree": "9c596d23beda50080a21a5ed90be3e9f4a6a5d1e",
      "parents": [
        "0c266898b42fe4e4e2f9edfc9d3474c10f93aa6a"
      ],
      "author": {
        "name": "Omar Laazimani",
        "email": "omar.oberthur@gmail.com",
        "time": "Mon May 04 12:01:43 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 04 12:01:43 2009 -0700"
      },
      "message": "usbnet: CDC EEM support (v5)\n\nThis introduces a CDC Ethernet Emulation Model (EEM) host side\ndriver to support USB EEM devices.\n\nEEM is different from the Ethernet Control Model (ECM) currently\nsupported by the \"CDC Ethernet\" driver.  One key difference is\nthat it doesn\u0027t require of USB interface alternate settings to\nmanage interface state; some maldesigned hardware can\u0027t handle\nthat part of USB.  It also avoids a separate USB interface for\ncontrol and status updates.\n\n[ dbrownell@users.sourceforge.net: fix skb leaks, add rx packet\nchecks, improve fault handling, EEM conformance updates, cleanup ]\n\nSigned-off-by: Omar Laazimani \u003comar.oberthur@gmail.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b39da786a63e82d9d440075eae9018b79154d2a",
      "tree": "e0c415aa911136293d50e0116bafdc5128bd4080",
      "parents": [
        "2142babac999a5ba169348892a8e3ac222bec7a4",
        "96c16743973e8c1a7b9c655d10b7973408d6d1dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 16:48:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 16:48:32 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:\n  ide-cd: fix REQ_QUIET tests in cdrom_decode_status\n\nFix up trivial conflicts in include/linux/blkdev.h\n"
    },
    {
      "commit": "8c0c3f7ff0daa119f0bb109148f6f0e39573b429",
      "tree": "d3baacfe2e2b194584866d711ea4078d629b6561",
      "parents": [
        "f75e6745aa3084124ae1434fd7629853bdaf6798",
        "eacaad01b4e67336b5b3f4db6dc15ef92c64b47d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 16:35:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 16:35:45 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: document the multi-touch (MT) protocol\n  Input: add detailed multi-touch finger data report protocol\n  Input: allow certain EV_ABS events to bypass all filtering\n  Input: bcm5974 - add documentation for the driver\n  Input: bcm5974 - augment debug information\n  Input: bcm5974 - Add support for the Macbook 5 (Unibody)\n  Input: bcm5974 - add quad-finger tapping\n  Input: bcm5974 - prepare for a new trackpad header type\n  Input: appletouch - fix DMA to/from stack buffer\n  Input: wacom - fix TabletPC touch bug\n  Input: lifebook - add DMI entry for Fujitsu B-2130\n  Input: ALPS - add signature for Toshiba Satellite Pro M10\n  Input: elantech - make sure touchpad is really in absolute mode\n  Input: elantech - provide a workaround for jumpy cursor on firmware 2.34\n  Input: ucb1400 - use disable_irq_nosync() in irq handler\n  Input: tsc2007 - use disable_irq_nosync() in irq handler\n  Input: sa1111ps2 - use disable_irq_nosync() in irq handlers\n  Input: omap-keypad - use disable_irq_nosync() in irq handler\n"
    },
    {
      "commit": "f75e6745aa3084124ae1434fd7629853bdaf6798",
      "tree": "bfd605c079e8a1dd6ad008acc6031441c220c845",
      "parents": [
        "414772fa496273d1a93cefa6dab790f5fdf9de82"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Apr 21 17:18:20 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 16:35:08 2009 -0700"
      },
      "message": "SUNRPC: Fix the problem of EADDRNOTAVAIL syslog floods on reconnect\n\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d13034\n\nIf the port gets into a TIME_WAIT state, then we cannot reconnect without\nbinding to a new port.\n\nTested-by: Petr Vandrovec \u003cpetr@vandrovec.name\u003e\nTested-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00a62ce91e554198ef28234c91c36f850f5a3bc9",
      "tree": "367ef134219deef91903c3fa0eb108c13658f2c7",
      "parents": [
        "0763ed2355198cdef2f6a2098e9d52eb1fe4365d"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu Apr 30 15:08:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:10 2009 -0700"
      },
      "message": "mm: fix Committed_AS underflow on large NR_CPUS environment\n\nThe Committed_AS field can underflow in certain situations:\n\n\u003e         # while true; do cat /proc/meminfo  | grep _AS; sleep 1; done | uniq -c\n\u003e               1 Committed_AS: 18446744073709323392 kB\n\u003e              11 Committed_AS: 18446744073709455488 kB\n\u003e               6 Committed_AS:    35136 kB\n\u003e               5 Committed_AS: 18446744073709454400 kB\n\u003e               7 Committed_AS:    35904 kB\n\u003e               3 Committed_AS: 18446744073709453248 kB\n\u003e               2 Committed_AS:    34752 kB\n\u003e               9 Committed_AS: 18446744073709453248 kB\n\u003e               8 Committed_AS:    34752 kB\n\u003e               3 Committed_AS: 18446744073709320960 kB\n\u003e               7 Committed_AS: 18446744073709454080 kB\n\u003e               3 Committed_AS: 18446744073709320960 kB\n\u003e               5 Committed_AS: 18446744073709454080 kB\n\u003e               6 Committed_AS: 18446744073709320960 kB\n\nBecause NR_CPUS can be greater than 1000 and meminfo_proc_show() does\nnot check for underflow.\n\nBut NR_CPUS proportional isn\u0027t good calculation.  In general,\npossibility of lock contention is proportional to the number of online\ncpus, not theorical maximum cpus (NR_CPUS).\n\nThe current kernel has generic percpu-counter stuff.  using it is right\nway.  it makes code simplify and percpu_counter_read_positive() don\u0027t\nmake underflow issue.\n\nReported-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Eric B Munson \u003cebmunson@us.ibm.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[All kernel versions]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0763ed2355198cdef2f6a2098e9d52eb1fe4365d",
      "tree": "44ca8fdbfa940425a11adfa0fd6ac739a3350792",
      "parents": [
        "74641f584da8eccf30becfbb5507ab457187db22"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Apr 30 15:08:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:10 2009 -0700"
      },
      "message": "of: make of_(un)register_platform_driver common code\n\nSome drivers using of_register_platform_driver() wrapper break on sparc\nbecause the wrapper isn\u0027t in the header file.  This patch moves it from\nMicroblaze and PowerPC implementations and makes it common code.\n\nFixes this sparc64 allmodconfig build error (at least):\n\ndrivers/leds/leds-gpio.c: In function `gpio_led_init\u0027:\ndrivers/leds/leds-gpio.c:295: error: implicit declaration of function `of_register_platform_driver\u0027\ndrivers/leds/leds-gpio.c: In function `gpio_led_exit\u0027:\ndrivers/leds/leds-gpio.c:311: error: implicit declaration of function `of_unregister_platform_driver\u0027\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74641f584da8eccf30becfbb5507ab457187db22",
      "tree": "da212b7ae1b5a2a50a4314b3a75df5763623295e",
      "parents": [
        "77b4cf5cb0c9d6010a18030a0e0a8d2aaf6b43ec"
      ],
      "author": {
        "name": "Ivan Kokshaysky",
        "email": "ink@jurassic.park.msu.ru",
        "time": "Thu Apr 30 15:08:49 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:10 2009 -0700"
      },
      "message": "alpha: binfmt_aout fix\n\nThis fixes the problem introduced by commit 3bfacef412 (get rid of\nspecial-casing the /sbin/loader on alpha): osf/1 ecoff binary segfaults\nwhen binfmt_aout built as module.  That happens because aout binary\nhandler gets on the top of the binfmt list due to late registration, and\nkernel attempts to execute the binary without preparatory work that must\nbe done by binfmt_loader.\n\nFixed by changing the registration order of the default binfmt handlers\nusing list_add_tail() and introducing insert_binfmt() function which\nplaces new handler on the top of the binfmt list.  This might be generally\nuseful for installing arch-specific frontends for default handlers or just\nfor overriding them.\n\nSigned-off-by: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Richard Henderson \u003crth@twiddle.net\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae3abae64f177586be55b04a7fb7047a34b21a3e",
      "tree": "05ba2ef8dca958cc4a02ac08e5aae03b8bc82a81",
      "parents": [
        "0816178638c15ce5472d39d771a96860dff4141a"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Apr 30 15:08:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 02 15:36:09 2009 -0700"
      },
      "message": "memcg: fix mem_cgroup_shrink_usage()\n\nCurrent mem_cgroup_shrink_usage() has two problems.\n\n1. It doesn\u0027t call mem_cgroup_out_of_memory and doesn\u0027t update\n   last_oom_jiffies, so pagefault_out_of_memory invokes global OOM.\n\n2. Considering hierarchy, shrinking has to be done from the\n   mem_over_limit, not from the memcg which the page would be charged to.\n\nmem_cgroup_try_charge_swapin() does all of these things properly, so we\nuse it and call cancel_charge_swapin when it succeeded.\n\nThe name of \"shrink_usage\" is not appropriate for this behavior, so we\nchange it too.\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.cn\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: YAMAMOTO Takashi \u003cyamamoto@valinux.co.jp\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c047fcd245975f40312ed57bf43e7d4abd188e6b",
      "tree": "efb6e7c36c6769a504b182cde1e333f18336d3d5",
      "parents": [
        "726474b8cd0f0f49c570b1dbbab44be898797550"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Fri May 01 15:34:02 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 01 15:34:02 2009 -0700"
      },
      "message": "virtio: add missing include to virtio_net.h\n\nvirtio_net.h uses the macro ETH_ALEN which is defined in linux/if_ether.h.\nDiscovered when hacking on virtio-over-pci patches.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f3d042ed2f934f149ccb78300454beaf0c1134b",
      "tree": "e8bf6955d133bf528ba8bbec0231a116755aace5",
      "parents": [
        "ec581f6a42bbbea5271c66da9769a41b46c74e10"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri May 01 09:10:46 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 01 09:10:46 2009 -0700"
      },
      "message": "netfilter: use likely() in xt_info_rdlock_bh()\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\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": "912bc6ae3de99c7bada4577d4341ace4ee59b5be",
      "tree": "28fd1a4bb9e4b05aa833285b46df169f12c0e24d",
      "parents": [
        "d37dc42ab6f040b8f0f2962ab219c5b2accf748d",
        "091438dd5668396328a3419abcbc6591159eb8d1"
      ],
      "author": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Apr 30 15:36:52 2009 +0000"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Apr 30 15:36:52 2009 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of /pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "d37dc42ab6f040b8f0f2962ab219c5b2accf748d",
      "tree": "5030ecff53843afe1f362cdca3d0794cda17fac1",
      "parents": [
        "cbb7fe129bb2b836083ebcc256c43faff4b48cc2"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Thu Apr 30 06:45:08 2009 -0400"
      },
      "committer": {
        "name": "Steve French",
        "email": "sfrench@us.ibm.com",
        "time": "Thu Apr 30 15:32:11 2009 +0000"
      },
      "message": "nls: add a nls_nullsize inline\n\nIt\u0027s possible for character sets to require a multi-byte null\nstring terminator. Add a helper function that determines the size\nof the null terminator at runtime.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Suresh Jayaraman \u003csjayaraman@suse.de\u003e\nSigned-off-by: Steve French \u003csfrench@us.ibm.com\u003e\n"
    },
    {
      "commit": "3dacbdad2401c06b97d8d754974233a70c165536",
      "tree": "dc33467f26190572eabf49f7dcac3cd8aa50a101",
      "parents": [
        "56a50adda49b2020156616c4eb15353e0f9ad7de",
        "ac7c992cac0c8f276aa8e4a8273204a6db707bb3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 29 07:55:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 29 07:55:45 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (24 commits)\n  e100: do not go D3 in shutdown unless system is powering off\n  netfilter: revised locking for x_tables\n  Bluetooth: Fix connection establishment with low security requirement\n  Bluetooth: Add different pairing timeout for Legacy Pairing\n  Bluetooth: Ensure that HCI sysfs add/del is preempt safe\n  net: Avoid extra wakeups of threads blocked in wait_for_packet()\n  net: Fix typo in net_device_ops description.\n  ipv4: Limit size of route cache hash table\n  Add reference to CAPI 2.0 standard\n  Documentation/isdn/INTERFACE.CAPI\n  update Documentation/isdn/00-INDEX\n  ixgbe: Fix WoL functionality for 82599 KX4 devices\n  veth: prevent oops caused by netdev destructor\n  xfrm: wrong hash value for temporary SA\n  forcedeth: tx timeout fix\n  net: Fix LL_MAX_HEADER for CONFIG_TR_MODULE\n  mlx4_en: Handle page allocation failure during receive\n  mlx4_en: Fix cleanup flow on cq activation\n  vlan: update vlan carrier state for admin up/down\n  netfilter: xt_recent: fix stack overread in compat code\n  ...\n"
    },
    {
      "commit": "942e4a2bd680c606af0211e64eb216be2e19bf61",
      "tree": "a83af49242d4a8d53aa0f3b5814eb17da72edc09",
      "parents": [
        "bf368e4e70cd4e0f880923c44e95a4273d725ab4"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Apr 28 22:36:33 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 28 22:36:33 2009 -0700"
      },
      "message": "netfilter: revised locking for x_tables\n\nThe x_tables are organized with a table structure and a per-cpu copies\nof the counters and rules. On older kernels there was a reader/writer \nlock per table which was a performance bottleneck. In 2.6.30-rc, this\nwas converted to use RCU and the counters/rules which solved the performance\nproblems for do_table but made replacing rules much slower because of\nthe necessary RCU grace period.\n\nThis version uses a per-cpu set of spinlocks and counters to allow to\ntable processing to proceed without the cache thrashing of a global\nreader lock and keeps the same performance for table updates.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f6532519feab921856f41b30a2397ee25f4de49",
      "tree": "b0ed2ef73fb5775aa986196562d3a23ee382fe72",
      "parents": [
        "27b1833279995e7c290a40cac4ef36ccea7e9283"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Apr 03 21:31:30 2009 -0700"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lrg@slimlogic.co.uk",
        "time": "Tue Apr 28 18:58:06 2009 +0100"
      },
      "message": "regulator: fix header file missing kernel-doc\n\nAdd regulator header file missing kernel-doc:\n\nWarning(include/linux/regulator/driver.h:117): No description found for parameter \u0027set_mode\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\ncc:\tLiam Girdwood \u003clrg@slimlogic.co.uk\u003e\ncc:\tMark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Liam Girdwood \u003clrg@slimlogic.co.uk\u003e\n"
    },
    {
      "commit": "5e5ee686e3c0f8a3cbe9b75c2690326bf91af10d",
      "tree": "cfa1e26391f1252a8e47fe82cc2a76ef23e95502",
      "parents": [
        "61994a61bcedf328cb1d6e96c393fc91ce64563d"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Tue Apr 28 07:47:33 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Apr 28 09:36:24 2009 -0700"
      },
      "message": "Input: add detailed multi-touch finger data report protocol\n\nIn order to utilize the full power of the new multi-touch devices, a\nway to report detailed finger data to user space is needed. This patch\nadds a multi-touch (MT) protocol which allows drivers to report details\nfor an arbitrary number of fingers.\n\nThe driver sends a SYN_MT_REPORT event via the input_mt_sync() function\nwhen a complete finger has been reported.\n\nIn order to stay compatible with existing applications, the data\nreported in a finger packet must not be recognized as single-touch\nevents. In addition, all finger data must bypass input filtering,\nsince subsequent events of the same type refer to different fingers.\n\nA set of ABS_MT events with the desired properties are defined. The\nevents are divided into categories, to allow for partial implementation.\nThe minimum set consists of ABS_MT_TOUCH_MAJOR, ABS_MT_POSITION_X and\nABS_MT_POSITION_Y, which allows for multiple fingers to be tracked.\nIf the device supports it, the ABS_MT_WIDTH_MAJOR may be used to provide\nthe size of the approaching finger. Anisotropy and direction may be\nspecified with ABS_MT_TOUCH_MINOR, ABS_MT_WIDTH_MINOR and\nABS_MT_ORIENTATION. Devices with more granular information may specify\ngeneral shapes as blobs, i.e., as a sequence of rectangular shapes\ngrouped together by a ABS_MT_BLOB_ID. Finally, the ABS_MT_TOOL_TYPE\nmay be used to specify whether the touching tool is a finger or a pen.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "6916d97f6e25cc66a32d6e9a16419067d843b14f",
      "tree": "15f4b7cbf480d145f7e8c1e812b762c19f04b386",
      "parents": [
        "9894cf0ff5e9ccda60d8d0e2d37bd61539b08826"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Mon Apr 27 11:52:43 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Apr 28 09:35:12 2009 -0700"
      },
      "message": "Input: bcm5974 - add quad-finger tapping\n\nThe integrated button on the new unibody Macbooks presents a need to\nreport explicit four-finger actions. Evidently, the finger pressing\nthe button is also touching the trackpad, so in order to fully support\nthree-finger actions, the driver must be able to report four-finger\nactions. This patch adds a new button, BTN_TOOL_QUADTAP, which\nachieves this.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "bf368e4e70cd4e0f880923c44e95a4273d725ab4",
      "tree": "43c8cd772aa17ca1dd852682ca489ccc7ab3fcd6",
      "parents": [
        "37b607c5ac3b7c92a6a3624bb29f1cdcdcf7044a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Apr 28 02:24:21 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 28 02:24:21 2009 -0700"
      },
      "message": "net: Avoid extra wakeups of threads blocked in wait_for_packet()\n\nIn 2.6.25 we added UDP mem accounting.\n\nThis unfortunatly added a penalty when a frame is transmitted, since\nwe have at TX completion time to call sock_wfree() to perform necessary\nmemory accounting. This calls sock_def_write_space() and utimately\nscheduler if any thread is waiting on the socket.\nThread(s) waiting for an incoming frame was scheduled, then had to sleep\nagain as event was meaningless.\n\n(All threads waiting on a socket are using same sk_sleep anchor)\n\nThis adds lot of extra wakeups and increases latencies, as noted\nby Christoph Lameter, and slows down softirq handler.\n\nReference : http://marc.info/?l\u003dlinux-netdev\u0026m\u003d124060437012283\u0026w\u003d2 \n\nFortunatly, Davide Libenzi recently added concept of keyed wakeups\ninto kernel, and particularly for sockets (see commit\n37e5540b3c9d838eb20f2ca8ea2eb8072271e403 \nepoll keyed wakeups: make sockets use keyed wakeups)\n\nDavide goal was to optimize epoll, but this new wakeup infrastructure\ncan help non epoll users as well, if they care to setup an appropriate\nhandler.\n\nThis patch introduces new DEFINE_WAIT_FUNC() helper and uses it\nin wait_for_packet(), so that only relevant event can wakeup a thread\nblocked in this function.\n\nTrace of function calls from bnx2 TX completion bnx2_poll_work() is :\n__kfree_skb()\n skb_release_head_state()\n  sock_wfree()\n   sock_def_write_space()\n    __wake_up_sync_key()\n     __wake_up_common()\n      receiver_wake_function() : Stops here since thread is waiting for an INPUT\n\n\nReported-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eec9462088a26c046d4db3100796a340a50890b8",
      "tree": "7038abaee44acf1498ede878257ea30f7ebb3c40",
      "parents": [
        "e138b4e08ef65771000fbe6d93d67e3960ff862b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 28 13:06:14 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 08:14:51 2009 +0200"
      },
      "message": "mg_disk: fold mg_disk.h into mg_disk.c\n\ninclude/linux/mg_disk.h is used only by drivers/block/mg_disk.c.  No\nreason to put it in a separate header.  Fold it into mg_disk.c.\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "9fd8d0e1bcb848257968d9a7d73ca4d890ea8bd1",
      "tree": "6ecdb8af44feda12713c1bee34a1ad5e9e978ee8",
      "parents": [
        "9eb55b030c4b3227334ee4482402096cd1d1a6fe"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 28 13:06:04 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 08:14:49 2009 +0200"
      },
      "message": "block: make blk_end_request_cur() return bool\n\nIn the process of mindlessly copying [__]blk_end_request_all(),\n[__]blk_end_request_cur() ended up returning void even though they\u0027re\npartial completion functions.  Fix it.\n\n[ Impact: fix braindead API ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "731ec497e5888c6792ad62613ae9be97eebcd7ca",
      "tree": "689a8442d8bdfd50ee6ab05b0c6acd0d229fe391",
      "parents": [
        "ec24751a6b57e1373a12361e581b2458bc9bb791"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:20 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:36 2009 +0200"
      },
      "message": "block: kill rq-\u003edata\n\nNow that all block request data transfer is done via bio, rq-\u003edata\nisn\u0027t used.  Kill it.\n\nWhile at it, make the roles of rq-\u003especial and buffer clear.\n\n[ Impact: drop now unncessary field from struct request ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\n"
    },
    {
      "commit": "f06d9a2b52e246a66b606130cea3f0d7b7be17a7",
      "tree": "020df1f9d54b00c72d8af02ac0827d496597e75a",
      "parents": [
        "40cbbb781d3eba5d6ac0860db078af490e5c7c6b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:19 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:36 2009 +0200"
      },
      "message": "block: replace end_request() with [__]blk_end_request_cur()\n\nend_request() has been kept around for backward compatibility;\nhowever, it\u0027s about time for it to go away.\n\n* There aren\u0027t too many users left.\n\n* Its use of @updtodate is pretty confusing.\n\n* In some cases, newer code ends up using mixture of end_request() and\n  [__]blk_end_request[_all](), which is way too confusing.\n\nSo, add [__]blk_end_request_cur() and replace end_request() with it.\nMost conversions are straightforward.  Noteworthy ones are...\n\n* paride/pcd: next_request() updated to take 0/-errno instead of 1/0.\n\n* paride/pf: pf_end_request() and next_request() updated to take\n  0/-errno instead of 1/0.\n\n* xd: xd_readwrite() updated to return 0/-errno instead of 1/0.\n\n* mtd/mtd_blkdevs: blktrans_discard_request() updated to return\n  0/-errno instead of 1/0.  Unnecessary local variable res\n  initialization removed from mtd_blktrans_thread().\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Joerg Dorchain \u003cjoerg@dorchain.net\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Laurent Vivier \u003cLaurent@lvivier.info\u003e\nCc: Tim Waugh \u003ctim@cyberelk.net\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Markus Lidel \u003cMarkus.Lidel@shadowconnect.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Pete Zaitcev \u003czaitcev@redhat.com\u003e\nCc: unsik Kim \u003cdonari75@gmail.com\u003e\n"
    },
    {
      "commit": "40cbbb781d3eba5d6ac0860db078af490e5c7c6b",
      "tree": "dec374543cf045fc630bccddbb7646c695094b0d",
      "parents": [
        "b243ddcbe9be146172baa544dadecebf156eda0e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:19 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:35 2009 +0200"
      },
      "message": "block: implement and use [__]blk_end_request_all()\n\nThere are many [__]blk_end_request() call sites which call it with\nfull request length and expect full completion.  Many of them ensure\nthat the request actually completes by doing BUG_ON() the return\nvalue, which is awkward and error-prone.\n\nThis patch adds [__]blk_end_request_all() which takes @rq and @error\nand fully completes the request.  BUG_ON() is added to to ensure that\nthis actually happens.\n\nMost conversions are simple but there are a few noteworthy ones.\n\n* cdrom/viocd: viocd_end_request() replaced with direct calls to\n  __blk_end_request_all().\n\n* s390/block/dasd: dasd_end_request() replaced with direct calls to\n  __blk_end_request_all().\n\n* s390/char/tape_block: tapeblock_end_request() replaced with direct\n  calls to blk_end_request_all().\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "2e60e02297cf54e367567f2d85b2ca56b1c4a906",
      "tree": "ea824afcaff58be894799a011f74d80c3560f372",
      "parents": [
        "0b302d5aa7975006fa2ec3d66386610b9b36c669"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:18 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:35 2009 +0200"
      },
      "message": "block: clean up request completion API\n\nRequest completion has gone through several changes and became a bit\nmessy over the time.  Clean it up.\n\n1. end_that_request_data() is a thin wrapper around\n   end_that_request_data_first() which checks whether bio is NULL\n   before doing anything and handles bidi completion.\n   blk_update_request() is a thin wrapper around\n   end_that_request_data() which clears nr_sectors on the last\n   iteration but doesn\u0027t use the bidi completion.\n\n   Clean it up by moving the initial bio NULL check and nr_sectors\n   clearing on the last iteration into end_that_request_data() and\n   renaming it to blk_update_request(), which makes blk_end_io() the\n   only user of end_that_request_data().  Collapse\n   end_that_request_data() into blk_end_io().\n\n2. There are four visible completion variants - blk_end_request(),\n   __blk_end_request(), blk_end_bidi_request() and end_request().\n   blk_end_request() and blk_end_bidi_request() uses blk_end_request()\n   as the backend but __blk_end_request() and end_request() use\n   separate implementation in __blk_end_request() due to different\n   locking rules.\n\n   blk_end_bidi_request() is identical to blk_end_io().  Collapse\n   blk_end_io() into blk_end_bidi_request(), separate out request\n   update into internal helper blk_update_bidi_request() and add\n   __blk_end_bidi_request().  Redefine [__]blk_end_request() as thin\n   inline wrappers around [__]blk_end_bidi_request().\n\n3. As the whole request issue/completion usages are about to be\n   modified and audited, it\u0027s a good chance to convert completion\n   functions return bool which better indicates the intended meaning\n   of return values.\n\n4. The function name end_that_request_last() is from the days when it\n   was a public interface and slighly confusing.  Give it a proper\n   internal name - blk_finish_request().\n\n5. Add description explaning that blk_end_bidi_request() can be safely\n   used for uni requests as suggested by Boaz Harrosh.\n\nThe only visible behavior change is from #1.  nr_sectors counts are\ncleared after the final iteration no matter which function is used to\ncomplete the request.  I couldn\u0027t find any place where the code\nassumes those nr_sectors counters contain the values for the last\nsegment and this change is good as it makes the API much more\nconsistent as the end result is now same whether a request is\ncompleted using [__]blk_end_request() alone or in combination with\nblk_update_request().\n\nAPI further cleaned up per Christoph\u0027s suggestion.\n\n[ Impact: cleanup, rq-\u003e*nr_sectors always updated after req completion ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "0b302d5aa7975006fa2ec3d66386610b9b36c669",
      "tree": "bba5de7b377ad167c4291cbdfd203ca7616d696d",
      "parents": [
        "158dbda0068e63c7cce7bd47c123bd1dfa5a902c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:18 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:34 2009 +0200"
      },
      "message": "block: kill blk_end_request_callback()\n\nWith recent IDE updates, blk_end_request_callback() doesn\u0027t have any\nuser now.  Kill it.\n\n[ Impact: removal of unused convoluted interface ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5efccd17ceb0fc43837a331297c2c407969d7201",
      "tree": "6678ebea73ffc9f2ad35029eaaf49e68073e4e88",
      "parents": [
        "2eef33e439ba9ae387cdc3f1abcef2f3f6c4e7a8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:18 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:34 2009 +0200"
      },
      "message": "block: reorder request completion functions\n\nReorder request completion functions such that\n\n* All request completion functions are located together.\n\n* Functions which are used by only one caller is put right above the\n  caller.\n\n* end_request() is put after other completion functions but before\n  blk_update_request().\n\nThis change is for completion function cleanup which will follow.\n\n[ Impact: cleanup, code reorganization ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "a7f557923441186a3cdbabc54f1bcacf42b63bf5",
      "tree": "48e37802174cb98be43d89eb8bc4e466f4d79a02",
      "parents": [
        "a538cd03be6f363d039daa94199c28cfbd508455"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Apr 23 11:05:17 2009 +0900"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:33 2009 +0200"
      },
      "message": "block: kill blk_start_queueing()\n\nblk_start_queueing() is identical to __blk_run_queue() except that it\ndoesn\u0027t check for recursion.  None of the current users depends on\nblk_start_queueing() running request_fn directly.  Replace usages of\nblk_start_queueing() with [__]blk_run_queue() and kill it.\n\n[ Impact: removal of mostly duplicate interface function ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\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": "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": "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": "214ae19104141404f18ad6651752eb38e3dd584e",
      "tree": "90e7df7b0cac3fb374206eb6ee2bfe236bd8d1f8",
      "parents": [
        "b2963ac1738542d30305d7e12c8c078a383a425c"
      ],
      "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 kill unused ide_cmd-\u003especial\n\nImpact: removal of unused field\n\nNo one uses ide_cmd-\u003especial anymore.  Kill it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "e686307fdc84f249490e6c9da92fcb2424491f14",
      "tree": "d0174abe1f71a4435bf4b7a5822bfdc7dcf650aa",
      "parents": [
        "e93b9fb7d85da4fd9d5171649e5ddcac1dd572bf"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Fri Apr 17 08:41:21 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Tue Apr 28 07:37:28 2009 +0200"
      },
      "message": "loop: use BIO list management functions\n\nNow that the bio list management stuff is generic, convert loop to use\nbio lists instead of its own private bio list implementation.\n\nCc:  Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "27b1833279995e7c290a40cac4ef36ccea7e9283",
      "tree": "7efbe3f8c9dad692ea7a8bc04c6be2303b1296e6",
      "parents": [
        "a0871e8cb8c3f5ee2ecc560ae73a35cd420440f9"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Mon Apr 27 14:02:27 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 27 19:51:58 2009 -0700"
      },
      "message": "Remove unused support code for refok sections.\n\nThe old refok sections\n\n  .text.init.refok\n  .data.init.refok\n  .exit.text.refok\n\nhave been deprecated since commit\n312b1485fb509c9bc32eda28ad29537896658cb8.  After the other patches in\nthis patch series nothing is put in these sections, so clean things up\nby eliminating all the remaining references to them.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3fb8e49200064adcc00c327bf61942b42978d7b0",
      "tree": "c1384aa414c0867e3a9b9b5e709dc1b7738bf22e",
      "parents": [
        "4ebf66233798347a73b01da5d30d5d2c0ef39f56",
        "1b6b8ce2ac372ea1f2065b89228ede105eb68dc5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 27 11:59:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 27 11:59:46 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  PCI: only save/restore existent registers in the PCIe capability\n  x86/PCI: don\u0027t bother with root quirks if _CRS is used\n  docbooks: add/fix PCI kernel-doc\n  PCI: cleanup debug output resources\n  x86/PCI: set_pci_bus_resources_arch_default cleanups\n  x86/PCI: Move set_pci_bus_resources_arch_default into arch/x86\n  x86/PCI: don\u0027t call e820_all_mapped with -1 in the mmconfig case\n  PCI quirk: disable MSI on VIA VT3364 chipsets\n"
    },
    {
      "commit": "37b607c5ac3b7c92a6a3624bb29f1cdcdcf7044a",
      "tree": "ac2ecd6b61ea290748b6d33e41637e24d962f05b",
      "parents": [
        "c9503e0fe052020e0294cd07d0ecd982eb7c9177"
      ],
      "author": {
        "name": "Mike Rapoport",
        "email": "mike@compulab.co.il",
        "time": "Mon Apr 27 05:45:54 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 27 05:45:54 2009 -0700"
      },
      "message": "net: Fix typo in net_device_ops description.\n\nSigned-off-by: Mike Rapoport \u003cmike@compulab.co.il\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c759a6b4e1cae6aff71f58c9c85404ebcd81b6e0",
      "tree": "0c91cc3b8b06534f1c169867baa0c1061a8f6663",
      "parents": [
        "785a0982eaaeae2fbe3372d1c9c769e8156a7a5a"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Apr 27 02:36:20 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 27 02:36:20 2009 -0700"
      },
      "message": "net: Fix LL_MAX_HEADER for CONFIG_TR_MODULE\n\nUnless I miss anything this should fix a bug.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c80d471a476b6d6fe0bc1fd25293c24c66b7aaaf",
      "tree": "e7e6cf35915186c614728dadbd95c5197bff0075",
      "parents": [
        "0c8454f56623505a99463405fd7d5664adfbb094"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:10:56 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "Add new HEAD_TEXT_SECTION macro.\n\nThis patch is preparation for replacing all uses of \".head.text\" or\n\".text.head\" in the kernel with macros, so that the section name can\nlater be changed without having to touch a lot of the kernel.\n\nSince some linker scripts do more complex things than referencing\nHEAD_TEXT, we add a HEAD_TEXT_SECTION macro that just contains the\nactual name.\n\nI\u0027ve defined HEAD_TEXT_SECTION in a new header,\ninclude/linux/section-names.h, so that this section name only needs to\nappear in one place.  I anticipate creating similar macro structures\nfor a number of other section names.\n\nThe long-term goal here is to be able to change the kernel\u0027s magic\nsection names to those that are compatible with -ffunction-sections\n-fdata-sections.  This requires renaming all magic sections with names\nof the form \".text.foo\".\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1c41e238e0beaac530c5c9d629e8dfbbadc4a099",
      "tree": "4cfada93058fe1b8902ca8cda090fa71cd332133",
      "parents": [
        "29fe1b481283a1bada994a69f65736db4ae6f35f",
        "37e55cf0ceb8803256bf69a3e45bd668bf90b76f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 25 17:46:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 25 17:46:34 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "ef54b1bb2e4de212a89a2692a7b2efd70b5fb559",
      "tree": "41f8a3f0b6bc234efb5151d7b6852babe7fe75a6",
      "parents": [
        "9fe9293d14e8418f29136216f0180f47270a916a",
        "1162cf6bc6c4650943735438e2be0785ea40a3c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:48:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:48:17 2009 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (34 commits)\n  ACPI, i915: Register ACPI video even when not modesetting\n  Revert \"ACPICA: delete check for AML access to port 0x81-83\"\n  I/O port protection: update for windows compatibility.\n  sony-laptop: always try to unblock rfkill on load\n  sony-laptop: fix bogus error message display on resume\n  ACPI: EC: Fix ACPI EC resume non-query interrupt message\n  sony-laptop: SNC input event 38 fix\n  sony-laptop: SNC 127 Initialization Fix\n  sony-laptop: Duplicate SNC 127 Event Fix\n  ACPI: prevent processor.max_cstate\u003d0 boot crash\n  ACPI/hpet: prevent boot hang when hpet\u003dforce used on ICH-4M\n  ACPI: delete obsolete \"bus master activity\" proc field\n  ACPI: idle: mark_tsc_unstable() at init-time, not run-time\n  ACPI: add /sys/firmware/acpi/interrupts/sci_not counter\n  ACPI video: fix an error when the brightness levels on AC and on Battery are same\n  acpi-cpufreq: Do not let get_measured perf depend on internal variable\n  acpi-cpufreq: style-only: add parens to math expression\n  acpi-cpufreq: Cleanup: Use printk_once\n  x86, acpi_cpufreq: Fix the NULL pointer dereference in get_measured_perf\n  thinkpad-acpi: bump up version to 0.23\n  ...\n"
    },
    {
      "commit": "a4277bf122e907e4fec509fc0bd9bf5fde30b14e",
      "tree": "b359e8b0f7895acda1d6331332e69ea5b14d5f0d",
      "parents": [
        "6ae85d6db4871d8dbcb5cc0e9056f97f1ca07061",
        "b5451f7b2694b04d9f912f6cf09db1729f291996"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:37:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:37:40 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: Fix potential inode allocation soft lockup in Orlov allocator\n  ext4: Make the extent validity check more paranoid\n  jbd: use SWRITE_SYNC_PLUG when writing synchronous revoke records\n  jbd2: use SWRITE_SYNC_PLUG when writing synchronous revoke records\n  ext4: really print the find_group_flex fallback warning only once\n"
    },
    {
      "commit": "d72cd3a90e4d6725b62919139e2ab7bd926fa16d",
      "tree": "771731ecee0ebdd60dcda2173945cff28edc8e71",
      "parents": [
        "ff91fad2db543325d7221c26ff42d7df3c574064",
        "6b35ca0d3d586b8ecb8396821af21186e20afaf0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:36:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:36:06 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:\n  USB: pwc : do not pass stack allocated buffers to USB core.\n  USB: otg: Fix bug on remove path without transceiver\n  USB: correct error handling in cdc-wdm\n  USB: removal of tty-\u003elow_latency hack dating back to the old serial code\n  USB: serial: sierra driver bug fix for composite interface\n  USB: gadget: omap_udc uses platform_driver_probe()\n  USB: ci13xxx_udc: fix build error\n  USB: musb: Prevent multiple includes of musb.h\n  USB: pass mem_flags to dma_alloc_coherent\n  USB: g_file_storage: fix use-after-free bug when closing files\n  USB: ehci-sched.c: EHCI SITD scheduling bugfix\n  USB: fix mos7840 problem with minor numbers\n  USB: mos7840: add new device id\n  USB: musb: fix build when !CONFIG_PM\n  USB: musb: Remove my email address from few musb related drivers\n  USB: Gadget: MIPS CI13xxx UDC bugfixes\n  USB: Unusual Device support for Gold MP3 Player Energy\n  USB: serial: fix lifetime and locking problems\n"
    },
    {
      "commit": "12bac708e6242b0ccd969519582b2938d78289bb",
      "tree": "4cf804bcf1a3afb90044f8b33405ea6713c8731e",
      "parents": [
        "60911731fe7fd4ec4d088fc1a48a56c9fb14103f",
        "d9ba7615bfd8bb06f79c853f9dfff9e93a837941"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:27:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:27:02 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:\n  GFS2: Ensure that the inode goal block settings are updated\n  GFS2: Fix bug in block allocation\n  bitops: Add __ffs64 bitop\n"
    },
    {
      "commit": "60911731fe7fd4ec4d088fc1a48a56c9fb14103f",
      "tree": "a4343a10d8cb6195dbda3bc2bc2688e42de70fb4",
      "parents": [
        "d1f53fb90ee631a2cf8f7bdd0e921a338106e4f9",
        "888d256e9c565cb61505bd218eb37c81fe77a325"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:26:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:26:01 2009 -0700"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.30\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.30\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm:\n  KVM: Unregister cpufreq notifier on unload\n  KVM: x86: release time_page on vcpu destruction\n  KVM: Fix overlapping check for memory slots\n  KVM: MMU: disable global page optimization\n  KVM: ia64: fix locking order entering guest\n  KVM: MMU: Fix off-by-one calculating large page count\n"
    },
    {
      "commit": "71951b64a5a87c09eb6fde59ce51aaab2fdaeab2",
      "tree": "1359fc0af814b525bdeec70d3413b39dd84d2bed",
      "parents": [
        "4b0706624930dc75c3b0d0df463d89759ef7de29"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Fri Apr 24 16:58:41 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Apr 24 16:58:41 2009 +0200"
      },
      "message": "netfilter: nf_ct_dccp: add missing role attributes for DCCP\n\nThis patch adds missing role attribute to the DCCP type, otherwise\nthe creation of entries is not of any use.\n\nThe attribute added is CTA_PROTOINFO_DCCP_ROLE which contains the\nrole of the conntrack original tuple.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "97c68d00dbb2decda4b3dce79ce55df04246a834",
      "tree": "f7c2f3185e4dfb073f6d268b4aa0a4d9a0015ece",
      "parents": [
        "596a5c4e43b08e90c0cd788861f859bf7ed6eddc",
        "f2d1f0ae7851be5ebd9613a80dac139270938809"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:48:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:48:24 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  cfq-iosched: cache prio_tree root in cfqq-\u003ep_root\n  cfq-iosched: fix bug with aliased request and cooperation detection\n  cfq-iosched: clear -\u003eprio_trees[] on cfqd alloc\n  block: fix intermittent dm timeout based oops\n  umem: fix request_queue lock warning\n  block: simplify I/O stat accounting\n  pktcdvd.h should include mempool.h\n  cfq-iosched: use the default seek distance when there aren\u0027t enough seek samples\n  cfq-iosched: make seek_mean converge more quickly\n  block: make blk_abort_queue() ignore non-request based devices\n  block: include empty disks in /proc/diskstats\n  bio: use bio_kmalloc() in copy/map functions\n  bio: fix bio_kmalloc()\n  block: fix queue bounce limit setting\n  block: fix SG_IO vector request data length handling\n  scatterlist: make sure sg_miter_next() doesn\u0027t return 0 sized mappings\n"
    },
    {
      "commit": "f8c3301e8336334be62527c5314018f75f58ad4b",
      "tree": "1eb819381e0858a03fe544dc40cf4661adf683bf",
      "parents": [
        "437f7fdb607f32b737e4da9f14bebcfdac2c90c3",
        "6329db8bd60fbc0832f30c350b0181b8d865573e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:44:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:44:58 2009 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:\n  powerpc: Fix modular build of ide-pmac when mediabay is built in\n  powerpc/pasemi: Fix build error on UP\n  powerpc: Make macintosh/mediabay driver depend on CONFIG_BLOCK\n  maintainers: Fix PS3 patterns\n  powerpc/ps3: Fix CONFIG_PS3_FLASH\u003dn build warning\n  powerpc/32: Don\u0027t clobber personality flags on exec\n  powerpc: Fix crash on CPU hotplug\n  powerpc/85xx: Remove defconfigs that mpc85xx_{smp_}defconfig cover\n  powerpc/85xx: Added SMP defconfig\n  powerpc/85xx: Enabled a bunch of FSL specific drivers/options\n  powerpc/85xx: Updated generic mpc85xx_defconfig\n  powerpc: don\u0027t disable SATA interrupts on Freescale MPC8610 HPCD\n  fsl_rio: Pass the proper device to dma mapping routines\n  powerpc: Fix of_node_put() exit path in of_irq_map_one()\n  powerpc/5200: defconfig updates\n  powerpc/5200: Add FLASH nodes to lite5200 device tree\n  powerpc/device-tree: Document MTD nodes with multiple \"reg\" tuples\n  powerpc/of-device-tree: Factor MTD physmap bindings out of booting-without-of\n  powerpc/5200: Bring the legacy fsl_spi_platform_data hooks back\n"
    },
    {
      "commit": "42dad7647aec49b3ad20dd0cb832b232a6ae514f",
      "tree": "b70d4cb7706f2647e65426e24f078ddf14d6e139",
      "parents": [
        "097102c2d04974bdfcfa16a5f3062d499842139c"
      ],
      "author": {
        "name": "Jerome Marchand",
        "email": "jmarchan@redhat.com",
        "time": "Wed Apr 22 14:01:49 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "block: simplify I/O stat accounting\n\nThis simplifies I/O stat accounting switching code and separates it\ncompletely from I/O scheduler switch code.\n\nRequests are accounted according to the state of their request queue\nat the time of the request allocation. There is no need anymore to\nflush the request queue when switching I/O accounting state.\n\nSigned-off-by: Jerome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "097102c2d04974bdfcfa16a5f3062d499842139c",
      "tree": "92031feecd795fac2505ca46d87156de351b67b5",
      "parents": [
        "04dc6e71a28d4815bf9431efcafc107bb0ad2792"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Tue Apr 21 09:33:14 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "pktcdvd.h should include mempool.h\n\nFix this build error:\nIn file included from fs/compat_ioctl.c:104:\ninclude/linux/pktcdvd.h:285: error: expected specifier-qualifier-list before \u0027mempool_t\u0027\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "6e6c348fb23122c6faf89ef10f1b9f034dba0da5",
      "tree": "a9896fb7efb66f2fd9f632b09805ea1e8dc3b086",
      "parents": [
        "7f3745ad7aca48b946136e3173861821fa8b24c5",
        "88bea188b85f9cefefbbd56b8a48d0f798409177"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 01:34:59 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 01:34:59 2009 -0400"
      },
      "message": "Merge branch \u0027irq\u0027 into release\n"
    },
    {
      "commit": "fbfc396efbc11d784b4325adfc02e82a0df01a8d",
      "tree": "8e391a13da80dbe1381be51849bc84967024c193",
      "parents": [
        "a8aa401f38cfb5fa26e970b48e93fb851d68fe64"
      ],
      "author": {
        "name": "Mark A. Greer",
        "email": "mgreer@mvista.com",
        "time": "Tue Apr 21 20:52:54 2009 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Apr 23 14:15:28 2009 -0700"
      },
      "message": "USB: musb: Prevent multiple includes of musb.h\n\nAdd #ifndef to musb header file to prevent multiple inclusions.\n\nSigned-off-by: Mark A. Greer \u003cmgreer@mvista.com\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "952043ac12a117d8e94bddd9088338d7ad20ca7d",
      "tree": "3ad716873d90392fbf1888084af9be7e5e242e1f",
      "parents": [
        "091069740304c979f957ceacec39c461d0192158"
      ],
      "author": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Apr 23 08:48:15 2009 +0100"
      },
      "committer": {
        "name": "Steven Whitehouse",
        "email": "swhiteho@redhat.com",
        "time": "Thu Apr 23 10:06:35 2009 +0100"
      },
      "message": "bitops: Add __ffs64 bitop\n\nFinds the first set bit in a 64 bit word. This is required in order\nto fix a bug in GFS2, but I think it should be a generic function\nin case of future users.\n\nSigned-off-by: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux.com\u003e\nReviewed-by: Willy Tarreau \u003cw@1wt.eu\u003e\n"
    }
  ],
  "next": "1b6b8ce2ac372ea1f2065b89228ede105eb68dc5"
}
