)]}'
{
  "log": [
    {
      "commit": "4744b43431e8613f920c5cba88346756f53c5165",
      "tree": "dafe97684babed8a1b5a9c79bf7043d2ac7e2849",
      "parents": [
        "3669bc143fb3d389918379547f4a6b28a757b7fe"
      ],
      "author": {
        "name": "Tim Bird",
        "email": "tim.bird@am.sony.com",
        "time": "Fri Aug 01 14:05:50 2008 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Fri Aug 01 22:23:09 2008 +0100"
      },
      "message": "embedded: fix vc_translate operator precedence\n\nThis fixes a bug in operator precedence in the newly introduced vc_translate\nmacro.  Without this fix, the translation of some characters on the\nkernel console is garbled.\n\nThis patch was copied to the e-mail list previously for testing.  Now,\nall reports confirm that it works, so this is an official post for\napplication.\n\nSigned-off-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "84ff7a001270258f71d6ab0d164f351e32c9718a",
      "tree": "6b2f33a9ad492186062de247d3572fa5efebe4bd",
      "parents": [
        "478735e42bfa047384afa72dceb408035532db20",
        "1f4170e12db06fdde5279d665a7e6e2976b2b623"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:48:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:48:16 2008 -0700"
      },
      "message": "Merge branch \u0027kvm-updates-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm\n\n* \u0027kvm-updates-2.6.27\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:\n  KVM: s390: Fix kvm on IBM System z10\n  KVM: Advertise synchronized mmu support to userspace\n  KVM: Synchronize guest physical memory map to host virtual memory map\n  KVM: Allow browsing memslots with mmu_lock\n  KVM: Allow reading aliases with mmu_lock\n"
    },
    {
      "commit": "3a4b7886ee59e122d359e1714ed89585a06645ad",
      "tree": "d4db00a37e7d3013f2c5f7cad9f6d83c8c0f4c29",
      "parents": [
        "b8a327be3fbf05b5d3a935b4c03a3dcdb6db833e",
        "963e4975c6f93c148ca809d986d412201df9af89"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:41:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:41:29 2008 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  pata_it821x: Driver updates and reworking\n  libata.h: replace __FUNCTION__ with __func__\n  ata_piix: subsys 106b:00a3 is apple ich8m too\n  libata-core: make sure that ata_force_tbl is freed in case of an error\n  libata: update atapi disable handling\n  pata_via: add VX800 flag; add function for fixing h/w bugs\n  pata_ali: misplaced pci_dev_put()\n"
    },
    {
      "commit": "b8a327be3fbf05b5d3a935b4c03a3dcdb6db833e",
      "tree": "96f4822dd4a1d5c43df5fe60382b6d39bbc2b671",
      "parents": [
        "46bd58eab21650fe820e4e3a27a6a134892cc2eb",
        "f13fae2d2a9372a5155d20bc9da4c14f02193277"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:39:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:39:09 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-pull\n\n* \u0027for-linus\u0027 of git://oss.sgi.com:8090/xfs/xfs-pull: (64 commits)\n  [XFS] Remove vn_revalidate calls in xfs.\n  [XFS] Now that xfs_setattr is only used for attributes set from -\u003esetattr\n  [XFS] xfs_setattr currently doesn\u0027t just handle the attributes set through\n  [XFS] fix use after free with external logs or real-time devices\n  [XFS] A bug was found in xfs_bmap_add_extent_unwritten_real(). In a\n  [XFS] fix compilation without CONFIG_PROC_FS\n  [XFS] s/XFS_PURGE_INODE/IRELE/g s/VN_HOLD(XFS_ITOV())/IHOLD()/\n  [XFS] fix mount option parsing in remount\n  [XFS] Disable queue flag test in barrier check.\n  [XFS] streamline init/exit path\n  [XFS] Fix up problem when CONFIG_XFS_POSIX_ACL is not set and yet we still\n  [XFS] Don\u0027t assert if trying to mount with blocksize \u003e pagesize\n  [XFS] Don\u0027t update mtime on rename source\n  [XFS] Allow xfs_bmbt_split() to fallback to the lowspace allocator\n  [XFS] Restore the lowspace extent allocator algorithm\n  [XFS] use minleft when allocating in xfs_bmbt_split()\n  [XFS] attrmulti cleanup\n  [XFS] Check for invalid flags in xfs_attrlist_by_handle.\n  [XFS] Fix CI lookup in leaf-form directories\n  [XFS] Use the generic xattr methods.\n  ...\n"
    },
    {
      "commit": "5c7edcd7ee6b77b88252fe4096dce1a46a60c829",
      "tree": "4936df589df33c671e2e98ea45b89e7f45278f61",
      "parents": [
        "1e24b15b267293567a8d752721c7ae63f281325a"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Thu Jul 31 02:04:09 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:01:11 2008 -0700"
      },
      "message": "tracehook: fix exit_signal\u003d0 case\n\nMy commit 2b2a1ff64afbadac842bbc58c5166962cf4f7664 introduced a regression\n(sorry about that) for the odd case of exit_signal\u003d0 (e.g. clone_flags\u003d0).\nThis is not a normal use, but it\u0027s used by a case in the glibc test suite.\n\nDying with exit_signal\u003d0 sends no signal, but it\u0027s supposed to wake up a\nparent\u0027s blocked wait*() calls (unlike the delayed_group_leader case).\nThis fixes tracehook_notify_death() and its caller to distinguish a\n\"signal 0\" wakeup from the delayed_group_leader case (with no wakeup).\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nTested-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e24b15b267293567a8d752721c7ae63f281325a",
      "tree": "ee63644d2dc59899e42ec0802c201140e3a92e5e",
      "parents": [
        "63a16f90167850010864a9e8ebb71d216983090f",
        "388667bed591b2359713bb17d5de0cf56e961447"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:56:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:56:07 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md:\n  md: raid10: wake up frozen array\n  md: do not count blocked devices as spares\n  md: do not progress the resync process if the stripe was blocked\n  md: delay notification of \u0027active_idle\u0027 to the recovery thread\n  md: fix merge error\n  md: move async_tx_issue_pending_all outside spin_lock_irq\n"
    },
    {
      "commit": "63a16f90167850010864a9e8ebb71d216983090f",
      "tree": "c4b284cc596421ac8100e0ad3b2f56ead4563d2d",
      "parents": [
        "5adf2b03d97111c8955495ba11e8b7db27df8695",
        "c259ae52e204d42f8b2d484c85517a4c367030e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:54:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:54:05 2008 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:\n  [PATCH] ocfs2: Release mutex in error handling code\n  [PATCH] ocfs2: Fix oops when racing files truncates with writes into an mmap region\n  [PATCH 2/2] ocfs2: Fix race between mount and recovery\n  [PATCH 1/2] ocfs2: Add counter in struct ocfs2_dinode to track journal replays\n  [PATCH] configfs: Convenience macros for attribute definition.\n  [PATCH] configfs: Pin configfs subsystems separately from new config_items.\n  [PATCH] configfs: Fix open directory making rmdir() fail\n  [PATCH] configfs: Lock new directory inodes before removing on cleanup after failure\n  [PATCH] configfs: Prevent userspace from creating new entries under attaching directories\n  [PATCH] configfs: Fix failing symlink() making rmdir() fail\n  [PATCH] configfs: Fix symlink() to a removing item\n  [PATCH] configfs: Include linux/err.h in linux/configfs.h\n"
    },
    {
      "commit": "b17b3d479c4c43c3a980ee553c3be3ca456523de",
      "tree": "6715c10bfe1301eb3c112b17a858b541ce14aef5",
      "parents": [
        "31582b094d640fdab3fd29237b348a4c7c8646fb",
        "93769f58078e2a066b56217cae1e343ac5a6b78c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:46:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:46:00 2008 -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  md: the bitmap code needs to use blk_plug_device_unlocked()\n  block: add a blk_plug_device_unlocked() that grabs the queue lock\n"
    },
    {
      "commit": "9a5467fd600669cda488771dac3e951034fe2b08",
      "tree": "20c3c73ff3571e525193aca20d3602161b4e90be",
      "parents": [
        "676056132425ac425d7215cdaa8bd25582e07966",
        "00b1304c4ca81dd893973cc620b87a5c3ff3f660"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:35:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:35:16 2008 -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: (46 commits)\n  tcp: MD5: Fix IPv6 signatures\n  skbuff: add missing kernel-doc for do_not_encrypt\n  net/ipv4/route.c: fix build error\n  tcp: MD5: Fix MD5 signatures on certain ACK packets\n  ipv6: Fix ip6_xmit to send fragments if ipfragok is true\n  ipvs: Move userspace definitions to include/linux/ip_vs.h\n  netdev: Fix lockdep warnings in multiqueue configurations.\n  netfilter: xt_hashlimit: fix race between htable_destroy and htable_gc\n  netfilter: ipt_recent: fix race between recent_mt_destroy and proc manipulations\n  netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged\n  irda: replace __FUNCTION__ with __func__\n  nsc-ircc: default to dongle type 9 on IBM hardware\n  bluetooth: add quirks for a few hci_usb devices\n  hysdn: remove the packed attribute from PofTimStamp_tag\n  isdn: use the common ascii hex helpers\n  tg3: adapt tg3 to use reworked PCI PM code\n  atm: fix direct casts of pointers to u32 in the InterPhase driver\n  atm: fix const assignment/discard warnings in the ATM networking driver\n  net: use the common ascii hex helpers\n  random32: seeding improvement\n  ...\n"
    },
    {
      "commit": "6c5e0c4d518a37e1d5d794c14433e80284415079",
      "tree": "26208a4fe4115a37c000a13d50df8c1a5e393553",
      "parents": [
        "94ad374a0751f40d25e22e036c37f7263569d24c"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 01 20:31:32 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Aug 01 20:31:32 2008 +0200"
      },
      "message": "block: add a blk_plug_device_unlocked() that grabs the queue lock\n\nblk_plug_device() must be called with the queue lock held, so callers\noften just grab and release the lock for that purpose. Add a helper\nthat does just that.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "623fa579e61f250c1913c70257ef3a753820bb68",
      "tree": "179fcff4a0469bfa9a9ce5cab14fff6141810cd0",
      "parents": [
        "d65f5c5803d9cd6fa0b540a0dddf956be671bc36",
        "e4c094a595ba8ea402e6b2153f7bbf6ef039eea0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:29:54 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:29:54 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  [MTD] [NAND] drivers/mtd/nand/nandsim.c: fix printk warnings\n  [MTD] [NAND] Blackfin NFC Driver: Cleanup the error exit path of bf5xx_nand_probe function\n  [MTD] [NAND] Blackfin NFC Driver: use standard dev_err() rather than printk()\n  [MTD] [NAND] Blackfin NFC Driver: enable Blackfin nand HWECC support by default\n  [MTD] [NAND] Blackfin NFC Driver: add proper devinit/devexit markings to probe/remove functions\n  [MTD] [NAND] Blackfin NFC Driver: add support for the ECC layout the Blackfin bootrom uses\n  [MTD] [NAND] Blackfin NFC Driver: fix bug - hw ecc calc by making sure we extract 11 bits from each register instead of 10\n  [MTD] [NAND] Blackfin NFC Driver: fix bug - do not clobber the status from the first 256 bytes if operating on 512 pages\n  [MTD] [NAND] diskonchip.c fix sparse endian warnings\n  [MTD] [NAND] drivers/mtd/nand/nandsim.c needs div64.h\n  [JFFS2] Fix allocation of summary buffer\n  Fix rename of at91_nand -\u003e atmel_nand\n  [MTD] [NOR] drivers/mtd/chips/jedec_probe.c: fix Am29DL800BB device ID\n  [MTD] MTD_DEBUG always does compile-time typechecks\n  [MTD] DataFlash: bugfix, binary page sizes now handled\n  [MTD] [NAND] fsl_elbc_nand.c: fix printk warning\n  [MTD] [NAND] nandsim: support random page read command\n  [MTD] [NAND] fix subpage read for small page NAND\n"
    },
    {
      "commit": "d65f5c5803d9cd6fa0b540a0dddf956be671bc36",
      "tree": "d8b7e7197bd126ce857c9a368dd7573b531cb22f",
      "parents": [
        "a8086ad803fc4d251edb9a49838bf99c7fdfb44f",
        "8d66bf5481002b0960aa49aed0987c73f5d7816c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:26:51 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:26:51 2008 -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:\n  [PATCH] pass struct path * to do_add_mount()\n  [PATCH] switch mtd and dm-table to lookup_bdev()\n  [patch 3/4] vfs: remove unused nameidata argument of may_create()\n  [PATCH] devpts: switch to IDA\n  [PATCH 2/2] proc: switch inode number allocation to IDA\n  [PATCH 1/2] proc: fix inode number bogorithmetic\n  [PATCH] fix bdev leak in block_dev.c do_open()\n  [PATCH] fix races and leaks in vfs_quota_on() users\n  [PATCH] clean dup2() up a bit\n  [PATCH] merge locate_fd() and get_unused_fd()\n  [PATCH] ipv4_static_sysctl_init() should be under CONFIG_SYSCTL\n  Re: BUG at security/selinux/avc.c:883 (was: Re: linux-next: Tree\n"
    },
    {
      "commit": "561b35b341b1aeeab486affe1ede0ee6640ce33b",
      "tree": "a7570737884bef3c15db98cae629a82ce3586b3c",
      "parents": [
        "a7c2a10dab4e5122cbcfa3d5e9d589a52ccc2287",
        "0eb5d5ab3ec99bfd22ff16797d95835369ffb25b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:56:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:56:40 2008 -0700"
      },
      "message": "Merge branch \u0027reg-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6\n\n* \u0027reg-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6:\n  regulator: TI bq24022 Li-Ion Charger driver\n  regulator: maintainers - add maintainers for regulator framework.\n  regulator: documentation - ABI\n  regulator: documentation - machine\n  regulator: documentation - regulator driver\n  regulator: documentation - consumer interface\n  regulator: documentation - overview\n  regulator: core kbuild files\n  regulator: regulator test harness\n  regulator: add support for fixed regulators.\n  regulator: regulator framework core\n  regulator: fixed regulator interface\n  regulator: machine driver interface\n  regulator: regulator driver interface\n  regulator: consumer device interface\n"
    },
    {
      "commit": "b14f7fb5aa2f4289e3a9fa8d7d92417ec8607498",
      "tree": "8f0ef2cf36dbf096e91c89f5917a24fb363f6101",
      "parents": [
        "00e9028a95fb8a4d79f2fb695a853f33ea7d3b57",
        "9fec6060d9e48ed7db0dac0e16d0f0f0e615b7f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:55:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:55:07 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/battery-2.6\n\n* git://git.infradead.org/battery-2.6:\n  power_supply: Sharp SL-6000 (tosa) batteries support\n  power_supply: fix up CHARGE_COUNTER output to be more precise\n  power_supply: add CHARGE_COUNTER property and olpc_battery support for it\n  power_supply: bump EC version check that we refuse to run with in olpc_battery\n  power_supply: cleanup of the OLPC battery driver\n  power_supply: add eeprom dump file to olpc_battery\u0027s sysfs\n  power_supply: Support serial number in olpc_battery\n"
    },
    {
      "commit": "00e9028a95fb8a4d79f2fb695a853f33ea7d3b57",
      "tree": "2dea2ae498a6ce57de8890e87185aca5e9f3ad2d",
      "parents": [
        "57b1494d2ba544c62673234da6115c21fac27ffc",
        "7cb93181629c613ee2b8f4ffe3446f8003074842"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:53:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:53:43 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (28 commits)\n  mm/hugetlb.c must #include \u003casm/io.h\u003e\n  video: Fix up hp6xx driver build regressions.\n  sh: defconfig updates.\n  sh: Kill off stray mach-rsk7203 reference.\n  serial: sh-sci: Fix up SH7760/SH7780/SH7785 early printk regression.\n  sh: Move out individual boards without mach groups.\n  sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h.\n  sh: Allow SH-3 and SH-5 to use common headers.\n  sh: Provide common CPU headers, prune the SH-2 and SH-2A directories.\n  sh/maple: clean maple bus code\n  sh: More header path fixups for mach dir refactoring.\n  sh: Move out the solution engine headers to arch/sh/include/mach-se/\n  sh: I2C fix for AP325RXA and Migo-R\n  sh: Shuffle the board directories in to mach groups.\n  sh: dma-sh: Fix up dreamcast dma.h mach path.\n  sh: Switch KBUILD_DEFCONFIG to shx3_defconfig.\n  sh: Add ARCH_DEFCONFIG entries for sh and sh64.\n  sh: Fix compile error of Solution Engine\n  sh: Proper __put_user_asm() size mismatch fix.\n  sh: Stub in a dummy ENTRY_OFFSET for uImage offset calculation.\n  ...\n"
    },
    {
      "commit": "57b1494d2ba544c62673234da6115c21fac27ffc",
      "tree": "34f91f3187805fa034f8e63966d471ba2498d148",
      "parents": [
        "9fe3b64be3dc8313e9fa87255f169c608d074cbd",
        "8978b74253280d59e97cf49a3ec2c0cbccd5b801"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:28:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:28:17 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  generic, x86: fix add iommu_num_pages helper function\n  x86: remove stray \u003c6\u003e in BogoMIPS printk\n  x86: move dma32_reserve_bootmem() after reserve_crashkernel()\n"
    },
    {
      "commit": "8d66bf5481002b0960aa49aed0987c73f5d7816c",
      "tree": "7beac720e1df882a1cd4d6d09e6ac25ddd04b399",
      "parents": [
        "d5686b444ff3f72808d2b3fbd58672a86cdf38e7"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 09:05:54 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:32 2008 -0400"
      },
      "message": "[PATCH] pass struct path * to do_add_mount()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "77e69dac3cefacee939cb107ae9cd520a62338e0",
      "tree": "02ddee5ac85ceb632eab2aff994ffbd3233e51eb",
      "parents": [
        "1b7e190b4764ea3ca1080404dd593eae5230d2b3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 04:29:18 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:25 2008 -0400"
      },
      "message": "[PATCH] fix races and leaks in vfs_quota_on() users\n\n* new helper: vfs_quota_on_path(); equivalent of vfs_quota_on() sans the\n  pathname resolution.\n* callers of vfs_quota_on() that do their own pathname resolution and\n  checks based on it are switched to vfs_quota_on_path(); that way we\n  avoid the races.\n* reiserfs leaked dentry/vfsmount references on several failure exits.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1027abe8827b47f7e9c4ed6514fde3d44f79963c",
      "tree": "be6aba7e46176534cc71622de53a8bcbf28a06c4",
      "parents": [
        "a1bc6eb4b499ae67ada9a01660010580b6569403"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jul 30 04:13:04 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Aug 01 11:25:23 2008 -0400"
      },
      "message": "[PATCH] merge locate_fd() and get_unused_fd()\n\n\tNew primitive: alloc_fd(start, flags).  get_unused_fd() and\nget_unused_fd_flags() become wrappers on top of it.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a4b526b3ba6353cd89a38e41da48ed83b0ead16f",
      "tree": "362842354bdcde59feede51cbeefc9b8833aacf7",
      "parents": [
        "934b2857cc576ae53c92a66e63fce7ddcfa74691"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:12 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:30 2008 +0200"
      },
      "message": "[S390] Optimize storage key operations for anon pages\n\nFor anonymous pages without a swap cache backing the check in\npage_remove_rmap for the physical dirty bit in page_remove_rmap is\nunnecessary. The instructions that are used to check and reset the dirty\nbit are expensive. Removing the check noticably speeds up process exit.\nIn addition the clearing of the dirty bit in __SetPageUptodate is\npointless as well. With these two changes there is no storage key\noperation for an anonymous page anymore if it does not hit the swap\nspace.\n\nThe micro benchmark which repeatedly executes an empty shell script\ngets about 5% faster.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4a7b61d23505854dff7d04cc11944566cffdd0ee",
      "tree": "9781004b3b7ce3f1e0da150ed376a1e3c485c670",
      "parents": [
        "8a9204db665365354b349ed5b0bc054f0433a2a4"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Jul 31 20:52:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 20:52:08 2008 -0700"
      },
      "message": "skbuff: add missing kernel-doc for do_not_encrypt\n\nAdd missing kernel-doc notation to sk_buff:\n\nWarning(linux-2.6.27-rc1-git2//include/linux/skbuff.h:345): No description found for parameter \u0027do_not_encrypt\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc4768eb081a67642c0c44c34ea597c273bdedcb",
      "tree": "908712225413cacafdea5bdf3b33072d7c616355",
      "parents": [
        "c3f26a269c2421f97f10cf8ed05d5099b573af4d"
      ],
      "author": {
        "name": "Julius Volz",
        "email": "juliusv@google.com",
        "time": "Thu Jul 31 20:45:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 20:45:24 2008 -0700"
      },
      "message": "ipvs: Move userspace definitions to include/linux/ip_vs.h\n\nCurrent versions of ipvsadm include \"/usr/src/linux/include/net/ip_vs.h\"\ndirectly. This file also contains kernel-only definitions. Normally, public\ndefinitions should live in include/linux, so this patch moves the\ndefinitions shared with userspace to a new file, \"include/linux/ip_vs.h\".\n\nThis also removes the unused NFC_IPVS_PROPERTY bitmask, which was once\nused to point into skb-\u003enfcache.\n\nTo make old ipvsadms still compile with this, the old header file includes\nthe new one.\n\nThanks to Dave Miller and Horms for noting/adding the missing Kbuild entry\nfor the new header file.\n\nSigned-off-by: Julius Volz \u003cjuliusv@google.com\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3f26a269c2421f97f10cf8ed05d5099b573af4d",
      "tree": "d0602cbb48742b3e39ab6bdcaa08c342d4cd2cae",
      "parents": [
        "967ab999a090b1a4e7d3c7febfd6d89b42fb4cf4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 16:58:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 16:58:50 2008 -0700"
      },
      "message": "netdev: Fix lockdep warnings in multiqueue configurations.\n\nWhen support for multiple TX queues were added, the\nnetif_tx_lock() routines we converted to iterate over\nall TX queues and grab each queue\u0027s spinlock.\n\nThis causes heartburn for lockdep and it\u0027s not a healthy\nthing to do with lots of TX queues anyways.\n\nSo modify this to use a top-level lock and a \"frozen\"\nstate for the individual TX queues.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ecb3d28c7edd58b54f16838c434b342ba9195bec",
      "tree": "2babdc068dde924a905b0b25e673be0ca7a7dccd",
      "parents": [
        "70526b67443a980d5029d9cf06903bef731a4e96"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Jun 18 19:29:05 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Thu Jul 31 16:21:13 2008 -0700"
      },
      "message": "[PATCH] configfs: Convenience macros for attribute definition.\n\nSysfs has the _ATTR() and _ATTR_RO() macros to make defining extended\nform attributes easier.  configfs should have something similiar.\n\n- _CONFIGFS_ATTR() and _CONFIGFS_ATTR_RO() are the counterparts to the\n  sysfs macros.\n- CONFIGFS_ATTR_STRUCT() creates the extended form attribute structure.\n- CONFIGFS_ATTR_OPS() defines the show_attribute()/store_attribute()\n  operations that call the show()/store() operations of the extended\n  form configfs_attributes.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "dacdd0e04768da1fd2b24a6ee274c582b40d0c5b",
      "tree": "45b559bb14e9f968943bbc98b23b1489823898e0",
      "parents": [
        "94ad374a0751f40d25e22e036c37f7263569d24c"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 17 16:54:19 2008 -0700"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Thu Jul 31 16:21:12 2008 -0700"
      },
      "message": "[PATCH] configfs: Include linux/err.h in linux/configfs.h\n\nWe now use PTR_ERR() in the -\u003emake_item() and -\u003emake_group() operations.\nFolks including configfs.h need err.h.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "ae375044d31075a31de5a839e07ded7f67b660aa",
      "tree": "13f49a97aa48fa8f19cbe7055e0b5e4df3abc462",
      "parents": [
        "a97a6f10771b90235b33c13a6db9279237a08422"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jul 31 00:38:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 00:38:01 2008 -0700"
      },
      "message": "netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged\n\nIn order to time out dead connections quicker, keep track of outstanding data\nand cap the timeout.\n\nSuggested by Herbert Xu.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "963e4975c6f93c148ca809d986d412201df9af89",
      "tree": "41cb6ec55e48a2186dbe4c13531fd05439efbade",
      "parents": [
        "1f938d060a7bc01b5f82d46db3e38cd501b445a6"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jul 24 17:16:06 2008 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Jul 31 02:04:50 2008 -0400"
      },
      "message": "pata_it821x: Driver updates and reworking\n\n- Add support for the RDC 1010 variant\n- Rework the core library to have a read_id method. This allows the hacky\n  bits of it821x to go and prepares us for pata_hd\n- Switch from WARN to BUG in ata_id_string as it will reboot if you get\n  it wrong so WARN won\u0027t be seen\n- Allow the issue of command 0xFC on the 821x. This is needed to query\n  rebuild status.\n- Tidy up printk formatting\n- Do more ident rewriting on RAID volumes to handle firmware provided\n  ident data which is rather wonky\n- Report the firmware revision and device layout in RAID mode\n- Don\u0027t try and disable raid on the 8211 or RDC - they don\u0027t have the\n  relevant bits\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "1f938d060a7bc01b5f82d46db3e38cd501b445a6",
      "tree": "f88f748671ac616742b41f202b4f56da1e577423",
      "parents": [
        "487eff68e42287fd45cf178063f1ce1bad23c612"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Mon Jul 21 00:06:19 2008 +0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Jul 31 01:48:16 2008 -0400"
      },
      "message": "libata.h: replace __FUNCTION__ with __func__\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "660fc1f4d88b0f5e4bb936e4a5a9b95b70df9e58",
      "tree": "a5b5de254f9b4378d77171e2a5d6496ec8e3e3f5",
      "parents": [
        "3dd730f2b49f101b90d283c3efc4e6cd826dd8f6",
        "ce0ad7f0952581ba75ab6aee55bb1ed9bb22cf4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:43:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:43:56 2008 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc/mm: Lockless get_user_pages_fast() for 64-bit (v3)\n  powerpc: Don\u0027t use the wrong thread_struct for ptrace get/set VSX regs\n  powerpc: Fix ptrace buffer size for VSX\n  powerpc: Correctly hookup PTRACE_GET/SETVSRREGS for 32 bit processes\n  ide/powermac: Fix use of uninitialized pointer on media-bay\n  powerpc: Allow non-hcall return values for lparcfg writes\n  ipmi/powerpc: Use linux/of_{device,platform}.h instead of asm\n  powerpc/fsl: proliferate simple-bus compatibility to soc nodes\n  Documentation: remove old sbc8260 board specific information\n  cpm2: Rework baud rate generators configuration to support external clocks.\n  powerpc: rtc_cmos_setup: assign interrupts only if there is i8259 PIC\n  cpm_uart: Add generic clock API support to set baudrates\n  cpm_uart: Modem control lines support\n  powerpc: implement GPIO LIB API on CPM1 Freescale SoC.\n  cpm2: Implement GPIO LIB API on CPM2 Freescale SoC.\n  powerpc: Fix 8xx build failure\n  powerpc: clean up the Book-E HW watchpoint support\n"
    },
    {
      "commit": "3dd730f2b49f101b90d283c3efc4e6cd826dd8f6",
      "tree": "040c55f93a1d3fbbd85e2e81319d8f259f71c55f",
      "parents": [
        "a4319d9fa02fb3f032596d18c6fcc8b05d01a3a5"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Jul 29 16:07:37 2008 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:35:49 2008 -0700"
      },
      "message": "cpumask: statement expressions confuse some versions of gcc\n\nwhen you take the address of the result.  Noticed on a sparc64 compile\nusing a version 3.4.5 cross compiler.\n\n kernel/time/tick-common.c: In function `tick_check_new_device\u0027:\n kernel/time/tick-common.c:210: error: invalid lvalue in unary `\u0026\u0027\n ...\n\nJust make it a regular expression.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4319d9fa02fb3f032596d18c6fcc8b05d01a3a5",
      "tree": "55bfcb36dcaf1935d1877810a79e398b34e46014",
      "parents": [
        "afd962a9e8708c571c5c0c4a6d098f931742c229",
        "031cf19e6f63941506c9baf76ac7adac06edcf08"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:13:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 10:13:37 2008 -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: (47 commits)\n  net: Make \"networking\" one-click deselectable.\n  ipv6: Fix useless proc net sockstat6 removal\n  tcp: MD5: Use MIB counter instead of warning for MD5 mismatch.\n  pkt_sched: Fix OOPS on ingress qdisc add.\n  niu: Fix error checking in niu_ethflow_to_class.\n  IPv6: datagram_send_ctl() should exit immediately when an error occured\n  mac80211: fix mesh beaconing\n  PS3: gelic: use unsigned long for irqflags\n  mac80211: fix cfg80211 hooks for master interface\n  nl80211: fix dump callbacks\n  mac80211: partially fix skb-\u003ecb use\n  rtl8187: Improve wireless statistics for RTL8187B\n  rtl8187: Fix for TX sequence number problem\n  mac80211: append CONFIG_ to MAC80211_VERBOSE_PS_DEBUG in net/mac80211/tx.c.\n  mac80211: fix sparse integer as NULL pointer warning\n  drivers/net/wireless/iwlwifi/iwl-led.c: printk fix\n  mac80211: return correct error return from ieee80211_wep_init\n  mac80211: tx, use dev_kfree_skb_any for beacon_get\n  rt2x00: Clear queue entry flags during initialization\n  rt2x00: Force full register config after start()\n  ...\n"
    },
    {
      "commit": "c627f9cc046c7cd93b4525d89377fb409e170a18",
      "tree": "851913d2ebd2946b577592fb410f750e6fdc943b",
      "parents": [
        "f718cd4add5aea9d379faff92f162571e356cc5f"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Jul 29 22:33:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:47 2008 -0700"
      },
      "message": "mm: add zap_vma_ptes(): a library function to unmap driver ptes\n\nzap_vma_ptes() is intended to be used by drivers to unmap ptes assigned to the\ndriver private vmas.  This interface is similar to zap_page_range() but is\nless general \u0026 less likely to be abused.\n\nNeeded by the GRU driver.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "204b885e7322656284626949e51f292fe61313fa",
      "tree": "8cf2371c6f4892ae2ffef5d448698f99c5d71777",
      "parents": [
        "87547ee95d81ec0ee1503fcaf9c9594469bc2510"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joerg.roedel@amd.com",
        "time": "Tue Jul 29 22:33:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:46 2008 -0700"
      },
      "message": "introduce lower_32_bits() macro\n\nThe file kernel.h contains the upper_32_bits macro.  This patch adds the\nother part, the lower_32_bits macro.  Its first use will be in the driver\nfor AMD IOMMU.\n\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c203003f64de5fe55ae35712942100d270667fa",
      "tree": "e15e01f1b4c02820f0ecae49e3f874221912a4b5",
      "parents": [
        "3f1712bac586069d6c891a8201457283b27e8abe"
      ],
      "author": {
        "name": "Jerome Arbez-Gindre",
        "email": "jeromearbezgindre@gmail.com",
        "time": "Tue Jul 29 22:33:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:45 2008 -0700"
      },
      "message": "connector: add a BlackBoard user to connector\n\nAdd a BlackBoard user to connector.  BlackBoard is part of the TSP GPL\nsampling framework (http://savannah.nongnu.org/p/tsp)\n\n[akpm@linux-foundation.org: add comment]\nSigned-off-by: Jerome Arbez-Gindre \u003cjeromearbezgindre@gmail.com\u003e\nAcked-by: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f1712bac586069d6c891a8201457283b27e8abe",
      "tree": "95f5b83236a5ae8bcb714fe0e756ab26e9722bc9",
      "parents": [
        "c389d27b5e643d745f55ffb939b1426060ba63d4"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Tue Jul 29 22:33:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:45 2008 -0700"
      },
      "message": "print_ip_sym(): use %pS\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d1958f05095a7e9ecbba86235122784a3d1b561",
      "tree": "9c0621d0f689c4711d5de2e770140698366b14aa",
      "parents": [
        "3971e1a917548977cff71418a7c3575ffbc9571f"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Jul 29 22:33:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:44 2008 -0700"
      },
      "message": "mm: remove find_max_pfn_with_active_regions\n\nIt has no user now\n\nAlso print out info about adding/removing active regions.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1531acd43310a7e4571d52e8846640667f4c74b",
      "tree": "ccb0a733180644ec8856219711e6119fd05d4737",
      "parents": [
        "1a4e564b7db999fbe5d88318c96ac8747699d417"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Tue Jul 29 22:32:58 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:43 2008 -0700"
      },
      "message": "cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called already\n\nIngo Molnar provided a fix to not call _PPC at processor driver\ninitialization time in \"[PATCH] ACPI: fix cpufreq regression\" (git\ncommit e4233dec749a3519069d9390561b5636a75c7579)\n\nBut it can still happen that _PPC is called at processor driver\ninitialization time.\n\nThis patch should make sure that this is not possible anymore.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1a4e564b7db999fbe5d88318c96ac8747699d417",
      "tree": "6451a0bd33533f7a214faa205ad174978458781e",
      "parents": [
        "e958d3ace7791f33518f0259cd3cf229408b135c"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Tue Jul 29 22:32:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:43 2008 -0700"
      },
      "message": "resource: add resource_size()\n\nAvoid one-off errors by introducing a resource_size() function.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95b1bc20532c18e3f19cd460c8350350c84ffbb2",
      "tree": "0ec3aef3787c979f1425184e51a157e5e351cdf3",
      "parents": [
        "771999b65f79264acde4b855e5d35696eca5e80c"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Tue Jul 29 22:28:12 2008 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Jul 30 14:21:05 2008 +0100"
      },
      "message": "[MTD] MTD_DEBUG always does compile-time typechecks\n\nThe current style for debug messages is to ensure they\u0027re always\nparsed by the compiler and then subjected to dead code removal.\nThat way builds won\u0027t break only when debug options get enabled,\nwhich is common when they are stripped out early by CPP.\n\nThis patch makes CONFIG_MTD_DEBUG adopt that convention.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "96d8b647cfff90c8ff07863866aacdcd9d13cead",
      "tree": "2ab2043e692f1cc03d84380d3e5ea820ec95dc6a",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Alexey Korolev",
        "email": "akorolev@infradead.org",
        "time": "Tue Jul 29 13:54:11 2008 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Wed Jul 30 11:59:24 2008 +0100"
      },
      "message": "[MTD] [NAND] fix subpage read for small page NAND\n\nCurrent implementation of subpage read feature for NAND has issues with\nsmall page devices. Small page NAND do not support RNDOUT command.\nSo subpage feature is not applicable for them.\n\nThis patch disables support of subpage for small page NAND.\nThe code is verified on nandsim(SP NAND simulation) and on LP NAND\ndevices.\n\nThanks a lot to Artem for finding this issue.\n\nSigned-off-by: Alexey Korolev \u003cakorolev@infradead.org\u003e\nSigned-off-by: Artem Bityutskiy \u003cArtem.Bityutskiy@nokia.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "785957d3e8c6fb37b18bf671923a76dbd8240025",
      "tree": "59f089e4bd109ad9d896c6e6a0f1699f42a34136",
      "parents": [
        "8d50b53d66a8a6ae41bafbdcabe401467803f33a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:03:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:27:25 2008 -0700"
      },
      "message": "tcp: MD5: Use MIB counter instead of warning for MD5 mismatch.\n\nFrom a report by Matti Aarnio, and preliminary patch by Adam Langley.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0eb5d5ab3ec99bfd22ff16797d95835369ffb25b",
      "tree": "38f384a106bcfa8e92e37bf5459e755bc8a9c15b",
      "parents": [
        "e53e86c7ae123b11c269b0835c04e1b42ca4baed"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "philipp.zabel@gmail.com",
        "time": "Fri Jul 11 17:28:06 2008 +0200"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:23 2008 +0100"
      },
      "message": "regulator: TI bq24022 Li-Ion Charger driver\n\nThis adds a regulator driver for the TI bq24022 Single-Chip\nLi-Ion Charger with its nCE and ISET2 pins connected to GPIOs.\n\nSigned-off-by: Philipp Zabel \u003cphilipp.zabel@gmail.com\u003e\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "48d335ba3164ce99cb8847513d0e3b6ee604eb20",
      "tree": "5b1c547c2b18d4c4ef73f60102ed06cb76e6a166",
      "parents": [
        "4c1184e85cb381121a5273ea20ad31ca3faa0a4f"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:50:21 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:21 2008 +0100"
      },
      "message": "regulator: fixed regulator interface\n\nThis patch adds support for fixed regulators. This class of regulator is\nnot software controllable but can coexist on machines with software\ncontrolable regulators.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "4c1184e85cb381121a5273ea20ad31ca3faa0a4f",
      "tree": "957a0edd71c836f6704a4a68a4916a0579ec1bc4",
      "parents": [
        "571a354b1542a274d88617e1f6703f3fe7a517f1"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:46:09 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:21 2008 +0100"
      },
      "message": "regulator: machine driver interface\n\nThis interface is for machine specific code and allows the creation of\nvoltage/current domains (with constraints) for each regulator. It can\nprovide regulator constraints that will prevent device damage through\novervoltage or over current caused by buggy client drivers. It also\nallows the creation of a regulator tree whereby some regulators are\nsupplied by others (similar to a clock tree).\n\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Philipp Zabel \u003cphilipp.zabel@gmail.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "571a354b1542a274d88617e1f6703f3fe7a517f1",
      "tree": "efa2f1f1c6b2ab8c176cf30d3806bc34f159e1b7",
      "parents": [
        "e2ce4eaa76214f65a3f328ec5b45c30248115768"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:42:28 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:20 2008 +0100"
      },
      "message": "regulator: regulator driver interface\n\nThis allows regulator drivers to register their regulators and provide\noperations to the core. It also has a notifier call chain for propagating\nregulator events to clients.\n\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "e2ce4eaa76214f65a3f328ec5b45c30248115768",
      "tree": "ec90170e0b26ebecfa94b1f0416d8c5f2c27efba",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Apr 30 15:10:07 2008 +0100"
      },
      "committer": {
        "name": "Liam Girdwood",
        "email": "lg@opensource.wolfsonmicro.com",
        "time": "Wed Jul 30 10:10:20 2008 +0100"
      },
      "message": "regulator: consumer device interface\n\nAdd support to allow consumer device drivers to control their regulator\npower supply.\n\nThis uses a similar API to the kernel clock interface in that consumer\ndrivers can get and put a regulator (like they can with clocks atm) and\nget/set voltage, current limit, mode, enable and disable. This should\nallow consumers complete control over their supply voltage and current\nlimit. This also compiles out if not in use so drivers can be reused in\nsystems with no regulator based power control.\n\nSigned-off-by: Liam Girdwood \u003clg@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\n"
    },
    {
      "commit": "ce0ad7f0952581ba75ab6aee55bb1ed9bb22cf4f",
      "tree": "bf2a8845a031cb685219db2ddcb3d296b4a9ffab",
      "parents": [
        "7d2a175b9bf6e9422bebe95130a3c79a25ff4602"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Jul 30 15:23:13 2008 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 30 15:26:54 2008 +1000"
      },
      "message": "powerpc/mm: Lockless get_user_pages_fast() for 64-bit (v3)\n\nImplement lockless get_user_pages_fast for 64-bit powerpc.\n\nPage table existence is guaranteed with RCU, and speculative page references\nare used to take a reference to the pages without having a prior existence\nguarantee on them.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "e93dc4891df93d7efa59d861fdcbb529a1819343",
      "tree": "545d95bc78c76d44b22bf2590c033311f44c0616",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298",
        "56a6d13dfd49d90d72a1a962246206719dd9d143"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 29 21:51:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 29 21:51:00 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "9fec6060d9e48ed7db0dac0e16d0f0f0e615b7f6",
      "tree": "74b41f31a08f6500ff3dfcf64ba21e2d9a8e87e5",
      "parents": [
        "fece418418f51e92dd7e67e17c5e3fe5a28d3279",
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "cbouatmailru@gmail.com",
        "time": "Wed Jul 30 02:05:23 2008 +0400"
      },
      "committer": {
        "name": "Anton Vorontsov",
        "email": "cbouatmailru@gmail.com",
        "time": "Wed Jul 30 02:05:23 2008 +0400"
      },
      "message": "Merge branch \u0027master\u0027 of /home/cbou/linux-2.6\n\nConflicts:\n\n\tdrivers/power/Kconfig\n\tdrivers/power/Makefile\n"
    },
    {
      "commit": "d0f09804144fd9471a13cf4d80e66842c7fa114f",
      "tree": "4a1f0f78bad7e5be4ad400397a19d4b8d6fbbdcd",
      "parents": [
        "0ccd58fc03f40529f66190b1a41e92a732d2bda8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 29 11:32:07 2008 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 29 16:55:08 2008 -0400"
      },
      "message": "mac80211: partially fix skb-\u003ecb use\n\nThis patch fixes mac80211 to not use the skb-\u003ecb over the queue step\nfrom virtual interfaces to the master. The patch also, for now,\ndisables aggregation because that would still require requeuing,\nwill fix that in a separate patch. There are two other places (software\nrequeue and powersaving stations) where requeue can happen, but that is\nnot currently used by any drivers/not possible to use respectively.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f1b23361a0f15497d4c6795a2935b2e98064ddfb",
      "tree": "78c3b671562de9180e9e7d385a2f851e5fe67aa1",
      "parents": [
        "37f55e9d78d1b63047b1b7ae175cdce650547ba8"
      ],
      "author": {
        "name": "Henrique de Moraes Holschuh",
        "email": "hmh@hmh.eng.br",
        "time": "Mon Jul 21 21:18:19 2008 -0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 29 16:36:33 2008 -0400"
      },
      "message": "rfkill: document the rfkill struct locking (v2)\n\nReorder fields in struct rfkill and add comments to make it clear\nwhich fields are protected by rfkill-\u003emutex.\n\nSigned-off-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nAcked-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1795cf48b322b4d19230a40dbe7181acedd34a94",
      "tree": "5d1426c12687f1c80cb648da2f105714c9819001",
      "parents": [
        "0764bff445bb13cd17e41b6ab196ef83c23c6c17"
      ],
      "author": {
        "name": "Adrian McMenamin",
        "email": "adrian@mcmen.demon.co.uk",
        "time": "Tue Jul 29 22:10:56 2008 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Jul 29 22:10:56 2008 +0900"
      },
      "message": "sh/maple: clean maple bus code\n\nThis patch cleans up the handling of the maple bus queue to remove\nthe risk of races when adding packets. It also removes references to the\nredundant connect and disconnect functions.\n\nSigned-off-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "8978b74253280d59e97cf49a3ec2c0cbccd5b801",
      "tree": "7cecd6951437f01f541178c1afc14d4e1d2e2b23",
      "parents": [
        "35780c8ea7ad5c6d5483244d5f5bf37176fda86a"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Tue Jul 29 13:38:53 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 12:12:48 2008 +0200"
      },
      "message": "generic, x86: fix add iommu_num_pages helper function\n\nThis IOMMU helper function doesn\u0027t work for some architectures:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d121699304403202\u0026w\u003d2\n\nIt also breaks POWER and SPARC builds:\n\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d121730388001890\u0026w\u003d2\n\nCurrently, only x86 IOMMUs use this so let\u0027s move it to x86 for\nnow.\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ed8486243379ef3e6c61363df915882945c0eaec",
      "tree": "5504b545fc236d192be34a4a68de7b74c64f70e9",
      "parents": [
        "e930bffe95e1e886a1ede80726ea38df5838d067"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 11:30:57 2008 +0300"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 12:34:02 2008 +0300"
      },
      "message": "KVM: Advertise synchronized mmu support to userspace\n\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "e930bffe95e1e886a1ede80726ea38df5838d067",
      "tree": "d39227c3de8e7d4a70737c78693f6d7f458066af",
      "parents": [
        "604b38ac0369bd50fcbb33344aa5553c071009f7"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Fri Jul 25 16:24:52 2008 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Jul 29 12:33:53 2008 +0300"
      },
      "message": "KVM: Synchronize guest physical memory map to host virtual memory map\n\nSynchronize changes to host virtual addresses which are part of\na KVM memory slot to the KVM shadow mmu.  This allows pte operations\nlike swapping, page migration, and madvise() to transparently work\nwith KVM.\n\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\n"
    },
    {
      "commit": "5dfb66ba8c4a96eb732942c9f78629e4db1a51d4",
      "tree": "d443adb4d02ac2599baf402698a589a9b814e478",
      "parents": [
        "1d9b9f6a53d77ed801ba875f937d6dabbfc381ce",
        "424f525a1241351da947fb48a938128ddd774511"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:15:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:15:41 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.o-hand.com/linux-mfd\n\n* \u0027for-linus\u0027 of git://git.o-hand.com/linux-mfd:\n  mfd: accept pure device as a parent, not only platform_device\n  mfd: add platform_data to mfd_cell\n  mfd: Coding style fixes\n  mfd: Use to_platform_device instead of container_of\n"
    },
    {
      "commit": "1d9b9f6a53d77ed801ba875f937d6dabbfc381ce",
      "tree": "36ea93b80a444c3b37111e352790ebc07f29379f",
      "parents": [
        "a3ad7f128c637b7612ebeacb1f85fec933bb1195",
        "12c0b20fa4afb5c8a377d6987fb2dcf353e1dce1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:14:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 18:14:24 2008 -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: (21 commits)\n  x86/PCI: use dev_printk when possible\n  PCI: add D3 power state avoidance quirk\n  PCI: fix bogus \"\u0027device\u0027 may be used uninitialized\" warning in pci_slot\n  PCI: add an option to allow ASPM enabled forcibly\n  PCI: disable ASPM on pre-1.1 PCIe devices\n  PCI: disable ASPM per ACPI FADT setting\n  PCI MSI: Don\u0027t disable MSIs if the mask bit isn\u0027t supported\n  PCI: handle 64-bit resources better on 32-bit machines\n  PCI: rewrite PCI BAR reading code\n  PCI: document pci_target_state\n  PCI hotplug: fix typo in pcie hotplug output\n  x86 gart: replace to_pages macro with iommu_num_pages\n  x86, AMD IOMMU: replace to_pages macro with iommu_num_pages\n  iommu: add iommu_num_pages helper function\n  dma-coherent: add documentation to new interfaces\n  Cris: convert to using generic dma-coherent mem allocator\n  Sh: use generic per-device coherent dma allocator\n  ARM: support generic per-device coherent dma mem\n  Generic dma-coherent: fix DMA_MEMORY_EXCLUSIVE\n  x86: use generic per-device dma coherent allocator\n  ...\n"
    },
    {
      "commit": "424f525a1241351da947fb48a938128ddd774511",
      "tree": "e837c0f6b15a3efe38bb0aa3db5a46305e5a9f38",
      "parents": [
        "56edb58be157a06dc147a988af3588059556d392"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Tue Jul 29 01:30:26 2008 +0200"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@openedhand.com",
        "time": "Tue Jul 29 01:30:26 2008 +0200"
      },
      "message": "mfd: accept pure device as a parent, not only platform_device\n\nSigned-off-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@openedhand.com\u003e\n"
    },
    {
      "commit": "8ab22b9abb5c55413802e4adc9aa6223324547c3",
      "tree": "cff3319e1275e8a7c083d492889ec6bd0c7712d3",
      "parents": [
        "d84a52f62f6a396ed77aa0052da74ca9e760b28a"
      ],
      "author": {
        "name": "Hisashi Hifumi",
        "email": "hifumi.hisashi@oss.ntt.co.jp",
        "time": "Mon Jul 28 15:46:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "vfs: pagecache usage optimization for pagesize!\u003dblocksize\n\nWhen we read some part of a file through pagecache, if there is a\npagecache of corresponding index but this page is not uptodate, read IO\nis issued and this page will be uptodate.\n\nI think this is good for pagesize \u003d\u003d blocksize environment but there is\nroom for improvement on pagesize !\u003d blocksize environment.  Because in\nthis case a page can have multiple buffers and even if a page is not\nuptodate, some buffers can be uptodate.\n\nSo I suggest that when all buffers which correspond to a part of a file\nthat we want to read are uptodate, use this pagecache and copy data from\nthis pagecache to user buffer even if a page is not uptodate.  This can\nreduce read IO and improve system throughput.\n\nI wrote a benchmark program and got result number with this program.\n\nThis benchmark do:\n\n  1: mount and open a test file.\n\n  2: create a 512MB file.\n\n  3: close a file and umount.\n\n  4: mount and again open a test file.\n\n  5: pwrite randomly 300000 times on a test file.  offset is aligned\n     by IO size(1024bytes).\n\n  6: measure time of preading randomly 100000 times on a test file.\n\nThe result was:\n\t2.6.26\n        330 sec\n\n\t2.6.26-patched\n        226 sec\n\nArch:i386\nFilesystem:ext3\nBlocksize:1024 bytes\nMemory: 1GB\n\nOn ext3/4, a file is written through buffer/block.  So random read/write\nmixed workloads or random read after random write workloads are optimized\nwith this patch under pagesize !\u003d blocksize environment.  This test result\nshowed this.\n\nThe benchmark program is as follows:\n\n#include \u003cstdio.h\u003e\n#include \u003csys/types.h\u003e\n#include \u003csys/stat.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003ctime.h\u003e\n#include \u003cstdlib.h\u003e\n#include \u003cstring.h\u003e\n#include \u003csys/mount.h\u003e\n\n#define LEN 1024\n#define LOOP 1024*512 /* 512MB */\n\nmain(void)\n{\n\tunsigned long i, offset, filesize;\n\tint fd;\n\tchar buf[LEN];\n\ttime_t t1, t2;\n\n\tif (mount(\"/dev/sda1\", \"/root/test1/\", \"ext3\", 0, 0) \u003c 0) {\n\t\tperror(\"cannot mount\\n\");\n\t\texit(1);\n\t}\n\tmemset(buf, 0, LEN);\n\tfd \u003d open(\"/root/test1/testfile\", O_CREAT|O_RDWR|O_TRUNC);\n\tif (fd \u003c 0) {\n\t\tperror(\"cannot open file\\n\");\n\t\texit(1);\n\t}\n\tfor (i \u003d 0; i \u003c LOOP; i++)\n\t\twrite(fd, buf, LEN);\n\tclose(fd);\n\tif (umount(\"/root/test1/\") \u003c 0) {\n\t\tperror(\"cannot umount\\n\");\n\t\texit(1);\n\t}\n\tif (mount(\"/dev/sda1\", \"/root/test1/\", \"ext3\", 0, 0) \u003c 0) {\n\t\tperror(\"cannot mount\\n\");\n\t\texit(1);\n\t}\n\tfd \u003d open(\"/root/test1/testfile\", O_RDWR);\n\tif (fd \u003c 0) {\n\t\tperror(\"cannot open file\\n\");\n\t\texit(1);\n\t}\n\n\tfilesize \u003d LEN * LOOP;\n\tfor (i \u003d 0; i \u003c 300000; i++){\n\t\toffset \u003d (random() % filesize) \u0026 (~(LEN - 1));\n\t\tpwrite(fd, buf, LEN, offset);\n\t}\n\tprintf(\"start test\\n\");\n\ttime(\u0026t1);\n\tfor (i \u003d 0; i \u003c 100000; i++){\n\t\toffset \u003d (random() % filesize) \u0026 (~(LEN - 1));\n\t\tpread(fd, buf, LEN, offset);\n\t}\n\ttime(\u0026t2);\n\tprintf(\"%ld sec\\n\", t2-t1);\n\tclose(fd);\n\tif (umount(\"/root/test1/\") \u003c 0) {\n\t\tperror(\"cannot umount\\n\");\n\t\texit(1);\n\t}\n}\n\nSigned-off-by: Hisashi Hifumi \u003chifumi.hisashi@oss.ntt.co.jp\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cddb8a5c14aa89810b40495d94d3d2a0faee6619",
      "tree": "d0b47b071f7d2dd1d6f9c36084aa8cfcef90d1da",
      "parents": [
        "7906d00cd1f687268f0a3599442d113767795ae6"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Mon Jul 28 15:46:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "mmu-notifiers: core\n\nWith KVM/GFP/XPMEM there isn\u0027t just the primary CPU MMU pointing to pages.\n There are secondary MMUs (with secondary sptes and secondary tlbs) too.\nsptes in the kvm case are shadow pagetables, but when I say spte in\nmmu-notifier context, I mean \"secondary pte\".  In GRU case there\u0027s no\nactual secondary pte and there\u0027s only a secondary tlb because the GRU\nsecondary MMU has no knowledge about sptes and every secondary tlb miss\nevent in the MMU always generates a page fault that has to be resolved by\nthe CPU (this is not the case of KVM where the a secondary tlb miss will\nwalk sptes in hardware and it will refill the secondary tlb transparently\nto software if the corresponding spte is present).  The same way\nzap_page_range has to invalidate the pte before freeing the page, the spte\n(and secondary tlb) must also be invalidated before any page is freed and\nreused.\n\nCurrently we take a page_count pin on every page mapped by sptes, but that\nmeans the pages can\u0027t be swapped whenever they\u0027re mapped by any spte\nbecause they\u0027re part of the guest working set.  Furthermore a spte unmap\nevent can immediately lead to a page to be freed when the pin is released\n(so requiring the same complex and relatively slow tlb_gather smp safe\nlogic we have in zap_page_range and that can be avoided completely if the\nspte unmap event doesn\u0027t require an unpin of the page previously mapped in\nthe secondary MMU).\n\nThe mmu notifiers allow kvm/GRU/XPMEM to attach to the tsk-\u003emm and know\nwhen the VM is swapping or freeing or doing anything on the primary MMU so\nthat the secondary MMU code can drop sptes before the pages are freed,\navoiding all page pinning and allowing 100% reliable swapping of guest\nphysical address space.  Furthermore it avoids the code that teardown the\nmappings of the secondary MMU, to implement a logic like tlb_gather in\nzap_page_range that would require many IPI to flush other cpu tlbs, for\neach fixed number of spte unmapped.\n\nTo make an example: if what happens on the primary MMU is a protection\ndowngrade (from writeable to wrprotect) the secondary MMU mappings will be\ninvalidated, and the next secondary-mmu-page-fault will call\nget_user_pages and trigger a do_wp_page through get_user_pages if it\ncalled get_user_pages with write\u003d1, and it\u0027ll re-establishing an updated\nspte or secondary-tlb-mapping on the copied page.  Or it will setup a\nreadonly spte or readonly tlb mapping if it\u0027s a guest-read, if it calls\nget_user_pages with write\u003d0.  This is just an example.\n\nThis allows to map any page pointed by any pte (and in turn visible in the\nprimary CPU MMU), into a secondary MMU (be it a pure tlb like GRU, or an\nfull MMU with both sptes and secondary-tlb like the shadow-pagetable layer\nwith kvm), or a remote DMA in software like XPMEM (hence needing of\nschedule in XPMEM code to send the invalidate to the remote node, while no\nneed to schedule in kvm/gru as it\u0027s an immediate event like invalidating\nprimary-mmu pte).\n\nAt least for KVM without this patch it\u0027s impossible to swap guests\nreliably.  And having this feature and removing the page pin allows\nseveral other optimizations that simplify life considerably.\n\nDependencies:\n\n1) mm_take_all_locks() to register the mmu notifier when the whole VM\n   isn\u0027t doing anything with \"mm\".  This allows mmu notifier users to keep\n   track if the VM is in the middle of the invalidate_range_begin/end\n   critical section with an atomic counter incraese in range_begin and\n   decreased in range_end.  No secondary MMU page fault is allowed to map\n   any spte or secondary tlb reference, while the VM is in the middle of\n   range_begin/end as any page returned by get_user_pages in that critical\n   section could later immediately be freed without any further\n   -\u003einvalidate_page notification (invalidate_range_begin/end works on\n   ranges and -\u003einvalidate_page isn\u0027t called immediately before freeing\n   the page).  To stop all page freeing and pagetable overwrites the\n   mmap_sem must be taken in write mode and all other anon_vma/i_mmap\n   locks must be taken too.\n\n2) It\u0027d be a waste to add branches in the VM if nobody could possibly\n   run KVM/GRU/XPMEM on the kernel, so mmu notifiers will only enabled if\n   CONFIG_KVM\u003dm/y.  In the current kernel kvm won\u0027t yet take advantage of\n   mmu notifiers, but this already allows to compile a KVM external module\n   against a kernel with mmu notifiers enabled and from the next pull from\n   kvm.git we\u0027ll start using them.  And GRU/XPMEM will also be able to\n   continue the development by enabling KVM\u003dm in their config, until they\n   submit all GRU/XPMEM GPLv2 code to the mainline kernel.  Then they can\n   also enable MMU_NOTIFIERS in the same way KVM does it (even if KVM\u003dn).\n   This guarantees nobody selects MMU_NOTIFIER\u003dy if KVM and GRU and XPMEM\n   are all \u003dn.\n\nThe mmu_notifier_register call can fail because mm_take_all_locks may be\ninterrupted by a signal and return -EINTR.  Because mmu_notifier_reigster\nis used when a driver startup, a failure can be gracefully handled.  Here\nan example of the change applied to kvm to register the mmu notifiers.\nUsually when a driver startups other allocations are required anyway and\n-ENOMEM failure paths exists already.\n\n struct  kvm *kvm_arch_create_vm(void)\n {\n        struct kvm *kvm \u003d kzalloc(sizeof(struct kvm), GFP_KERNEL);\n+       int err;\n\n        if (!kvm)\n                return ERR_PTR(-ENOMEM);\n\n        INIT_LIST_HEAD(\u0026kvm-\u003earch.active_mmu_pages);\n\n+       kvm-\u003earch.mmu_notifier.ops \u003d \u0026kvm_mmu_notifier_ops;\n+       err \u003d mmu_notifier_register(\u0026kvm-\u003earch.mmu_notifier, current-\u003emm);\n+       if (err) {\n+               kfree(kvm);\n+               return ERR_PTR(err);\n+       }\n+\n        return kvm;\n }\n\nmmu_notifier_unregister returns void and it\u0027s reliable.\n\nThe patch also adds a few needed but missing includes that would prevent\nkernel to compile after these changes on non-x86 archs (x86 didn\u0027t need\nthem by luck).\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix mm/filemap_xip.c build]\n[akpm@linux-foundation.org: fix mm/mmu_notifier.c build]\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kanoj Sarcar \u003ckanojsarcar@yahoo.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Izik Eidus \u003cizike@qumranet.com\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Rik van Riel \u003criel@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": "7906d00cd1f687268f0a3599442d113767795ae6",
      "tree": "63609454d164a088d7f535f826764579c0f297f6",
      "parents": [
        "6beeac76f5f96590fb751af5e138fbc3f62e8460"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Mon Jul 28 15:46:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:21 2008 -0700"
      },
      "message": "mmu-notifiers: add mm_take_all_locks() operation\n\nmm_take_all_locks holds off reclaim from an entire mm_struct.  This allows\nmmu notifiers to register into the mm at any time with the guarantee that\nno mmu operation is in progress on the mm.\n\nThis operation locks against the VM for all pte/vma/mm related operations\nthat could ever happen on a certain mm.  This includes vmtruncate,\ntry_to_unmap, and all page faults.\n\nThe caller must take the mmap_sem in write mode before calling\nmm_take_all_locks().  The caller isn\u0027t allowed to release the mmap_sem\nuntil mm_drop_all_locks() returns.\n\nmmap_sem in write mode is required in order to block all operations that\ncould modify pagetables and free pages without need of altering the vma\nlayout (for example populate_range() with nonlinear vmas).  It\u0027s also\nneeded in write mode to avoid new anon_vmas to be associated with existing\nvmas.\n\nA single task can\u0027t take more than one mm_take_all_locks() in a row or it\nwould deadlock.\n\nmm_take_all_locks() and mm_drop_all_locks are expensive operations that\nmay have to take thousand of locks.\n\nmm_take_all_locks() can fail if it\u0027s interrupted by signals.\n\nWhen mmu_notifier_register returns, we must be sure that the driver is\nnotified if some task is in the middle of a vmtruncate for the \u0027mm\u0027 where\nthe mmu notifier was registered (mmu_notifier_invalidate_range_start/end\nis run around the vmtruncation but mmu_notifier_register can run after\nmmu_notifier_invalidate_range_start and before\nmmu_notifier_invalidate_range_end).  Same problem for rmap paths.  And\nwe\u0027ve to remove page pinning to avoid replicating the tlb_gather logic\ninside KVM (and GRU doesn\u0027t work well with page pinning regardless of\nneeding tlb_gather), so without mm_take_all_locks when vmtruncate frees\nthe page, kvm would have no way to notice that it mapped into sptes a page\nthat is going into the freelist without a chance of any further\nmmu_notifier notification.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kanoj Sarcar \u003ckanojsarcar@yahoo.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Izik Eidus \u003cizike@qumranet.com\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Rik van Riel \u003criel@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": "6beeac76f5f96590fb751af5e138fbc3f62e8460",
      "tree": "530b768655b63893f019204fe4f9b8405db07ac2",
      "parents": [
        "93686ae8357c1b1e37e8dfc96547f807e7a93b4b"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@qumranet.com",
        "time": "Mon Jul 28 15:46:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 16:30:20 2008 -0700"
      },
      "message": "mmu-notifiers: add list_del_init_rcu()\n\nIntroduce list_del_init_rcu() and document it.\n\nSigned-off-by: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Kanoj Sarcar \u003ckanojsarcar@yahoo.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Izik Eidus \u003cizike@qumranet.com\u003e\nCc: Anthony Liguori \u003caliguori@us.ibm.com\u003e\nCc: Rik van Riel \u003criel@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": "56edb58be157a06dc147a988af3588059556d392",
      "tree": "3771389d15ef26bf40ac19f8abd0d39454dc6db6",
      "parents": [
        "7f71ac9374fec066e428892a68db158946cee1fb"
      ],
      "author": {
        "name": "Mike Rapoport",
        "email": "mike@compulab.co.il",
        "time": "Tue Jul 29 01:23:32 2008 +0200"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@openedhand.com",
        "time": "Tue Jul 29 01:23:32 2008 +0200"
      },
      "message": "mfd: add platform_data to mfd_cell\n\nAdding platform_data to mfd_cell allows passing of platform data directly\nto the platform_device created for each cell and thus reuse of existing\ndrivers.\nOn the other side it can be used as a hook to mfd_cell itself\nremoving the need in mfd_get_cell method.\n\nSigned-off-by: Mike Rapoport \u003cmike@compulab.co.il\u003e\nAcked-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@openedhand.com\u003e\n"
    },
    {
      "commit": "979b1791e5b8f8b556faeec4c48339e7ed63af9f",
      "tree": "30990937096bb25aa8349dae7285e70f268a767a",
      "parents": [
        "362b7077a5546b42131af15ba4776f30c9a72d0c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Thu Jul 24 17:18:38 2008 +0100"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 15:12:11 2008 -0700"
      },
      "message": "PCI: add D3 power state avoidance quirk\n\nLibata has some hacks to deal with certain controllers going silly in D3\nstate. The right way to handle this is to keep a PCI device flag for\nsuch devices. That can then be generalised for no ATA devices with power\nproblems.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "149e16372a2066c5474d8a8db9b252afd57eb427",
      "tree": "075a46f0672739fdab18d2f1e5f06080160de8b0",
      "parents": [
        "5fde244d39b88625ac578d83e6625138714de031"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Wed Jul 23 10:32:31 2008 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 14:56:57 2008 -0700"
      },
      "message": "PCI: disable ASPM on pre-1.1 PCIe devices\n\nDisable ASPM on pre-1.1 PCIe devices, as many of them don\u0027t implement it\ncorrectly.\n\nTested-by: Jack Howarth \u003chowarth@bromo.msbb.uc.edu\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "5fde244d39b88625ac578d83e6625138714de031",
      "tree": "e50762b22a94f7f7990c9dbab699a857da0982eb",
      "parents": [
        "ce6fce4295ba727b36fdc73040e444bd1aae64cd"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Wed Jul 23 10:32:24 2008 +0800"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 14:56:09 2008 -0700"
      },
      "message": "PCI: disable ASPM per ACPI FADT setting\n\nThe ACPI FADT table includes an ASPM control bit. If the bit is set, do\nnot enable ASPM since it may indicate that the platform doesn\u0027t actually\nsupport the feature.\n\nTested-by: Jack Howarth \u003chowarth@bromo.msbb.uc.edu\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "9e3ee1c39c0cc71222f9980ccbf87fe072897eef",
      "tree": "99462000e6f0d4f907cb2fc690f19d4d441ba0f3",
      "parents": [
        "e56b3bc7942982ac2589c942fb345e38bc7a341a",
        "f934fb19ef34730263e6afc01e8ec27a8a71470f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 23:32:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 23:32:00 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into cpus4096\n\nConflicts:\n\n\tkernel/stop_machine.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29111f579f4f3f2a07385f931854ab0527ae7ea5",
      "tree": "0271f20b0c954fa364be8627e0d6065544de0534",
      "parents": [
        "cc5499c3a607a392e8a7adb934aaf14b2c6a3519",
        "87e39ea5714dd59ba31e36c25833d2b20255a29d"
      ],
      "author": {
        "name": "Jesse Barnes",
        "email": "jbarnes@hobbes.lan",
        "time": "Mon Jul 28 14:31:10 2008 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Jul 28 14:31:10 2008 -0700"
      },
      "message": "Merge branch \u0027x86/iommu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip into for-linus\n"
    },
    {
      "commit": "e56b3bc7942982ac2589c942fb345e38bc7a341a",
      "tree": "8130492904f5bb9cff061f62ebb1c5d6eed3308b",
      "parents": [
        "414f746d232d41ed6ae8632c4495ae795373c44b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 11:32:33 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 22:20:41 2008 +0200"
      },
      "message": "cpu masks: optimize and clean up cpumask_of_cpu()\n\nClean up and optimize cpumask_of_cpu(), by sharing all the zero words.\n\nInstead of stupidly generating all possible i\u003d0...NR_CPUS 2^i patterns\ncreating a huge array of constant bitmasks, realize that the zero words\ncan be shared.\n\nIn other words, on a 64-bit architecture, we only ever need 64 of these\narrays - with a different bit set in one single world (with enough zero\nwords around it so that we can create any bitmask by just offsetting in\nthat big array). And then we just put enough zeroes around it that we\ncan point every single cpumask to be one of those things.\n\nSo when we have 4k CPU\u0027s, instead of having 4k arrays (of 4k bits each,\nwith one bit set in each array - 2MB memory total), we have exactly 64\narrays instead, each 8k bits in size (64kB total).\n\nAnd then we just point cpumask(n) to the right position (which we can\ncalculate dynamically). Once we have the right arrays, getting\n\"cpumask(n)\" ends up being:\n\n  static inline const cpumask_t *get_cpu_mask(unsigned int cpu)\n  {\n          const unsigned long *p \u003d cpu_bit_bitmap[1 + cpu % BITS_PER_LONG];\n          p -\u003d cpu / BITS_PER_LONG;\n          return (const cpumask_t *)p;\n  }\n\nThis brings other advantages and simplifications as well:\n\n - we are not wasting memory that is just filled with a single bit in\n   various different places\n\n - we don\u0027t need all those games to re-create the arrays in some dense\n   format, because they\u0027re already going to be dense enough.\n\nif we compile a kernel for up to 4k CPU\u0027s, \"wasting\" that 64kB of memory\nis a non-issue (especially since by doing this \"overlapping\" trick we\nprobably get better cache behaviour anyway).\n\n[ mingo@elte.hu:\n\n  Converted Linus\u0027s mails into a commit. See:\n\n     http://lkml.org/lkml/2008/7/27/156\n     http://lkml.org/lkml/2008/7/28/320\n\n  Also applied a family filter - which also has the side-effect of leaving\n  out the bits where Linus calls me an idio... Oh, never mind ;-)\n]\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "414f746d232d41ed6ae8632c4495ae795373c44b",
      "tree": "167f9bc8f139c6e82e6732b38c7a938b8a9d31cd",
      "parents": [
        "5a7a201c51c324876d00a54e7208af6af12d1ca4",
        "c9272c4f9fbe2087beb3392f526dc5b19efaa56b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 21:14:43 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 21:14:43 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into cpus4096\n"
    },
    {
      "commit": "f934fb19ef34730263e6afc01e8ec27a8a71470f",
      "tree": "6988fa3734adb98ab989657c56b7e31e94e723f8",
      "parents": [
        "3988ba0708e98b4bafc9034aa476775520bee708",
        "72d18a7b9e1a3a9511bae78fc7f0932ae01d5d73"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:59:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:59:26 2008 -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: add driver for Atmel integrated touchscreen controller\n  Input: ads7846 - optimize order of calculating Rt in ads7846_rx()\n  Input: ads7846 - fix sparse endian warnings\n  Input: uinput - remove duplicate include\n  Input: serio - offload resume to kseriod\n  Input: serio - mark serio_register_driver() __must_check\n"
    },
    {
      "commit": "7f71ac9374fec066e428892a68db158946cee1fb",
      "tree": "56c0ef9140380cfa0ecaff155c6f670f12f7733e",
      "parents": [
        "96ee41993b5b25ee0fbde2d4dcaac1f8c5ef5cc4"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Mon Jul 28 18:29:09 2008 +0200"
      },
      "committer": {
        "name": "Samuel Ortiz",
        "email": "sameo@openedhand.com",
        "time": "Mon Jul 28 18:29:09 2008 +0200"
      },
      "message": "mfd: Coding style fixes\n\nFix some coding style fixes in the mfd core driver.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: Samuel Ortiz \u003csameo@openedhand.com\u003e\n"
    },
    {
      "commit": "d9089c296bdd82e6c1b7f82d04c11b5decde75e7",
      "tree": "6c2a3b8bc1b6f8b5930f6a20b099511dd19aa4ba",
      "parents": [
        "bda426f5310ffddcd463fe20f352609e84989514",
        "00df438e89a9003895948170e1abf64dd4665872"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:05:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 09:05:35 2008 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (25 commits)\n  powerpc: Disable 64K hugetlb support when doing 64K SPU mappings\n  powerpc/powermac: Fixup default serial port device for pmac_zilog\n  powerpc/powermac: Use sane default baudrate for SCC debugging\n  powerpc/mm: Implement _PAGE_SPECIAL \u0026 pte_special() for 64-bit\n  powerpc: Show processor cache information in sysfs\n  powerpc: Make core id information available to userspace\n  powerpc: Make core sibling information available to userspace\n  powerpc/vio: More fallout from dma_mapping_error API change\n  ibmveth: Fix multiple errors with dma_mapping_error conversion\n  powerpc/pseries: Fix CMO sysdev attribute API change fallout\n  powerpc: Enable tracehook for the architecture\n  powerpc: Add TIF_NOTIFY_RESUME support for tracehook\n  powerpc: Add asm/syscall.h with the tracehook entry points\n  powerpc: Make syscall tracing use tracehook.h helpers\n  powerpc: Call tracehook_signal_handler() when setting up signal frames\n  powerpc: Update cpu_sibling_maps dynamically\n  powerpc: register_cpu_online should be __cpuinit\n  powerpc: kill useless SMT code in prom_hold_cpus\n  powerpc: Fix 8xx build failure\n  powerpc: Fix vio build warnings\n  ...\n"
    },
    {
      "commit": "b10a8b7238d7b034f28d32a85bb05c48475f132a",
      "tree": "8e70e816757c2a517de6fb721dd9ac2276619c26",
      "parents": [
        "37eaf8c7463e53cf1acf025fb566fb6c4573297f",
        "8b2224dc6a5b46cfa1d54ab1fe82107351c66443"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 08:41:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 08:41:13 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (72 commits)\n  sh: SuperH Mobile CEU and camera platform data for AP325RXA\n  sh: Update smc911x platform data for AP325RXA\n  sh: SuperH Mobile LCDC platform data for AP325RXA\n  sh: Add SuperH Mobile CEU platform data for Migo-R\n  sh: Add SuperH Mobile LCDC platform data for Migo-R\n  sh: Move asid_cache() out of ifdef to fix SH-3/4 nommu build.\n  sh: Workaround for __put_user_asm() bug with gcc 4.x on big-endian.\n  sh: Wire up new syscalls.\n  sh: fix uImage Entry Point\n  sh_keysc: remove request_mem_region() and release_mem_region()\n  sh: Don\u0027t miss pending signals returning to user mode after signal processing\n  sh: Use clk_always_enable() on sh7366\n  sh: Use clk_always_enable() on sh7343 / SE77343\n  sh: Use clk_always_enable() on sh7722 / Migo-R / SE7722\n  sh: Use clk_always_enable() on sh7723 / ap325rxa\n  sh: Introduce clk_always_enable() function\n  sh: Show all clocks and their state in /proc/clocks\n  sh: Merge sh7343 and sh7722 clock code\n  sh: Add SuperH Mobile MSTPCR bits to clock framework\n  sh: Use arch_flags to simplify sh7722 siu clock code\n  ...\n"
    },
    {
      "commit": "37eaf8c7463e53cf1acf025fb566fb6c4573297f",
      "tree": "9df7e9e3e7722d9ddf257e19fd8551425d27a292",
      "parents": [
        "58f250714f2bfa3514798fde8b9d38a15e4a9836",
        "784e2d76007f90d69341b95967160c4fb7829299"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 08:37:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 08:37:46 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  stop_machine: fix up ftrace.c\n  stop_machine: Wean existing callers off stop_machine_run()\n  stop_machine(): stop_machine_run() changed to use cpu mask\n  Hotplug CPU: don\u0027t check cpu_online after take_cpu_down\n  Simplify stop_machine\n  stop_machine: add ALL_CPUS option\n  module: fix build warning with !CONFIG_KALLSYMS\n"
    },
    {
      "commit": "306cfd630a4d121cf4e08b894d8b4c4cf106e57e",
      "tree": "1d89d99201c2a4f317c2bf4ae5fa391e45d2349f",
      "parents": [
        "4cec1a37ba7d9dce6ed5d8259b95272100a98b1f"
      ],
      "author": {
        "name": "Adrian McMenamin",
        "email": "adrian@newgolddream.dyndns.info",
        "time": "Sun Jun 15 20:48:09 2008 +0100"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Jul 28 18:10:30 2008 +0900"
      },
      "message": "maple: tidy maple_driver code by removing redundant connect/disconnect\n\nThe connect and disconnect functions are unnecessary - everything they do can be\naccomplished in the initial probe - so remove them.\n\nSigned-off-by: Adrian McMenamin \u003cadrian@mcmen.demon.co.uk\u003e\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "9403540c0653122ca34884a180439ddbfcbcb524",
      "tree": "40b5fb192900c61a1c91be6ae8ea7432b61f18aa",
      "parents": [
        "6a178100abf01282eb697ab62b6086b2886dfc00"
      ],
      "author": {
        "name": "Barry Naujok",
        "email": "bnaujok@sgi.com",
        "time": "Wed May 21 16:50:46 2008 +1000"
      },
      "committer": {
        "name": "Niv Sardi",
        "email": "xaiki@debian.org",
        "time": "Mon Jul 28 16:58:39 2008 +1000"
      },
      "message": "dcache: Add case-insensitive support d_ci_add() routine\n\nThis add a dcache entry to the dcache for lookup, but changing the name\nthat is associated with the entry rather than the one passed in to the\nlookup routine.\n\nFirst, it sees if the case-exact match already exists in the dcache and\nuses it if one exists. Otherwise, it allocates a new node with the new\nname and splices it into the dcache.\n\nOriginal code from ntfs_lookup in fs/ntfs/namei.c by Anton Altaparmakov.\n\nSigned-off-by: Barry Naujok \u003cbnaujok@sgi.com\u003e\nSigned-off-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "d65d830ca06040ffe6a35ce7cb06ee642ddbd6a8",
      "tree": "27cda8b58a24eb8b1acdc3c14f902b90ab3d9eb1",
      "parents": [
        "837b41b5de356aa67abb2cadb5eef3efc7776f91",
        "284b01897340974000bcc84de87a4e1becc8a83d"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Jul 28 16:30:40 2008 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Jul 28 16:30:40 2008 +1000"
      },
      "message": "Merge commit \u0027gcl/gcl-next\u0027\n"
    },
    {
      "commit": "eeec4fad963490821348a331cca6102ae1c4a7a3",
      "tree": "163a7d9414d719fccac096d1ba822416f705b397",
      "parents": [
        "04321587584272f4e8b9818f319f40caf8eeee13"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jul 28 12:16:30 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jul 28 12:16:30 2008 +1000"
      },
      "message": "stop_machine(): stop_machine_run() changed to use cpu mask\n\nInstead of a \"cpu\" arg with magic values NR_CPUS (any cpu) and ~0 (all\ncpus), pass a cpumask_t.  Allow NULL for the common case (where we\ndon\u0027t care which CPU the function is run on): temporary cpumask_t\u0027s\nare usually considered bad for stack space.\n\nThis deprecates stop_machine_run, to be removed soon when all the\ncallers are dead.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "ffdb5976c47609c862917d4c186ecbb5706d2dda",
      "tree": "7a8485260922290080094adc25f3cbebd4ad506b",
      "parents": [
        "5c2aed622571ac7c3c6ec182d6d3c318e4b45c8b"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jul 28 12:16:28 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jul 28 12:16:29 2008 +1000"
      },
      "message": "Simplify stop_machine\n\nstop_machine creates a kthread which creates kernel threads.  We can\ncreate those threads directly and simplify things a little.  Some care\nmust be taken with CPU hotunplug, which has special needs, but that code\nseems more robust than it was in the past.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\n"
    },
    {
      "commit": "5c2aed622571ac7c3c6ec182d6d3c318e4b45c8b",
      "tree": "0a3b422b16cd0725eebbe5047fd5482583279d8a",
      "parents": [
        "15bba37d62351749c3915add81f673b256952ee1"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 28 11:33:03 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jul 28 12:16:28 2008 +1000"
      },
      "message": "stop_machine: add ALL_CPUS option\n\n-allow stop_mahcine_run() to call a function on all cpus. Calling\n stop_machine_run() with a \u0027ALL_CPUS\u0027 invokes this new behavior.\n stop_machine_run() proceeds as normal until the calling cpu has\n invoked \u0027fn\u0027. Then, we tell all the other cpus to call \u0027fn\u0027.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCC: Adrian Bunk \u003cbunk@stusta.de\u003e\nCC: Andi Kleen \u003candi@firstfloor.org\u003e\nCC: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCC: Christoph Hellwig \u003chch@infradead.org\u003e\nCC: mingo@elte.hu\nCC: akpm@osdl.org\n"
    },
    {
      "commit": "c2f90e9536887fb76fb6a2aa239a70fc49beda10",
      "tree": "f87e6b29248c45a92ec6b4b8ffe675bb52e6104b",
      "parents": [
        "f3409f71a76838b1bc985f753eed787a3f17bc2c",
        "c9272c4f9fbe2087beb3392f526dc5b19efaa56b"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 22:23:18 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 22:23:18 2008 -0300"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "940389b8afad6495211614c13eb91ef7001773ec",
      "tree": "92c581cc9dc7a067899a6a28e382e4099dfe8ead",
      "parents": [
        "837b41b5de356aa67abb2cadb5eef3efc7776f91"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Mon Jul 28 00:48:12 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 16:12:28 2008 -0700"
      },
      "message": "task IO accounting: move all IO statistics in struct task_io_accounting\n\nSimplify the code of include/linux/task_io_accounting.h.\n\nIt is also more reasonable to have all the task i/o-related statistics in a\nsingle struct (task_io_accounting).\n\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb703027ac4ed563823e4d7824f68afed637d89a",
      "tree": "de35552440e7d2c7b74d0020c6a3cc1a8ed8b060",
      "parents": [
        "429e90893c9ad2c266d541c94d6ca69a34a7701d",
        "837b41b5de356aa67abb2cadb5eef3efc7776f91"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 18:11:53 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 18:11:53 2008 -0300"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "837b41b5de356aa67abb2cadb5eef3efc7776f91",
      "tree": "b63a9898c9a2b6563d8aec75c2abbec379898613",
      "parents": [
        "211c8d4942edf2f3337820dda101da6b13c8a19a",
        "f05e21b39f7dddcebab03ff329fef5783fea58d4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 10:24:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 10:24:06 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:\n  firewire: state userland requirements in Kconfig help\n  firewire: avoid memleak after phy config transmit failure\n  firewire: fw-ohci: TSB43AB22/A dualbuffer workaround\n  firewire: queue the right number of data\n  firewire: warn on unfinished transactions during card removal\n  firewire: small fw_fill_request cleanup\n  firewire: fully initialize fw_transaction before marking it pending\n  firewire: fix race of bus reset with request transmission\n"
    },
    {
      "commit": "5995477ab7f3522c497c9c4a1c55373e9d655574",
      "tree": "a147fb61642a7ac5441855964eb97a2ff1e37202",
      "parents": [
        "605ccb73f6a1c891a16268b3a2923208fc637958"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Sun Jul 27 17:29:15 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 09:58:20 2008 -0700"
      },
      "message": "task IO accounting: improve code readability\n\nPut all i/o statistics in struct proc_io_accounting and use inline functions to\ninitialize and increment statistics, removing a lot of single variable\nassignments.\n\nThis also reduces the kernel size as following (with CONFIG_TASK_XACCT\u003dy and\nCONFIG_TASK_IO_ACCOUNTING\u003dy).\n\n    text    data     bss     dec     hex filename\n   11651       0       0   11651    2d83 kernel/exit.o.before\n   11619       0       0   11619    2d63 kernel/exit.o.after\n   10886     132     136   11154    2b92 kernel/fork.o.before\n   10758     132     136   11026    2b12 kernel/fork.o.after\n\n 3082029  807968 4818600 8708597  84e1f5 vmlinux.o.before\n 3081869  807968 4818600 8708437  84e155 vmlinux.o.after\n\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "50cb993ea6cd187bfed085cb3e0747066edeb02f",
      "tree": "61edac62c6c5bc07c59e4369c50c6821ad77f2c0",
      "parents": [
        "445c2714cf72817ab1ad3ca894c6d9b2047b3a3e",
        "8be1a6d6c77ab4532e4476fdb8177030ef48b52c"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 12:25:57 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 12:25:57 2008 -0300"
      },
      "message": "Merge ../linux-2.6\n"
    },
    {
      "commit": "9fa0f6db3a201bef49f28e69f80802559a38586b",
      "tree": "858548b44a2f218a754b8b0506d1a75c1280732e",
      "parents": [
        "74b9ef21162fd81d9de87319c4373f523e2869cd"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 08:55:17 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 12:24:02 2008 -0300"
      },
      "message": "V4L/DVB (8522): videodev2: Fix merge conflict\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "c1d7f4f1648cb8efd87f1b9560c40af2297e7c05",
      "tree": "1021b2e3b1e53bfa61fd0562d3ceda225a006692",
      "parents": [
        "0ea6bc8d43c9ee3c5384bea184eab020927a5b2c"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Sat Jul 26 08:33:47 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 11:07:12 2008 -0300"
      },
      "message": "V4L/DVB (8524): videodev: copy the VID_TYPE defines to videodev.h\n\nThe VID_TYPE defines are V4L1 specific, so copy them back to videodev.h.\nIn videodev2.h ensure that they are not used in the kernel (you need\nto include videodev.h instead) and mark them are deprecated.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "1250ac6d4ab716dafe0ac245fd31cd3a7cbc0a98",
      "tree": "7fa259d8d414566ddc80bc5cba6627d7e946cd28",
      "parents": [
        "496cd7e977c73df2c287eaf6d612fc49d6f83dd7"
      ],
      "author": {
        "name": "Jean-Francois Moine",
        "email": "moinejf@free.fr",
        "time": "Sat Jul 26 08:02:47 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 11:06:42 2008 -0300"
      },
      "message": "V4L/DVB (8518): gspca: Remove the remaining frame decoding functions from the subdrivers.\n\nSPCA505 and SPCA508 added in the pixel formats.\nDecode functions and associated resources removed in spca505, 506 and 508.\nThe decode routines are now found in the V4L library.\n\nSigned-off-by: Jean-Francois Moine \u003cmoinejf@free.fr\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "9993e51c0c47ec69dce1f26c2321af6bb9165e9e",
      "tree": "3febbd2f33f39fa04e7da76a8d8c8e1308b8720b",
      "parents": [
        "fdd2a7e2dac56a3384068802be46b822f2aed703"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sat Jul 26 13:53:46 2008 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Sun Jul 27 11:06:20 2008 -0300"
      },
      "message": "V4L/DVB (8502): videodev2.h: CodingStyle cleanups\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "8be1a6d6c77ab4532e4476fdb8177030ef48b52c",
      "tree": "c94ff327a6291672e1f9071a79bf61d63f5f0cb9",
      "parents": [
        "852fef69c0d9510a28a70221cfddd004efa02552",
        "cc9969c96765476db5e30c9e074a57838604c1d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:40:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:40:36 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:\n  mlx4: Update/add Mellanox Technologies copyright lines to mlx4 driver files\n  mlx4_core: Add VLAN tag field to WQE control segment struct\n  RDMA/nes: CM connection setup/teardown rework\n  IPoIB: Correct help text for INFINIBAND_IPOIB_DEBUG\n  IPoIB/cm: Connected mode is no longer EXPERIMENTAL\n  RDMA/ucm: BKL is not needed for ib_ucm_open()\n  RDMA/ucma: BKL is not needed for ucma_open()\n"
    },
    {
      "commit": "9ee08c2df47c10ba624ff05a6c0f2500748bcb69",
      "tree": "0a2788abb3b5547b83965e0b3132eec8b196bd81",
      "parents": [
        "eaf0ba5ef69538b6913525294a3a0fcb0e0992e0",
        "3d45955962496879dead8d4dd70bb9a23b07154b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:30:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:30:56 2008 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (57 commits)\n  [MTD] [NAND] subpage read feature as a way to increase performance. \n  CPUFREQ: S3C24XX NAND driver frequency scaling support.\n  [MTD][NAND] au1550nd: remove unused variable\n  [MTD] jedec_probe: Fix SST 16-bit chip detection\n  [MTD][MTDPART] Fix a division by zero bug\n  [MTD][MTDPART] Cleanup and document the erase region handling\n  [MTD][MTDPART] Handle most checkpatch findings\n  [MTD][MTDPART] Seperate main loop from per-partition code in add_mtd_partition\n  [MTD] physmap: resume already suspended chips on failure to suspend\n  [MTD] physmap: Fix suspend/resume/shutdown bugs.\n  [MTD] [NOR] Fix -ETIMEO errors in CFI driver\n  [MTD] [NAND] fsl_elbc_nand: fix section mismatch with CONFIG_MTD_OF_PARTS\u003dy\n  [JFFS2] Use .unlocked_ioctl\n  [MTD] Fix const assignment in the MTD command line partitioning driver\n  [MTD] [NOR] gen_probe: No debug message when debugging is disabled\n  [MTD] [NAND] remove __PPC__ hardcoded address from DiskOnChip drivers\n  [MTD] [MAPS] Remove the bast-flash driver.\n  [MTD] [NAND] fsl_elbc_nand: ecclayout cleanups\n  [MTD] [NAND] fsl_elbc_nand: implement support for flash-based BBT\n  [MTD] [NAND] fsl_elbc_nand: fix OOB workability for large page NAND chips\n  ...\n"
    },
    {
      "commit": "eaf0ba5ef69538b6913525294a3a0fcb0e0992e0",
      "tree": "2c67cfa8fcc8f971bcf660b83654c9e6b807ff3d",
      "parents": [
        "732730d48dc777f6577a6e0fece42b860324998e",
        "a9906a19193db69ad0158f289f839edf8aaf103f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:29:39 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:29:39 2008 -0700"
      },
      "message": "Merge branch \u0027tracehook\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-utrace\n\n* \u0027tracehook\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-utrace:\n  tracehook: comment fixes\n"
    },
    {
      "commit": "bdee6ac7d1c9a4a9b65db1753b0bfa0b61361dde",
      "tree": "d2d260a3aa7e0902be023c0fbdb52ec26dbd6609",
      "parents": [
        "4836e3007882984279ca63d3c42bf0b14616eb78",
        "deec9ae31e6079551ce9260d29a4cf83e5b19a83"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:27:31 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:27:31 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:\n  atmel-mci: debugfs support\n  mmc: Add per-card debugfs support\n  mmc: Export internal host state through debugfs\n  imxmmc: fix crash when no platform data is provided\n  imxmmc: fix platform resources\n  imxmmc: remove DEBUG definition\n  mmc_spi: put signals to low power off fix\n"
    },
    {
      "commit": "4836e3007882984279ca63d3c42bf0b14616eb78",
      "tree": "28bf22726964e068b825491d71a141eefedbe5f8",
      "parents": [
        "5c7c204aeca51ccfad63caab4fcdc5d8026c0fd8",
        "4e1e018ecc6f7bfd10fc75b3ff9715cc8164e0a2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:23:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:23:44 2008 -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: (39 commits)\n  [PATCH] fix RLIM_NOFILE handling\n  [PATCH] get rid of corner case in dup3() entirely\n  [PATCH] remove remaining namei_{32,64}.h crap\n  [PATCH] get rid of indirect users of namei.h\n  [PATCH] get rid of __user_path_lookup_open\n  [PATCH] f_count may wrap around\n  [PATCH] dup3 fix\n  [PATCH] don\u0027t pass nameidata to __ncp_lookup_validate()\n  [PATCH] don\u0027t pass nameidata to gfs2_lookupi()\n  [PATCH] new (local) helper: user_path_parent()\n  [PATCH] sanitize __user_walk_fd() et.al.\n  [PATCH] preparation to __user_walk_fd cleanup\n  [PATCH] kill nameidata passing to permission(), rename to inode_permission()\n  [PATCH] take noexec checks to very few callers that care\n  Re: [PATCH 3/6] vfs: open_exec cleanup\n  [patch 4/4] vfs: immutable inode checking cleanup\n  [patch 3/4] fat: dont call notify_change\n  [patch 2/4] vfs: utimes cleanup\n  [patch 1/4] vfs: utimes: move owner check into inode_change_ok()\n  [PATCH] vfs: use kstrdup() and check failing allocation\n  ...\n"
    },
    {
      "commit": "5c7c204aeca51ccfad63caab4fcdc5d8026c0fd8",
      "tree": "4bfd5f4455b706c9ba86a8925bf367f437d16336",
      "parents": [
        "228428428138e231a155464239880201e5cc8b44",
        "3712b42d4b1bec29a4232a6673bf2e6dcc5faa68"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:19:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:19:41 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/ISDN-2.6:\n  Add layer1 over IP support\n  Add mISDN HFC multiport driver\n  Add mISDN HFC PCI driver\n  Add mISDN DSP\n  Add mISDN core files\n  Define AF_ISDN and PF_ISDN\n  Add mISDN driver\n"
    },
    {
      "commit": "228428428138e231a155464239880201e5cc8b44",
      "tree": "89b437f5501d03ca36b717e232337426d0de77ca",
      "parents": [
        "78681ac08a611313595d13cafabae1183b71ef48",
        "6c3b8fc618905d7599dcc514c99ce4293d476f39"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:17:56 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:17:56 2008 -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:\n  netns: fix ip_rt_frag_needed rt_is_expired\n  netfilter: nf_conntrack_extend: avoid unnecessary \"ct-\u003eext\" dereferences\n  netfilter: fix double-free and use-after free\n  netfilter: arptables in netns for real\n  netfilter: ip{,6}tables_security: fix future section mismatch\n  selinux: use nf_register_hooks()\n  netfilter: ebtables: use nf_register_hooks()\n  Revert \"pkt_sched: sch_sfq: dump a real number of flows\"\n  qeth: use dev-\u003eml_priv instead of dev-\u003epriv\n  syncookies: Make sure ECN is disabled\n  net: drop unused BUG_TRAP()\n  net: convert BUG_TRAP to generic WARN_ON\n  drivers/net: convert BUG_TRAP to generic WARN_ON\n"
    },
    {
      "commit": "510a35d4a47802f4a0028aa6bd2ca2170da5e32f",
      "tree": "8eb0d6091fe89f013436c5080dc4cbaf825172cf",
      "parents": [
        "b2d002dba5a8a4c0c3ec96fd1ff3c9def6bd71a1"
      ],
      "author": {
        "name": "Andrea Righi",
        "email": "righi.andrea@gmail.com",
        "time": "Sat Jul 26 15:22:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 20:16:47 2008 -0700"
      },
      "message": "hugetlb: remove unused variable warning\n\nRemove the following warning when CONFIG_HUGETLB_PAGE is not set:\n\n\tipc/shm.c: In function `shm_get_stat\u0027:\n\tipc/shm.c:565: warning: unused variable `h\u0027\n\n[akpm@linux-foundation.org: use tabs, not spaces]\nSigned-off-by: Andrea Righi \u003crighi.andrea@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f8206d496e9e9495afb1d4e70d29712b4d403c9",
      "tree": "5bedea1aff8b5e584fbf8497c80fcaccf9242d69",
      "parents": [
        "964bd183624c03680796b63b4ab97ee3905a806a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 03:46:43 2008 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 26 20:53:42 2008 -0400"
      },
      "message": "[PATCH] get rid of indirect users of namei.h\n\nfs.h needs path.h, not namei.h; nfs_fs.h doesn\u0027t need it at all.\nSeveral places in the tree needed direct include.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    }
  ],
  "next": "964bd183624c03680796b63b4ab97ee3905a806a"
}
