)]}'
{
  "log": [
    {
      "commit": "ef0b27d4ccacac32afc3d1c0e8a95e4091dfbc8c",
      "tree": "ed507b7f505620915f96df8757f36c78fd24c6b6",
      "parents": [
        "53509f0fe28e049e772897aa8fa1f5183b6823a2"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Tue Sep 22 16:44:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:34 2009 -0700"
      },
      "message": "mmc: check status after MMC SWITCH command\n\nAccording to the standard, the SWITCH command should be followed by a\nSEND_STATUS command to check for errors.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "53509f0fe28e049e772897aa8fa1f5183b6823a2",
      "tree": "5670751699ec521bb69b4689a34a46a57c062097",
      "parents": [
        "b1ebe38456f7fe61a88af2844361e763ac6ea5ae"
      ],
      "author": {
        "name": "Denis Karpov",
        "email": "ext-denis.2.karpov@nokia.com",
        "time": "Tue Sep 22 16:44:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:34 2009 -0700"
      },
      "message": "mmc: power off once at removal\n\nFix MMC host stop sequence: power off once.\n\nSigned-off-by: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "b1ebe38456f7fe61a88af2844361e763ac6ea5ae",
      "tree": "b45a2e7afe4f1f6d66d6d38dd1627fa2d6c0e7c7",
      "parents": [
        "eae1aeeed852aae37621b82a9e7f6c05096a18fd"
      ],
      "author": {
        "name": "Jarkko Lavinen",
        "email": "jarkko.lavinen@nokia.com",
        "time": "Tue Sep 22 16:44:34 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "mmc: add mmc card sleep and awake support\n\nAdd support for the new MMC command SLEEP_AWAKE.\n\nSigned-off-by: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "eae1aeeed852aae37621b82a9e7f6c05096a18fd",
      "tree": "6a1b108032a5cf08ccfa6fffa29c81cccbe8c82d",
      "parents": [
        "9feae246963c648b212abad0f0eb8938de5f5fe5"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Tue Sep 22 16:44:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "mmc: add ability to save power by powering off cards\n\nPower can be saved by powering off cards that are not in use.  This is\nsimilar to suspend / resume except it is under the control of the driver,\nand does not require any power management support.  It can only be used\nwhen the driver can monitor whether the card is removed, otherwise it is\nunsafe.  This is possible because, unlike suspend, the driver still\nreceives card detect and / or cover switch interrupts.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "9feae246963c648b212abad0f0eb8938de5f5fe5",
      "tree": "fefcc438ab0b8e502c35950e588664ab07ddc439",
      "parents": [
        "319a3f1429c91147058ac26c5f5bac8ec1730bc6"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Tue Sep 22 16:44:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "mmc: add MMC_CAP_NONREMOVABLE host capability\n\neMMC\u0027s are not removable, so unsafe resume is OK always.\n\nTo permit this a new host capability MMC_CAP_NONREMOVABLE has been added\nand suspend / resume updated accordingly.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "319a3f1429c91147058ac26c5f5bac8ec1730bc6",
      "tree": "4a39ff034f7e9b57b903997f818eee5304657991",
      "parents": [
        "8ea926b22e2d13238e4d65d8f61c48fe424e6f4f"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Tue Sep 22 16:44:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "mmc: allow host claim / release nesting\n\nThis change allows the MMC host to be claimed in situations where the host\nmay or may not have already been claimed.  Also \u0027mmc_try_claim_host()\u0027 is\nnow exported.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "8ea926b22e2d13238e4d65d8f61c48fe424e6f4f",
      "tree": "d62846c0f7aa50afce52bd8a9ed4b2affeaa1889",
      "parents": [
        "27cce39f555def6f5ebe7f03d69ccc44ab25f0b2"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "adrian.hunter@nokia.com",
        "time": "Tue Sep 22 16:44:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "mmc: add \u0027enable\u0027 and \u0027disable\u0027 methods to mmc host\n\nMMC hosts that support power saving can use the \u0027enable\u0027 and \u0027disable\u0027\nmethods to exit and enter power saving states.  An explanation of their\nuse is provided in the comments added to include/linux/mmc/host.h.\n\nSigned-off-by: Adrian Hunter \u003cadrian.hunter@nokia.com\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Jarkko Lavinen \u003cjarkko.lavinen@nokia.com\u003e\nCc: Denis Karpov \u003cext-denis.2.karpov@nokia.com\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: \"Madhusudhan\" \u003cmadhu.cr@ti.com\u003e\nCc: \u003clinux-mmc@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": "27cce39f555def6f5ebe7f03d69ccc44ab25f0b2",
      "tree": "d43a55978971dd0f6705a98c162433c39bf7a15b",
      "parents": [
        "f400cd8c84ba51e0ef3d9b680fe9f45ab54c792c"
      ],
      "author": {
        "name": "Ohad Ben-Cohen",
        "email": "ohad@bencohen.org",
        "time": "Tue Sep 22 16:44:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "sdio: do not ignore MMC_VDD_165_195\n\nThis is needed for 1.8V embedded SDIO devices and supporting host controllers\n(e.g. TI 127x and ZOOM2 boards)\n\nSigned-off-by: Ohad Ben-Cohen \u003cohad@bencohen.org\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f400cd8c84ba51e0ef3d9b680fe9f45ab54c792c",
      "tree": "81ba11ed234569ec723b59fe42f5e0c08e304ac7",
      "parents": [
        "b5a74d6058e86546868242bb5283e16fb10fd90a"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Tue Sep 22 16:44:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "mmc: register mmci-omap-hs using platform_driver_probe\n\nomap_mmc_probe lives in .init.text, so using platform_driver_register to\nregister it is wrong because binding a device after the init memory is\ndiscarded (e.g.  via sysfs) results in an oops.\n\nAs requested by David Brownell platform_driver_probe is used instead of\nmoving the probe function to .devinit.text as proposed initially.  This\nsaves some memory, but devices registered after the driver is probed are\nnot bound (probably there are none) and binding via sysfs isn\u0027t possible.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nCc: Jean Pihet \u003cjpihet@mvista.com\u003e\nCc: Tony Lindgren \u003ctony@atomide.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: Andy Lowe \u003calowe@mvista.com\u003e\nCc: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Madhusudhan Chikkature\u003cmadhu.cr@ti.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5a74d6058e86546868242bb5283e16fb10fd90a",
      "tree": "a1ad0fe373afc57205bf3e571957e7afa7d8fac0",
      "parents": [
        "75d145283b2e42619d7ee1e00b78466bacd51808"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Sep 22 16:44:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "msm_sdcc.c: move overly indented code to separate function\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Brian Swetland \u003cswetland@google.com\u003e\nCc: Pierre Ossman \u003cdrzeus-list@drzeus.cx\u003e\nCc: San Mehat \u003csan@android.com\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "75d145283b2e42619d7ee1e00b78466bacd51808",
      "tree": "2de7a0c79c70e24db92c4aa0a8fa6cddcabad39e",
      "parents": [
        "0a7ff7c7573011ec1f52052a8baeae68f4066dde"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Sep 22 16:44:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "msm_sdcc.c: stylistic cleaning\n\nMake it a bit more like typical kernel style.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Brian Swetland \u003cswetland@google.com\u003e\nCc: Pierre Ossman \u003cdrzeus-list@drzeus.cx\u003e\nCc: San Mehat \u003csan@android.com\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0a7ff7c7573011ec1f52052a8baeae68f4066dde",
      "tree": "114c3038b1f69f2ffe7bf7fcca48a762040abcc5",
      "parents": [
        "9d2bd7383c71d38c60328a3dc8a946eda2013826"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Sep 22 16:44:23 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:33 2009 -0700"
      },
      "message": "msm_sdcc.c: convert printk(KERN_\u003clevel\u003e to pr_\u003clevel\u003e(\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Brian Swetland \u003cswetland@google.com\u003e\nCc: Pierre Ossman \u003cdrzeus-list@drzeus.cx\u003e\nCc: San Mehat \u003csan@android.com\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d2bd7383c71d38c60328a3dc8a946eda2013826",
      "tree": "c37b8432be89186a8a6a0751388cf84e7930824f",
      "parents": [
        "ccdfe3a66a57f5e36f56101e60946ee341eb5f1b"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@android.com",
        "time": "Tue Sep 22 16:44:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:32 2009 -0700"
      },
      "message": "mmc: msm_sdccc: driver for HTC Dream\n\nMMC Driver for HTC Dream.  I picked the code up from Google git trees,\nremoved stuff not strictly necessary, and did a few cleanups.  It still\nworks :-).\n\nSigned-off-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Brian Swetland \u003cswetland@google.com\u003e\nCc: Pierre Ossman \u003cdrzeus-list@drzeus.cx\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ccdfe3a66a57f5e36f56101e60946ee341eb5f1b",
      "tree": "1d6fcd267589ebf8b9b5cc1692ad2fa0f757275d",
      "parents": [
        "500f35648e5ebd04be00f974738a9db959a892b8"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Tue Sep 22 16:44:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:32 2009 -0700"
      },
      "message": "OMAP: HSMMC: do not enable buffer ready interrupt if using DMA\n\nThis considerably reduces the number of interrupts during a transfer\nand ought to result in some power saving.\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nSigned-off-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nAcked-by: Kishore Kadiyala \u003ckishore.kadiyala@ti.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "500f35648e5ebd04be00f974738a9db959a892b8",
      "tree": "1597409b739e9d63f554c520bce1d057e1e328a7",
      "parents": [
        "e56770fbc48c1517f620f9f68e3f728e74d52bf5"
      ],
      "author": {
        "name": "Balaji Rao",
        "email": "balajirrao@openmoko.org",
        "time": "Tue Sep 22 16:44:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:32 2009 -0700"
      },
      "message": "mmc: in mmc_power_up(), use previously selected ocr if available\n\nWhen mmc_power_up is called during unsafe resume, host-\u003eocr should be used\ninstead of host-\u003eocr_avail.\n\nSigned-off-by: Balaji Rao \u003cbalajirrao@openmoko.org\u003e\nCc: Andy Green \u003candy@openmoko.com\u003e\nCc: Pierre Ossman \u003cdrzeus-mmc@drzeus.cx\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e56770fbc48c1517f620f9f68e3f728e74d52bf5",
      "tree": "01080d2cd2ecc0ffab7181ccfe69561fda5f10ad",
      "parents": [
        "2a9ad18deb2870a9968f50351a0d4b8cc2a04099"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Sep 22 16:44:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:32 2009 -0700"
      },
      "message": "Blackfin: override text/data checking functions\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Getz \u003crgetz@blackfin.uclinux.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a9ad18deb2870a9968f50351a0d4b8cc2a04099",
      "tree": "e56747b3dc8dd825515d61524c91129f92aed134",
      "parents": [
        "128e8db38e30c1786498dfc011d0f9dd7f9f9266"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Sep 22 16:44:16 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "lockdep: use new arch_is_kernel_data()\n\nThis allows lockdep to locate symbols that are in arch-specific data\nsections (such as data in Blackfin on-chip SRAM regions).\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Getz \u003crgetz@blackfin.uclinux.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "128e8db38e30c1786498dfc011d0f9dd7f9f9266",
      "tree": "d43b25d848b34316805b14c4040821176a7296d6",
      "parents": [
        "00afe029aab03bd95eba210b5e74a252017c4692"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Sep 22 16:44:15 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "kallsyms: use new arch_is_kernel_text()\n\nThis allows kallsyms to locate symbols that are in arch-specific text\nsections (such as text in Blackfin on-chip SRAM regions).\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Getz \u003crgetz@blackfin.uclinux.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00afe029aab03bd95eba210b5e74a252017c4692",
      "tree": "4c9aa4a10d7fa5f813896c8c439df592aacf295d",
      "parents": [
        "a9ece53c4089ef23d4002d34c4c7148d94622a40"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Tue Sep 22 16:44:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "asm/sections: add text/data checking functions for arches to override\n\nSome ports (like the Blackfin arch) have a discontiguous memory map which\nmeans there may be text or data that falls outside of the standard range\nof the start/end text/data symbols.  Creating some helper functions allows\nthese non-standard ports to declare these regions without adversely\naffecting anyone else.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Robin Getz \u003crgetz@blackfin.uclinux.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9ece53c4089ef23d4002d34c4c7148d94622a40",
      "tree": "9f151e686244f82d38d3364b7e2e3976a1edb087",
      "parents": [
        "1f10206cf8e945220f7220a809d8bfc15c21f9a5"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Tue Sep 22 16:44:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "kallsyms: fix segfault in prefix_underscores_count()\n\nCommit b478b782e110fdb4135caa3062b6d687e989d994 \"kallsyms, tracing: output\nmore proper symbol name\" introduces a \"bugfix\" that introduces a segfault\nin kallsyms in my configurations.\n\nThe cause is the introduction of prefix_underscores_count() which attempts\nto count underscores, even in symbols that do not have them.  As a result,\nit just uselessly runs past the end of the buffer until it crashes:\n\n  CC      init/version.o\n  LD      init/built-in.o\n  LD      .tmp_vmlinux1\n  KSYM    .tmp_kallsyms1.S\n/bin/sh: line 1: 16934 Done                    sh-linux-gnu-nm -n .tmp_vmlinux1\n     16935 Segmentation fault      | scripts/kallsyms \u003e .tmp_kallsyms1.S\nmake: *** [.tmp_kallsyms1.S] Error 139\n\nThis simplifies the logic and just does a straightforward count.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Paulo Marques \u003cpmarques@grupopie.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.30.x, 2.6.31.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f10206cf8e945220f7220a809d8bfc15c21f9a5",
      "tree": "4f2c48ccf9cc52dad9610df54e301e631a351288",
      "parents": [
        "b28cfd2c0616e1b42acc6ee3c77ef6cc3873c510"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Sep 22 16:44:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "getrusage: fill ru_maxrss value\n\nMake -\u003eru_maxrss value in struct rusage filled accordingly to rss hiwater\nmark.  This struct is filled as a parameter to getrusage syscall.\n-\u003eru_maxrss value is set to KBs which is the way it is done in BSD\nsystems.  /usr/bin/time (gnu time) application converts -\u003eru_maxrss to KBs\nwhich seems to be incorrect behavior.  Maintainer of this util was\nnotified by me with the patch which corrects it and cc\u0027ed.\n\nTo make this happen we extend struct signal_struct by two fields.  The\nfirst one is -\u003emaxrss which we use to store rss hiwater of the task.  The\nsecond one is -\u003ecmaxrss which we use to store highest rss hiwater of all\ntask childs.  These values are used in k_getrusage() to actually fill\n-\u003eru_maxrss.  k_getrusage() uses current rss hiwater value directly if mm\nstruct exists.\n\nNote:\nexec() clear mm-\u003ehiwater_rss, but doesn\u0027t clear sig-\u003emaxrss.\nit is intetionally behavior. *BSD getrusage have exec() inheriting.\n\ntest programs\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\ngetrusage.c\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n #include \u003cstdio.h\u003e\n #include \u003cstdlib.h\u003e\n #include \u003cstring.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003csys/time.h\u003e\n #include \u003csys/resource.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003csys/wait.h\u003e\n #include \u003cunistd.h\u003e\n #include \u003csignal.h\u003e\n #include \u003csys/mman.h\u003e\n\n #include \"common.h\"\n\n #define err(str) perror(str), exit(1)\n\nint main(int argc, char** argv)\n{\n\tint status;\n\n\tprintf(\"allocate 100MB\\n\");\n\tconsume(100);\n\n\tprintf(\"testcase1: fork inherit? \\n\");\n\tprintf(\"  expect: initial.self ~\u003d child.self\\n\");\n\tshow_rusage(\"initial\");\n\tif (__fork()) {\n\t\twait(\u0026status);\n\t} else {\n\t\tshow_rusage(\"fork child\");\n\t\t_exit(0);\n\t}\n\tprintf(\"\\n\");\n\n\tprintf(\"testcase2: fork inherit? (cont.) \\n\");\n\tprintf(\"  expect: initial.children ~\u003d 100MB, but child.children \u003d 0\\n\");\n\tshow_rusage(\"initial\");\n\tif (__fork()) {\n\t\twait(\u0026status);\n\t} else {\n\t\tshow_rusage(\"child\");\n\t\t_exit(0);\n\t}\n\tprintf(\"\\n\");\n\n\tprintf(\"testcase3: fork + malloc \\n\");\n\tprintf(\"  expect: child.self ~\u003d initial.self + 50MB\\n\");\n\tshow_rusage(\"initial\");\n\tif (__fork()) {\n\t\twait(\u0026status);\n\t} else {\n\t\tprintf(\"allocate +50MB\\n\");\n\t\tconsume(50);\n\t\tshow_rusage(\"fork child\");\n\t\t_exit(0);\n\t}\n\tprintf(\"\\n\");\n\n\tprintf(\"testcase4: grandchild maxrss\\n\");\n\tprintf(\"  expect: post_wait.children ~\u003d 300MB\\n\");\n\tshow_rusage(\"initial\");\n\tif (__fork()) {\n\t\twait(\u0026status);\n\t\tshow_rusage(\"post_wait\");\n\t} else {\n\t\tsystem(\"./child -n 0 -g 300\");\n\t\t_exit(0);\n\t}\n\tprintf(\"\\n\");\n\n\tprintf(\"testcase5: zombie\\n\");\n\tprintf(\"  expect: pre_wait ~\u003d initial, IOW the zombie process is not accounted.\\n\");\n\tprintf(\"          post_wait ~\u003d 400MB, IOW wait() collect child\u0027s max_rss. \\n\");\n\tshow_rusage(\"initial\");\n\tif (__fork()) {\n\t\tsleep(1); /* children become zombie */\n\t\tshow_rusage(\"pre_wait\");\n\t\twait(\u0026status);\n\t\tshow_rusage(\"post_wait\");\n\t} else {\n\t\tsystem(\"./child -n 400\");\n\t\t_exit(0);\n\t}\n\tprintf(\"\\n\");\n\n\tprintf(\"testcase6: SIG_IGN\\n\");\n\tprintf(\"  expect: initial ~\u003d after_zombie (child\u0027s 500MB alloc should be ignored).\\n\");\n\tshow_rusage(\"initial\");\n\tsignal(SIGCHLD, SIG_IGN);\n\tif (__fork()) {\n\t\tsleep(1); /* children become zombie */\n\t\tshow_rusage(\"after_zombie\");\n\t} else {\n\t\tsystem(\"./child -n 500\");\n\t\t_exit(0);\n\t}\n\tprintf(\"\\n\");\n\tsignal(SIGCHLD, SIG_DFL);\n\n\tprintf(\"testcase7: exec (without fork) \\n\");\n\tprintf(\"  expect: initial ~\u003d exec \\n\");\n\tshow_rusage(\"initial\");\n\texecl(\"./child\", \"child\", \"-v\", NULL);\n\n\treturn 0;\n}\n\nchild.c\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n #include \u003csys/types.h\u003e\n #include \u003cunistd.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003csys/wait.h\u003e\n #include \u003cstdio.h\u003e\n #include \u003cstdlib.h\u003e\n #include \u003cstring.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003csys/time.h\u003e\n #include \u003csys/resource.h\u003e\n\n #include \"common.h\"\n\nint main(int argc, char** argv)\n{\n\tint status;\n\tint c;\n\tlong consume_size \u003d 0;\n\tlong grandchild_consume_size \u003d 0;\n\tint show \u003d 0;\n\n\twhile ((c \u003d getopt(argc, argv, \"n:g:v\")) !\u003d -1) {\n\t\tswitch (c) {\n\t\tcase \u0027n\u0027:\n\t\t\tconsume_size \u003d atol(optarg);\n\t\t\tbreak;\n\t\tcase \u0027v\u0027:\n\t\t\tshow \u003d 1;\n\t\t\tbreak;\n\t\tcase \u0027g\u0027:\n\n\t\t\tgrandchild_consume_size \u003d atol(optarg);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tif (show)\n\t\tshow_rusage(\"exec\");\n\n\tif (consume_size) {\n\t\tprintf(\"child alloc %ldMB\\n\", consume_size);\n\t\tconsume(consume_size);\n\t}\n\n\tif (grandchild_consume_size) {\n\t\tif (fork()) {\n\t\t\twait(\u0026status);\n\t\t} else {\n\t\t\tprintf(\"grandchild alloc %ldMB\\n\", grandchild_consume_size);\n\t\t\tconsume(grandchild_consume_size);\n\n\t\t\texit(0);\n\t\t}\n\t}\n\n\treturn 0;\n}\n\ncommon.c\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n #include \u003cstdio.h\u003e\n #include \u003cstdlib.h\u003e\n #include \u003cstring.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003csys/time.h\u003e\n #include \u003csys/resource.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003csys/wait.h\u003e\n #include \u003cunistd.h\u003e\n #include \u003csignal.h\u003e\n #include \u003csys/mman.h\u003e\n\n #include \"common.h\"\n #define err(str) perror(str), exit(1)\n\nvoid show_rusage(char *prefix)\n{\n    \tint err, err2;\n    \tstruct rusage rusage_self;\n    \tstruct rusage rusage_children;\n\n    \tprintf(\"%s: \", prefix);\n    \terr \u003d getrusage(RUSAGE_SELF, \u0026rusage_self);\n    \tif (!err)\n    \t\tprintf(\"self %ld \", rusage_self.ru_maxrss);\n    \terr2 \u003d getrusage(RUSAGE_CHILDREN, \u0026rusage_children);\n    \tif (!err2)\n    \t\tprintf(\"children %ld \", rusage_children.ru_maxrss);\n\n    \tprintf(\"\\n\");\n}\n\n/* Some buggy OS need this worthless CPU waste. */\nvoid make_pagefault(void)\n{\n\tvoid *addr;\n\tint size \u003d getpagesize();\n\tint i;\n\n\tfor (i\u003d0; i\u003c1000; i++) {\n\t\taddr \u003d mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);\n\t\tif (addr \u003d\u003d MAP_FAILED)\n\t\t\terr(\"make_pagefault\");\n\t\tmemset(addr, 0, size);\n\t\tmunmap(addr, size);\n\t}\n}\n\nvoid consume(int mega)\n{\n    \tsize_t sz \u003d mega * 1024 * 1024;\n    \tvoid *ptr;\n\n    \tptr \u003d malloc(sz);\n    \tmemset(ptr, 0, sz);\n\tmake_pagefault();\n}\n\npid_t __fork(void)\n{\n\tpid_t pid;\n\n\tpid \u003d fork();\n\tmake_pagefault();\n\n\treturn pid;\n}\n\ncommon.h\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nvoid show_rusage(char *prefix);\nvoid make_pagefault(void);\nvoid consume(int mega);\npid_t __fork(void);\n\nFreeBSD result (expected result)\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nallocate 100MB\ntestcase1: fork inherit?\n  expect: initial.self ~\u003d child.self\ninitial: self 103492 children 0\nfork child: self 103540 children 0\n\ntestcase2: fork inherit? (cont.)\n  expect: initial.children ~\u003d 100MB, but child.children \u003d 0\ninitial: self 103540 children 103540\nchild: self 103564 children 0\n\ntestcase3: fork + malloc\n  expect: child.self ~\u003d initial.self + 50MB\ninitial: self 103564 children 103564\nallocate +50MB\nfork child: self 154860 children 0\n\ntestcase4: grandchild maxrss\n  expect: post_wait.children ~\u003d 300MB\ninitial: self 103564 children 154860\ngrandchild alloc 300MB\npost_wait: self 103564 children 308720\n\ntestcase5: zombie\n  expect: pre_wait ~\u003d initial, IOW the zombie process is not accounted.\n          post_wait ~\u003d 400MB, IOW wait() collect child\u0027s max_rss.\ninitial: self 103564 children 308720\nchild alloc 400MB\npre_wait: self 103564 children 308720\npost_wait: self 103564 children 411312\n\ntestcase6: SIG_IGN\n  expect: initial ~\u003d after_zombie (child\u0027s 500MB alloc should be ignored).\ninitial: self 103564 children 411312\nchild alloc 500MB\nafter_zombie: self 103624 children 411312\n\ntestcase7: exec (without fork)\n  expect: initial ~\u003d exec\ninitial: self 103624 children 411312\nexec: self 103624 children 411312\n\nLinux result (actual test result)\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nallocate 100MB\ntestcase1: fork inherit?\n  expect: initial.self ~\u003d child.self\ninitial: self 102848 children 0\nfork child: self 102572 children 0\n\ntestcase2: fork inherit? (cont.)\n  expect: initial.children ~\u003d 100MB, but child.children \u003d 0\ninitial: self 102876 children 102644\nchild: self 102572 children 0\n\ntestcase3: fork + malloc\n  expect: child.self ~\u003d initial.self + 50MB\ninitial: self 102876 children 102644\nallocate +50MB\nfork child: self 153804 children 0\n\ntestcase4: grandchild maxrss\n  expect: post_wait.children ~\u003d 300MB\ninitial: self 102876 children 153864\ngrandchild alloc 300MB\npost_wait: self 102876 children 307536\n\ntestcase5: zombie\n  expect: pre_wait ~\u003d initial, IOW the zombie process is not accounted.\n          post_wait ~\u003d 400MB, IOW wait() collect child\u0027s max_rss.\ninitial: self 102876 children 307536\nchild alloc 400MB\npre_wait: self 102876 children 307536\npost_wait: self 102876 children 410076\n\ntestcase6: SIG_IGN\n  expect: initial ~\u003d after_zombie (child\u0027s 500MB alloc should be ignored).\ninitial: self 102876 children 410076\nchild alloc 500MB\nafter_zombie: self 102880 children 410076\n\ntestcase7: exec (without fork)\n  expect: initial ~\u003d exec\ninitial: self 102880 children 410076\nexec: self 102880 children 410076\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: 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": "b28cfd2c0616e1b42acc6ee3c77ef6cc3873c510",
      "tree": "acf9ac40ca9ead4164a5e5f296064b107639b480",
      "parents": [
        "a49c59c042c63b432307c1bbf7dac5a104c786e6"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Sep 22 16:44:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "kmap_types.h: rename D macro\n\nI tend to use a \u0027D\u0027 debugging macro a lot during debugging.  When I define\nit before includes I often get conflicts with kmap_types.h\u0027s use of \u0027D\u0027\ntoo.  It\u0027s not very nice when a global include pollutes the name space\nlike this.\n\nRename the kmap_types.h D to KMAP_D.  It is only used temporarily in the\nheader so has no effect on anything else.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@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": "a49c59c042c63b432307c1bbf7dac5a104c786e6",
      "tree": "443f9fab6d8907dec07a6c83fee2812c4bf43245",
      "parents": [
        "d7d7561c908afa001ab0fc8212eee94731a213a6"
      ],
      "author": {
        "name": "Rolf Eike Beer",
        "email": "eike-kernel@sf-tec.de",
        "time": "Tue Sep 22 16:44:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "Make sure the value in abs() does not get truncated if it is greater than 2^32\n\nabs() will truncate the input if is it outside the 2^32 range.  Fix that\nby assuming `long\u0027 input.\n\nThis might generate worse code in the common case.\n\nSigned-off-by: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d7d7561c908afa001ab0fc8212eee94731a213a6",
      "tree": "116f7585bca14df575560c43c39b3e37d7e18595",
      "parents": [
        "54447c3e8f63524fcdd40395bb2d405cab5555a7"
      ],
      "author": {
        "name": "Suzuki Poulose",
        "email": "suzuki@in.ibm.com",
        "time": "Tue Sep 22 16:44:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "fix compat_sys_utimensat()\n\nCompat utimensat() returns EINVAL when the tv_nsec is one of UTIME_OMIT or\nUTIME_NOW and the tv_sec is set to non-zero.  As per man pages, the tv_sec\nfield should be ignored.\n\nsys_utimensat() works fine in this case.\n\nTest case:\n\n#define _GNU_SOURCE\n#define _ATFILE_SOURCE\n#include \u003cstdio.h\u003e\n#include \u003cfcntl.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/stat.h\u003e\n#include \u003cstdlib.h\u003e\n\nmain(int argc, char *argv[])\n{\n\tstruct timespec ts[2];\n\tstruct timespec *tsp;\n\n\tif (argc \u003c 2) {\n\t\tfprintf(stderr, \"Usage : %s filename\\n\", argv[0]);\n\t\texit (-1);\n\t}\n\n\tts[0].tv_nsec \u003d ts[1].tv_nsec \u003d UTIME_NOW;\n\tts[0].tv_sec \u003d ts[1].tv_sec \u003d 1;\n\n\ttsp \u003d ts;\n\n\tif (utimensat(AT_FDCWD, argv[1],tsp,0) \u003d\u003d -1)\n\t\tperror(\"utimensat\");\n\telse\n\t\tfprintf(stdout, \"utimensat success\\n\");\n\treturn 0;\n}\nmjs22lp5:~ # cc -m64 utimensat-test.c -o utimensat_test64\nmjs22lp5:~ # cc -m32 utimensat-test.c -o utimensat_test32\nmjs22lp5:~ # ./utimensat_test32 /tmp/utimensat_test\nutimensat: Invalid argument\nmjs22lp5:~ # ./utimensat_test64 /tmp/utimensat_test\nutimensat success\nmjs22lp5:~ # uname -r\n2.6.31-rc8\n\nWith the patch :\n\nmjs22lp5:~ # ./utimensat_test64 /tmp/utimensat_test\nutimensat success\nmjs22lp5:~ # ./utimensat_test32 /tmp/utimensat_test\nutimensat success\nmjs22lp5:~ # uname -r\n2.6.31-rc8utimensat\n\nSigned-off-by: Suzuki K P \u003csuzuki@in.ibm.com\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54447c3e8f63524fcdd40395bb2d405cab5555a7",
      "tree": "6e369f2794612b0a4b15c9ff2f6b7ba697b3b103",
      "parents": [
        "945ffe54bbd56ceed62de3b908800fd7c6ffb284"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinderrajput@gmail.com",
        "time": "Tue Sep 22 16:44:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "vlynq: includecheck fix: drivers/vlynq/vlynq.c\n\nFix the following \u0027make includecheck\u0027 warning:\n\ndrivers/vlynq/vlynq.c: linux/device.h is included more than once.\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nSigned-off-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "945ffe54bbd56ceed62de3b908800fd7c6ffb284",
      "tree": "1791ac5df7967107d4413f16f94ba9aae29e8df7",
      "parents": [
        "8a9f47ddb1d5cc3cda2d1f26f8da74e059fa7b87"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Sep 22 16:43:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:30 2009 -0700"
      },
      "message": "qnx4: remove write support\n\nqnx4 wrte support has never been fully implement, is broken since the dawn\nof time and hasn\u0027t been actively developed since before git history\nstarted.\n\nInstead of letting it further bitrot and complicate API transition (like\nthe new truncate code) remove it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Anders Larsen \u003cal@alarsen.net\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a9f47ddb1d5cc3cda2d1f26f8da74e059fa7b87",
      "tree": "7bc28bbf668d6e20d30fa23c40f9eb16705bc0ae",
      "parents": [
        "562787a5c32ccdf182de27793a83a9f2ee86cd77"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Sep 22 16:43:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "ntfs: remove ntfs_file_write\n\ndo_sync_write() does the right thing for turning the aio_writev method\ninto a normal non-vectored synchronous write, no need to duplicate it in\nntfs.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Anton Altaparmakov \u003caia21@cantab.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "562787a5c32ccdf182de27793a83a9f2ee86cd77",
      "tree": "3308afd59d3b7449afa3d6a6cd624d06ce035e88",
      "parents": [
        "515350b6fd041396f425180589e08812dd13615f"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Tue Sep 22 16:43:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "anonfd: split interface into file creation and install\n\nSplit the anonfd interface into a bare file pointer creation one, and a\nfile pointer creation plus install one.\n\nThere are cases, like the usage of eventfds inside other kernel\ninterfaces, where the file pointer created by anonfd needs to be used\ninside the initialization of other structures.\n\nAs it is right now, as soon as anon_inode_getfd() returns, the kenrle can\nrace with userspace closing the newly installed file descriptor.\n\nThis patch, while keeping the old anon_inode_getfd(), introduces a new\nanon_inode_getfile() (whose services are reused in anon_inode_getfd())\nthat allows to split the file creation phase and the fd install one.\n\nOnce all the kernel structures are initialized, the code can call the\nproper fd_install().\n\nGregory manifested the need for something like this inside KVM.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Gregory Haskins \u003cghaskins@novell.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "515350b6fd041396f425180589e08812dd13615f",
      "tree": "70f88e8ba20e589e51aa02e1f5284fbf00599306",
      "parents": [
        "385773e04806e8903e9ec683f5c4bd14926a86dc"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Sep 22 16:43:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "MAINTAINERS: remove dead ncpfs list\n\nOn Saturday 01 August 2009 00:30:39 Mail Delivery Subsystem wrote:\n\u003e Delivery to the following recipient failed permanently:\n\u003e\n\u003e      linware@sh.cvut.cz\n\u003e\n\u003e Technical details of permanent failure:\n\u003e Google tried to deliver your message, but it was rejected by the recipient\n\u003e domain. We recommend contacting the other email provider for further\n\u003e information about the cause of this error. The error that the other server\n\u003e returned was: 450 450 \u003clinware@sh.cvut.cz\u003e: Recipient address rejected:\n\u003e undeliverable address: unknown user: \"linware\" (state 14).\n\nCc: Petr Vandrovec \u003cvandrove@vc.cvut.cz\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@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": "385773e04806e8903e9ec683f5c4bd14926a86dc",
      "tree": "4e883e55117d7e3955800fd220f9f7a4704eb78a",
      "parents": [
        "8c87df457cb58fe75b9b893007917cf8095660a0"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Tue Sep 22 16:43:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "aio.c: move EXPORT* macros to line after function\n\nAs mentioned in Documentation/CodingStyle, move EXPORT* macro\u0027s\nto the line immediately after the closing function brace line.\n\nAlso, move the __initcall() similarly.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c87df457cb58fe75b9b893007917cf8095660a0",
      "tree": "32446b329e4b83ae6158fa1505c36634a75dbfe8",
      "parents": [
        "1fe72eaa0f46a0fa4cdcd8f3f7853b6d39469784"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Tue Sep 22 16:43:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "BUILD_BUG_ON(): fix it and a couple of bogus uses of it\n\ngcc permitting variable length arrays makes the current construct used for\nBUILD_BUG_ON() useless, as that doesn\u0027t produce any diagnostic if the\ncontrolling expression isn\u0027t really constant.  Instead, this patch makes\nit so that a bit field gets used here.  Consequently, those uses where the\ncondition isn\u0027t really constant now also need fixing.\n\nNote that in the gfp.h, kmemcheck.h, and virtio_config.h cases\nMAYBE_BUILD_BUG_ON() really just serves documentation purposes - even if\nthe expression is compile time constant (__builtin_constant_p() yields\ntrue), the array is still deemed of variable length by gcc, and hence the\nwhole expression doesn\u0027t have the intended effect.\n\n[akpm@linux-foundation.org: make arch/sparc/include/asm/vio.h compile]\n[akpm@linux-foundation.org: more nonsensical assertions in tpm.c..]\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Rajiv Andrade \u003csrajiv@linux.vnet.ibm.com\u003e\nCc: Mimi Zohar \u003czohar@us.ibm.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1fe72eaa0f46a0fa4cdcd8f3f7853b6d39469784",
      "tree": "1bcaa65c0011cf329d5dd2a06be519460d06e434",
      "parents": [
        "88e0fbc452ed94393bf89585c2b90edb94749b45"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Tue Sep 22 16:43:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "fs/buffer.c: clean up EXPORT* macros\n\nAccording to Documentation/CodingStyle the EXPORT* macro should follow\nimmediately after the closing function brace line.\n\nAlso, mark_buffer_async_write_endio() and do_thaw_all() are not used\nelsewhere so they should be marked as static.\n\nIn addition, file_fsync() is actually in fs/sync.c so move the EXPORT* to\nthat file.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88e0fbc452ed94393bf89585c2b90edb94749b45",
      "tree": "374b7c8f397609da7a7b22ddee77a9c70956fcb1",
      "parents": [
        "70867453092297be9afb2249e712a1f960ec0a09"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Sep 22 16:43:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "fs: turn iprune_mutex into rwsem\n\nWe have had a report of bad memory allocation latency during DVD-RAM (UDF)\nwriting.  This is causing the user\u0027s desktop session to become unusable.\n\nJan tracked the cause of this down to UDF inode reclaim blocking:\n\ngnome-screens D ffff810006d1d598     0 20686      1\n ffff810006d1d508 0000000000000082 ffff810037db6718 0000000000000800\n ffff810006d1d488 ffffffff807e4280 ffffffff807e4280 ffff810006d1a580\n ffff8100bccbc140 ffff810006d1a8c0 0000000006d1d4e8 ffff810006d1a8c0\nCall Trace:\n [\u003cffffffff804477f3\u003e] io_schedule+0x63/0xa5\n [\u003cffffffff802c2587\u003e] sync_buffer+0x3b/0x3f\n [\u003cffffffff80447d2a\u003e] __wait_on_bit+0x47/0x79\n [\u003cffffffff80447dc6\u003e] out_of_line_wait_on_bit+0x6a/0x77\n [\u003cffffffff802c24f6\u003e] __wait_on_buffer+0x1f/0x21\n [\u003cffffffff802c442a\u003e] __bread+0x70/0x86\n [\u003cffffffff88de9ec7\u003e] :udf:udf_tread+0x38/0x3a\n [\u003cffffffff88de0fcf\u003e] :udf:udf_update_inode+0x4d/0x68c\n [\u003cffffffff88de26e1\u003e] :udf:udf_write_inode+0x1d/0x2b\n [\u003cffffffff802bcf85\u003e] __writeback_single_inode+0x1c0/0x394\n [\u003cffffffff802bd205\u003e] write_inode_now+0x7d/0xc4\n [\u003cffffffff88de2e76\u003e] :udf:udf_clear_inode+0x3d/0x53\n [\u003cffffffff802b39ae\u003e] clear_inode+0xc2/0x11b\n [\u003cffffffff802b3ab1\u003e] dispose_list+0x5b/0x102\n [\u003cffffffff802b3d35\u003e] shrink_icache_memory+0x1dd/0x213\n [\u003cffffffff8027ede3\u003e] shrink_slab+0xe3/0x158\n [\u003cffffffff8027fbab\u003e] try_to_free_pages+0x177/0x232\n [\u003cffffffff8027a578\u003e] __alloc_pages+0x1fa/0x392\n [\u003cffffffff802951fa\u003e] alloc_page_vma+0x176/0x189\n [\u003cffffffff802822d8\u003e] __do_fault+0x10c/0x417\n [\u003cffffffff80284232\u003e] handle_mm_fault+0x466/0x940\n [\u003cffffffff8044b922\u003e] do_page_fault+0x676/0xabf\n\nThis blocks with iprune_mutex held, which then blocks other reclaimers:\n\nX             D ffff81009d47c400     0 17285  14831\n ffff8100844f3728 0000000000000086 0000000000000000 ffff81000000e288\n ffff81000000da00 ffffffff807e4280 ffffffff807e4280 ffff81009d47c400\n ffffffff805ff890 ffff81009d47c740 00000000844f3808 ffff81009d47c740\nCall Trace:\n [\u003cffffffff80447f8c\u003e] __mutex_lock_slowpath+0x72/0xa9\n [\u003cffffffff80447e1a\u003e] mutex_lock+0x1e/0x22\n [\u003cffffffff802b3ba1\u003e] shrink_icache_memory+0x49/0x213\n [\u003cffffffff8027ede3\u003e] shrink_slab+0xe3/0x158\n [\u003cffffffff8027fbab\u003e] try_to_free_pages+0x177/0x232\n [\u003cffffffff8027a578\u003e] __alloc_pages+0x1fa/0x392\n [\u003cffffffff8029507f\u003e] alloc_pages_current+0xd1/0xd6\n [\u003cffffffff80279ac0\u003e] __get_free_pages+0xe/0x4d\n [\u003cffffffff802ae1b7\u003e] __pollwait+0x5e/0xdf\n [\u003cffffffff8860f2b4\u003e] :nvidia:nv_kern_poll+0x2e/0x73\n [\u003cffffffff802ad949\u003e] do_select+0x308/0x506\n [\u003cffffffff802adced\u003e] core_sys_select+0x1a6/0x254\n [\u003cffffffff802ae0b7\u003e] sys_select+0xb5/0x157\n\nNow I think the main problem is having the filesystem block (and do IO) in\ninode reclaim.  The problem is that this doesn\u0027t get accounted well and\npenalizes a random allocator with a big latency spike caused by work\ngenerated from elsewhere.\n\nI think the best idea would be to avoid this.  By design if possible, or\nby deferring the hard work to an asynchronous context.  If the latter,\nthen the fs would probably want to throttle creation of new work with\nqueue size of the deferred work, but let\u0027s not get into those details.\n\nAnyway, the other obvious thing we looked at is the iprune_mutex which is\ncausing the cascading blocking.  We could turn this into an rwsem to\nimprove concurrency.  It is unreasonable to totally ban all potentially\nslow or blocking operations in inode reclaim, so I think this is a cheap\nway to get a small improvement.\n\nThis doesn\u0027t solve the whole problem of course.  The process doing inode\nreclaim will still take the latency hit, and concurrent processes may end\nup contending on filesystem locks.  So fs developers should keep these\nproblems in mind.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70867453092297be9afb2249e712a1f960ec0a09",
      "tree": "cf753b5467e3a93fafd6bb452292e6ec60c3de86",
      "parents": [
        "02b51df1b07b4e9ca823c89284e704cadb323cd1"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Tue Sep 22 16:43:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "printk_once(): use bool for boolean flag\n\nUsing the type bool (instead of int) for the __print_once flag in the\nprintk_once() macro matches the intent of the code better, and allows the\ncompiler to generate smaller code; eg a typical callsite with gcc 4.3.3 on\ni386:\n\nadd/remove: 0/0 grow/shrink: 0/2 up/down: 0/-6 (-6)\nfunction                                     old     new   delta\nstatic.__print_once                            4       1      -3\nget_cpu_vendor                               146     143      -3\n\nSaving 6 bytes of object size per callsite by slightly improving the\nreadability of the source seems like a win to me.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02b51df1b07b4e9ca823c89284e704cadb323cd1",
      "tree": "c68de4809f261d742f597c686826cdc9d047fb4a",
      "parents": [
        "88e9d34c727883d7d6f02cf1475b3ec98b8480c7"
      ],
      "author": {
        "name": "Scott James Remnant",
        "email": "scott@ubuntu.com",
        "time": "Tue Sep 22 16:43:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "proc connector: add event for process becoming session leader\n\nThe act of a process becoming a session leader is a useful signal to a\nsupervising init daemon such as Upstart.\n\nWhile a daemon will normally do this as part of the process of becoming a\ndaemon, it is rare for its children to do so.  When the children do, it is\nnearly always a sign that the child should be considered detached from the\nparent and not supervised along with it.\n\nThe poster-child example is OpenSSH; the per-login children call setsid()\nso that they may control the pty connected to them.  If the primary daemon\ndies or is restarted, we do not want to consider the per-login children\nand want to respawn the primary daemon without killing the children.\n\nThis patch adds a new PROC_SID_EVENT and associated structure to the\nproc_event event_data union, it arranges for this to be emitted when the\nspecial PIDTYPE_SID pid is set.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Scott James Remnant \u003cscott@ubuntu.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nAcked-by: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88e9d34c727883d7d6f02cf1475b3ec98b8480c7",
      "tree": "475f544536d52739e0929e7727cab5124e855a06",
      "parents": [
        "b7ed698cc9d556306a4088c238e2ea9311ea2cb3"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Sep 22 16:43:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:29 2009 -0700"
      },
      "message": "seq_file: constify seq_operations\n\nMake all seq_operations structs const, to help mitigate against\nrevectoring user-triggerable function pointers.\n\nThis is derived from the grsecurity patch, although generated from scratch\nbecause it\u0027s simpler than extracting the changes from there.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7ed698cc9d556306a4088c238e2ea9311ea2cb3",
      "tree": "b0aadfcf2d2c1c1454bdf8f194f7ff94e5d21c46",
      "parents": [
        "912e837aef72a3dd263dafc3717d92bbc1211a53"
      ],
      "author": {
        "name": "Ladinu Chandrasinghe",
        "email": "ladinu.pub@gmail.com",
        "time": "Tue Sep 22 16:43:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "Documentation/: fix warnings from -Wmissing-prototypes in HOSTCFLAGS\n\nFix up -Wmissing-prototypes in compileable userspace code, mainly under\nDocumentation/.\n\nSigned-off-by: Ladinu Chandrasinghe \u003cladinu.pub@gmail.com\u003e\nSigned-off-by: Trevor Keith \u003ctsrk@tsrk.net\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "912e837aef72a3dd263dafc3717d92bbc1211a53",
      "tree": "7872171305a3518b6536754be0d597885e3d2792",
      "parents": [
        "54fdade1c3332391948ec43530c02c4794a38172"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Sep 22 16:43:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "dme1737: Keep index within pwm_config[]\n\nThe static code scanner \"Parfait\" reported this because pwm_config is\nonly 3 bytes - pwm_config[3] is out of range.\n\nSince this code path is never called with ix \u003d\u003d 3 (the device has no PWM4\noutput) this doesn\u0027t change anything in practice.  But to encourage\ntesting with Parfait, lets make the warning go away...\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54fdade1c3332391948ec43530c02c4794a38172",
      "tree": "a44cfa6888bbe702321e4d4737786e5292d72eaa",
      "parents": [
        "5c725138437837291db5c25f4a076ee852e806e3"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Tue Sep 22 16:43:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "generic-ipi: make struct call_function_data lockless\n\nThis patch can remove spinlock from struct call_function_data, the\nreasons are below:\n\n1: add a new interface for cpumask named cpumask_test_and_clear_cpu(),\n   it can atomically test and clear specific cpu, we can use it instead\n   of cpumask_test_cpu() and cpumask_clear_cpu() and no need data-\u003elock\n   to protect those in generic_smp_call_function_interrupt().\n\n2: in smp_call_function_many(), after csd_lock() return, the current\u0027s\n   cfd_data is deleted from call_function list, so it not have race\n   between other cpus, then cfs_data is only used in\n   smp_call_function_many() that must disable preemption and not from\n   a hardware interrupthandler or from a bottom half handler to call,\n   only the correspond cpu can use it, so it not have race in current\n   cpu, no need cfs_data-\u003elock to protect it.\n\n3: after 1 and 2, cfs_data-\u003elock is only use to protect cfs_data-\u003erefs in\n   generic_smp_call_function_interrupt(), so we can define cfs_data-\u003erefs\n   to atomic_t, and no need cfs_data-\u003elock any more.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n[akpm@linux-foundation.org: use atomic_dec_return()]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5c725138437837291db5c25f4a076ee852e806e3",
      "tree": "ddd05a26b2aa65a7508546b22235dffa2f41f54f",
      "parents": [
        "e898893399335514b10dfbd75598f8308976abe4"
      ],
      "author": {
        "name": "Trevor Keith",
        "email": "tsrk@tsrk.net",
        "time": "Tue Sep 22 16:43:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "Fix all -Wmissing-prototypes warnings in x86 defconfig\n\nSigned-off-by: Trevor Keith \u003ctsrk@tsrk.net\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e898893399335514b10dfbd75598f8308976abe4",
      "tree": "af829247f12aed6e9371dcee8ed119ce54a3e0c3",
      "parents": [
        "c02e3f361c75da04ca3025b4d19e947e9cc62ed3"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Tue Sep 22 16:43:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "dac960: fix undefined behavior on empty string\n\nFix undefined behavior due to a buffer underrun if an empty string is\nwritten to the proc file.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c02e3f361c75da04ca3025b4d19e947e9cc62ed3",
      "tree": "92605809366dda20430fa9dc7d0b9b9f2f3c0bd9",
      "parents": [
        "1fd7317d02ec03c6fdf072317841287933d06d24"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Sep 22 16:43:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "kmod: fix race in usermodehelper code\n\nThe user mode helper code has a race in it.  call_usermodehelper_exec()\ntakes an allocated subprocess_info structure, which it passes to a\nworkqueue, and then passes it to a kernel thread which it creates, after\nwhich it calls complete to signal to the caller of\ncall_usermodehelper_exec() that it can free the subprocess_info struct.\n\nBut since we use that structure in the created thread, we can\u0027t call\ncomplete from __call_usermodehelper(), which is where we create the kernel\nthread.  We need to call complete() from within the kernel thread and then\nnot use subprocess_info afterward in the case of UMH_WAIT_EXEC.  Tested\nsuccessfully by me.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1fd7317d02ec03c6fdf072317841287933d06d24",
      "tree": "b7ac4d511896dbb21c1b76a27f6c4d5b4cb6c7bb",
      "parents": [
        "af91322ef3f29ae4114e736e2a72e28b4d619cf9"
      ],
      "author": {
        "name": "Nick Black",
        "email": "dank@qemfd.net",
        "time": "Tue Sep 22 16:43:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "Move magic numbers into magic.h\n\nMove various magic-number definitions into magic.h.\n\nSigned-off-by: Nick Black \u003cdank@qemfd.net\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "af91322ef3f29ae4114e736e2a72e28b4d619cf9",
      "tree": "debba08531c7dd78b90b5d8f2c03f6bf7c9e7877",
      "parents": [
        "3a3b6ed2235f2f619889dd6096e24b6d93bf3339"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Sep 22 16:43:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "printk: add printk_delay to make messages readable for some scenarios\n\nWhen syslog is not possible, at the same time there\u0027s no serial/net\nconsole available, it will be hard to read the printk messages.  For\nexample oops/panic/warning messages in shutdown phase.\n\nAdd a printk delay feature, we can make each printk message delay some\nmilliseconds.\n\nSetting the delay by proc/sysctl interface: /proc/sys/kernel/printk_delay\n\nThe value range from 0 - 10000, default value is 0\n\n[akpm@linux-foundation.org: fix a few things]\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\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": "3a3b6ed2235f2f619889dd6096e24b6d93bf3339",
      "tree": "f187d60c22a00a5aeea9df9483ae0182d265704f",
      "parents": [
        "5ae87e79ecb5baa65e9cf48be874098fafad0668"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Sep 22 16:43:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:28 2009 -0700"
      },
      "message": "printk boot_delay: rename printk_delay_msec to loops_per_msec\n\nRename `printk_delay_msec\u0027 to `loops_per_msec\u0027, because the patch \"printk:\nadd printk_delay to make messages readable for some scenarios\" wishes to\nmore appropriately use the `printk_delay_msec\u0027 identifier.\n\n[akpm@linux-foundation.org: add a comment]\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\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": "5ae87e79ecb5baa65e9cf48be874098fafad0668",
      "tree": "47dceb61ead03159e93ca998a6f88777474db4f3",
      "parents": [
        "f58f2fa9286db0ce9124ca9986d56aa5420b7f59"
      ],
      "author": {
        "name": "Guillaume Knispel",
        "email": "gknispel@proformatique.com",
        "time": "Tue Sep 22 16:43:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "poll/select: avoid arithmetic overflow in __estimate_accuracy()\n\n__estimate_accuracy() was prone to integer overflow, for example if *tv \u003d\u003d\n{2147, 483648000} on a 32 bit computer (or even for delays as small as\n{429, 500000000} if the task is niced).\n\nBecause the result was already forced between 0 and 100ms, the effect of\nthe overflow was not too problematic, but the use of the hrtimer range\nfeature was not optimal in overflow cases.\n\nThis patch ensures that there can not be an integer overflow in this\nfunction.\n\nSigned-off-by: Guillaume Knispel \u003cgknispel@proformatique.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Tejun Heo \u003ctj@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": "f58f2fa9286db0ce9124ca9986d56aa5420b7f59",
      "tree": "5157013d48d77a69f9dfe80f6fdca818320ba647",
      "parents": [
        "ca976c53de0c33160083d36f70bd18d7970f6969"
      ],
      "author": {
        "name": "M. Mohan Kumar",
        "email": "mohan@in.ibm.com",
        "time": "Tue Sep 22 16:43:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "kprobes: use do_IRQ() in lkdtm\n\nCurrent lkdtm code puts a probe on __do_IRQ for some of the kdump test\ncases.  Since __do_IRQ is deprecated, change lkdtm code to use do_IRQ\nfunction.\n\nSigned-off-by: M. Mohan Kumar \u003cmohan@in.ibm.com\u003e\nCc: Ankita Garg \u003cankita@in.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Masami Hiramatsu \u003cmhiramat@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": "ca976c53de0c33160083d36f70bd18d7970f6969",
      "tree": "efd3abdc12b0c636a4dba94dbcab4bafc78423b8",
      "parents": [
        "fa081b00a80ef3f4575c99af6e97d29e1628cf51"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Tue Sep 22 16:43:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "smbfs: read buffer overflow\n\nThis function uses signed integers for the unix_date and local variables -\nif a negative number is supplied and the leap-year condition is not met,\nmonth will be 0, leading to a read of day_n[-1]\n\nSigned-off-by: Roel Kluin \u003croel.kluin@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": "fa081b00a80ef3f4575c99af6e97d29e1628cf51",
      "tree": "7124419e4f0bb4789d2c2e3b909dc1046c2bbe20",
      "parents": [
        "7fa07729e439a6184bd824746d06a49cca553f15"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Sep 22 16:43:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Sep 23 07:39:27 2009 -0700"
      },
      "message": "include/linux/kmemcheck.h: fix a trillion warnings\n\nof the form\n\ninclude/net/inet_sock.h:208: warning: ISO C90 forbids mixed declarations and code\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Vegard Nossum \u003cvegard.nossum@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": "7fa07729e439a6184bd824746d06a49cca553f15",
      "tree": "9037f5c36d64f842a030a1284f76a354ef6f76e6",
      "parents": [
        "991d79b0d1255f89267a350b0048eca59f100cbb",
        "a8f90e906783f1f815120eefe813b23cb396e9bd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:11:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:11:04 2009 -0700"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf_event, powerpc: Fix compilation after big perf_counter rename\n"
    },
    {
      "commit": "991d79b0d1255f89267a350b0048eca59f100cbb",
      "tree": "65ddf4160f959952d9f4955fda8844374768b83e",
      "parents": [
        "a87e84b5cdfacf11af4e8a85c4bca9793658536f",
        "181f7c5dd3832763bdf2756b6d2d8a49bdf12791"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:07:54 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 08:07:54 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vegard/kmemcheck\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vegard/kmemcheck:\n  kmemcheck: add missing braces to do-while in kmemcheck_annotate_bitfield\n  kmemcheck: update documentation\n  kmemcheck: depend on HAVE_ARCH_KMEMCHECK\n  kmemcheck: remove useless check\n  kmemcheck: remove duplicated #include\n"
    },
    {
      "commit": "a87e84b5cdfacf11af4e8a85c4bca9793658536f",
      "tree": "f8e3cb2d339d8ed0e987d55f725e501730cdc81d",
      "parents": [
        "342ff1a1b558ebbdb8cbd55ab6a63eca8b2473ca",
        "3c394ddaa7ea4205f933fd9b481166b2669368a9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:54:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:54:33 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.32\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.32\u0027 of git://linux-nfs.org/~bfields/linux: (68 commits)\n  nfsd4: nfsv4 clients should cross mountpoints\n  nfsd: revise 4.1 status documentation\n  sunrpc/cache: avoid variable over-loading in cache_defer_req\n  sunrpc/cache: use list_del_init for the list_head entries in cache_deferred_req\n  nfsd: return success for non-NFS4 nfs4_state_start\n  nfsd41: Refactor create_client()\n  nfsd41: modify nfsd4.1 backchannel to use new xprt class\n  nfsd41: Backchannel: Implement cb_recall over NFSv4.1\n  nfsd41: Backchannel: cb_sequence callback\n  nfsd41: Backchannel: Setup sequence information\n  nfsd41: Backchannel: Server backchannel RPC wait queue\n  nfsd41: Backchannel: Add sequence arguments to callback RPC arguments\n  nfsd41: Backchannel: callback infrastructure\n  nfsd4: use common rpc_cred for all callbacks\n  nfsd4: allow nfs4 state startup to fail\n  SUNRPC: Defer the auth_gss upcall when the RPC call is asynchronous\n  nfsd4: fix null dereference creating nfsv4 callback client\n  nfsd4: fix whitespace in NFSPROC4_CLNT_CB_NULL definition\n  nfsd41: sunrpc: add new xprt class for nfsv4.1 backchannel\n  sunrpc/cache: simplify cache_fresh_locked and cache_fresh_unlocked.\n  ...\n"
    },
    {
      "commit": "342ff1a1b558ebbdb8cbd55ab6a63eca8b2473ca",
      "tree": "1f967f283dade6e03897169bb29513354f49f910",
      "parents": [
        "50223e486cabdcf7e540e519da1f26bab3084e5d",
        "24ed7a97464db44592495f98cff8bcee02f92bc2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:45 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)\n  trivial: fix typo in aic7xxx comment\n  trivial: fix comment typo in drivers/ata/pata_hpt37x.c\n  trivial: typo in kernel-parameters.txt\n  trivial: fix typo in tracing documentation\n  trivial: add __init/__exit macros in drivers/gpio/bt8xxgpio.c\n  trivial: add __init macro/ fix of __exit macro location in ipmi_poweroff.c\n  trivial: remove unnecessary semicolons\n  trivial: Fix duplicated word \"options\" in comment\n  trivial: kbuild: remove extraneous blank line after declaration of usage()\n  trivial: improve help text for mm debug config options\n  trivial: doc: hpfall: accept disk device to unload as argument\n  trivial: doc: hpfall: reduce risk that hpfall can do harm\n  trivial: SubmittingPatches: Fix reference to renumbered step\n  trivial: fix typos \"man[ae]g?ment\" -\u003e \"management\"\n  trivial: media/video/cx88: add __init/__exit macros to cx88 drivers\n  trivial: fix typo in CONFIG_DEBUG_FS in gcov doc\n  trivial: fix missing printk space in amd_k7_smp_check\n  trivial: fix typo s/ketymap/keymap/ in comment\n  trivial: fix typo \"to to\" in multiple files\n  trivial: fix typos in comments s/DGBU/DBGU/\n  ...\n"
    },
    {
      "commit": "50223e486cabdcf7e540e519da1f26bab3084e5d",
      "tree": "c5eedda167c7ea83e342f80a9344646c7a99ba35",
      "parents": [
        "e258b80e691f1f3ae83a60aa80eaf7322bd55ec4",
        "a2d693cf650f000ea22351484ee66cf4c2651eef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:51:28 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:\n  HID: Remove duplicate Kconfig entry\n  HID: consolidate connect and disconnect into core code\n  HID: fix non-atomic allocation in hid_input_report\n"
    },
    {
      "commit": "e258b80e691f1f3ae83a60aa80eaf7322bd55ec4",
      "tree": "2233f4d43dede000a210db87733e04c912fdcb31",
      "parents": [
        "abd6633c67925f90775bb74755f9c547e30f1f20"
      ],
      "author": {
        "name": "David Härdeman",
        "email": "david@hardeman.nu",
        "time": "Mon Sep 21 17:04:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "input: add a driver for the Winbond WPCD376I Consumer IR hardware\n\nAdd a driver for the the Consumer IR (CIR) functionality of the Winbond\nWPCD376I chipset (found on e.g. Intel DG45FC motherboards).\n\nSigned-off-by: David Härdeman \u003cdavid@hardeman.nu\u003e\nReviewed-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abd6633c67925f90775bb74755f9c547e30f1f20",
      "tree": "9cb974febc1a30e3914720655cd406cea84c063e",
      "parents": [
        "a976f150a6953da5ccbd40fa6dba3bd7d56f9f67"
      ],
      "author": {
        "name": "David Härdeman",
        "email": "david@hardeman.nu",
        "time": "Mon Sep 21 17:04:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "pnp: add a shutdown method to pnp drivers\n\nThe shutdown method is used by the winbond cir driver to setup the\nhardware for wake-from-S5.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: David Härdeman \u003cdavid@hardeman.nu\u003e\nCc: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a976f150a6953da5ccbd40fa6dba3bd7d56f9f67",
      "tree": "36c0c1b9d424649421dde1f1d553bd17179a5264",
      "parents": [
        "560a64a2b501add585b494b2b9cd9f68c0636b50"
      ],
      "author": {
        "name": "Henrik Rydberg",
        "email": "rydberg@euromail.se",
        "time": "Mon Sep 21 17:04:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "hwmon: applesmc: restore accelerometer and keyboard backlight on resume\n\nOn resume from suspend, the driver currently resets the logical state as\nif it was brought up from halt.  This patch uses the\ndev_pm_ops.resume/restore methods to synchronize the hardware with the\nmemorized logical state, in effect bringing back the accelerometer and\nbacklight to the state prior to suspend.  Works for both suspend to ram\nand hibernation.  The patch has zero effect on the running state.\n\nSigned-off-by: Henrik Rydberg \u003crydberg@euromail.se\u003e\nCc: Nicolas Boichat \u003cnicolas@boichat.ch\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "560a64a2b501add585b494b2b9cd9f68c0636b50",
      "tree": "76ff9e60110a388e551f17b2071405eeea5f1c71",
      "parents": [
        "905ffdc35e50844ab45bbc59d5302238844f8526"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:04:48 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "hwmon: fix freeing of gpio_data and irq\n\nIf already requested, gpio_data and irq should be freed in the case of an\nerror.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "905ffdc35e50844ab45bbc59d5302238844f8526",
      "tree": "13f5fcb88fe9b8f049181234749ea715b509e34b",
      "parents": [
        "f266889517252bc697e7103bcd6ed46bdf2c1579"
      ],
      "author": {
        "name": "Michael Abbott",
        "email": "michael@araneidae.co.uk",
        "time": "Mon Sep 21 17:04:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "drivers/hwmon/adm1021.c: add low_power support for adm1021 driver\n\nOccasionally it is helpful to be able to turn a temperature sensor off\n(for example if it\u0027s making unwanted electrical noise).  This patch\nadds a sysfs node to put any adm1021 compatible device into low power mode.\n\nSigned-off-by: Michael Abbott \u003cmichael.abbott@diamond.ac.uk\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f266889517252bc697e7103bcd6ed46bdf2c1579",
      "tree": "008a9f272f14e1f3b8e6009dc2509d274cf3155a",
      "parents": [
        "dc791f8aeeeea4314beede83d6ee74e6af5f627b"
      ],
      "author": {
        "name": "Michael Abbott",
        "email": "michael@araneidae.co.uk",
        "time": "Mon Sep 21 17:04:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "drivers/hwmon/adm1021.c: support high precision ADM1023 remote sensor\n\nThe ADM1023 temperature sensor supports higher resolution for its external\nsensor (sensitivity of 1/8 deg C).  This patch makes this higher\nresolution available through the appropriate temperature sysfs nodes.\n\nCuriously, this functionality was available in the 2.4 kernel driver (but\nformatted in a less helpful manner).\n\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Michael Abbott \u003cmichael.abbott@diamond.ac.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc791f8aeeeea4314beede83d6ee74e6af5f627b",
      "tree": "15dff38707ba1991a0e822e43ec15a3923c13fef",
      "parents": [
        "2cd9645e2f0d60ed12268fe1738e79c119e2fe5a"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:45 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "lis3_spi: code cleanups\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2cd9645e2f0d60ed12268fe1738e79c119e2fe5a",
      "tree": "91e335cd90f62f1de5acbd1c220f80cad50227db",
      "parents": [
        "8873c33483e62988ed886230aab71ef4c678f710"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:49 2009 -0700"
      },
      "message": "lis3: add power management functions\n\nThis enabled power management functions for the SPI transport layer of the\nlis3 devices.  The device\u0027s suspend mode is only entered in case no wakeup\nthreshold has been given.  In this case, the device is supposed to wake up\nthe system and must thus not be put to deep sleep.\n\n[randy.dunlap@oracle.com: fix lis3-spi for CONFIG_PM\u003dn]\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8873c33483e62988ed886230aab71ef4c678f710",
      "tree": "441cdc48497b84c823330241ecff147642e136a4",
      "parents": [
        "0ec48915e8bbb37dea3df85c41e4c3498b95664b"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:43 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "lis3: add free-fall/wakeup function via platform_data\n\nThis offers a way for platforms to define flags and thresholds for the\nfree-fall/wakeup functions of the lis302d chips.\n\nMore registers needed to be seperated as they are specific to the\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ec48915e8bbb37dea3df85c41e4c3498b95664b",
      "tree": "33818fe22473c3019f10ce1f58f83e003ea4c5af",
      "parents": [
        "0bf41d9f414a5cf558aff234a0ff486257537574"
      ],
      "author": {
        "name": "Daniel Mack",
        "email": "daniel@caiaq.de",
        "time": "Mon Sep 21 17:04:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "lis3: fix typo\n\nBit 0x80 in CTRL_REG3 is an ACTIVE_LOW rather than an ACTIVE_HIGH\nfunction, I got that wrong during my last change.\n\nSigned-off-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0bf41d9f414a5cf558aff234a0ff486257537574",
      "tree": "0ee03f5c5d245f7abedd9be49cef04a9e9d5bd25",
      "parents": [
        "42e41c54d61e32e8a349943607daa53205324d7f"
      ],
      "author": {
        "name": "Michael Riepe",
        "email": "michael.riepe@googlemail.com",
        "time": "Mon Sep 21 17:04:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "drivers/hwmon/coretemp.c: enable the Intel Atom\n\nEnable the coretemp driver on an Intel Atom.\n\nI\u0027m not sure if the readings are correct, however - on my 330, the driver\nreports values between 27 and 41 °C (with core1 being about 8°C hotter\nthan core0, given the same load).  Maybe the maximum temperature of 100 °C\nis wrong for Atom CPUs.\n\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Rudolf Marek \u003cr.marek@assembler.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42e41c54d61e32e8a349943607daa53205324d7f",
      "tree": "a38050a0b2e716100372601262273cdbd195baf8",
      "parents": [
        "0487683096decad0720dfaf80b9d28173d5f6662"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Sep 21 17:04:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: add some common Blackfin checks\n\nAdd checks for Blackfin-specific issues that seem to crop up from time to\ntime.  In particular, we have helper macros to break a 32bit address into\nthe hi/lo parts, and we want to make sure people use the csync/ssync\nvariant that includes fun anomaly workarounds.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Bryan Wu \u003ccooloney@kernel.org\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0487683096decad0720dfaf80b9d28173d5f6662",
      "tree": "506241fcace0596fb4cf1e752d7f8aaa19295c8d",
      "parents": [
        "fb9e9096ba94385b738a8ad6c5864b5778285957"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:39 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: version 0.29\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb9e9096ba94385b738a8ad6c5864b5778285957",
      "tree": "b066899e4c5a4ca033babb068acdc7d0132186c5",
      "parents": [
        "ea71a0a019f913bdf506103bd90140d93a2b83f0"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: limit sN/uN matches to actual bit sizes\n\nLimit our type matcher to the s/u/le/be etc sizes that actually exist to\nprevent miss categorising s2 as a type.  Fix up the spelling of the error\nalso.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ea71a0a019f913bdf506103bd90140d93a2b83f0",
      "tree": "0d5cf1171809bf012054c7a028beb93450a664fa",
      "parents": [
        "77f5b10a82bbd832c99ec4b120d5645342a5b140"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:38 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: format strings should not have brackets in macros\n\nWe should not recommend braces for the following:\n\n    #define pr_fmt(fmt)    \"%s: \" fmt, __func__\n\nallow things with double quotes round them to avoid this check.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77f5b10a82bbd832c99ec4b120d5645342a5b140",
      "tree": "13359c9798da6babc144262b59f777e664ac195e",
      "parents": [
        "30dad6ebecffebddf6b9947d11e31377fa900ff3"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "hannes@hanneseder.net",
        "time": "Mon Sep 21 17:04:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: make -f alias --file, add --help, more verbose help message\n\nImpact:\n  - More verbose help/usage message.\n  - Make the option -f an alias for --file.\n  - On -h, --help, and --version display help message and exit(0).\n  - With no FILE(s) given, exit(1) with \"no input files\".\n  - On invalid options display help/usage and exit(1).\n\nBased on a patch by Pavel Machek.\n\nSigned-off-by: Hannes Eder \u003channes@hanneseder.net\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30dad6ebecffebddf6b9947d11e31377fa900ff3",
      "tree": "105febf76a8f69f2194383bf027cad7e8d257d1f",
      "parents": [
        "113f04a836481e9ecc26e8dee8b0e4d52878a288"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:36 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:48 2009 -0700"
      },
      "message": "checkpatch: indent checks -- stop when we run out of continuation lines\n\nEnsure we terminate when there are no futher continuation lines when\ntrying to determine relative indent of conditionals and their blocks.\n\nReported-by: John Daiker \u003cdaikerjohn@gmail.com\u003e\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "113f04a836481e9ecc26e8dee8b0e4d52878a288",
      "tree": "3f6261a456fd09d2219bb2fe80d90fd0c093f753",
      "parents": [
        "463f28648586721c2191130c9b3c27589dcc11a0"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@fifo99.com",
        "time": "Mon Sep 21 17:04:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "checkpatch: handle C99 comments correctly (performance issue)\n\nThis fixes the sanitation process in checkpatch.pl so that it blocks out\nthe text after a C99 style comment the same way it does with block style\ncomments.  This prevents the text from getting processed as regular code.\n\nSigned-off-by: Daniel Walker \u003cdwalker@fifo99.com\u003e\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "463f28648586721c2191130c9b3c27589dcc11a0",
      "tree": "6b9ae0d46a17cd4cd904168e5e818ef68b6c7a04",
      "parents": [
        "fc0d8d944df0c58cd810f33db82f87dcf5dcc190"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@canonical.com",
        "time": "Mon Sep 21 17:04:34 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "checkpatch: possible types -- else cannot start a type\n\nAn else cannot start a type, it would have to be within a block after the\nelse.  This can trigger false modifier matching.\n\nSigned-off-by: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc0d8d944df0c58cd810f33db82f87dcf5dcc190",
      "tree": "2fb3f712ce4ef5ddd615e145ec1f4afe8f03a689",
      "parents": [
        "45b588d6e5cc172704bac0c998ce54873b149b22"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: add missing kerneldoc annotations\n\nAdd kerneldoc annotations for function formals of type struct flex_array\nand gfp_t which are currently lacking.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45b588d6e5cc172704bac0c998ce54873b149b22",
      "tree": "57a9d3478af60fcf6932c1f61b083b9203ef1ee8",
      "parents": [
        "4af5a2f770cc8575840ccb1514ec76ecb592985c"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: introduce DEFINE_FLEX_ARRAY\n\nFLEX_ARRAY_INIT(element_size, total_nr_elements) cannot determine if\neither parameter is valid, so flex arrays which are statically allocated\nwith this interface can easily become corrupted or reference beyond its\nallocated memory.\n\nThis removes FLEX_ARRAY_INIT() as a struct flex_array initializer since no\ninitializer may perform the required checking.  Instead, the array is now\ndefined with a new interface:\n\n\tDEFINE_FLEX_ARRAY(name, element_size, total_nr_elements)\n\nThis may be prefixed with `static\u0027 for file scope.\n\nThis interface includes compile-time checking of the parameters to ensure\nthey are valid.  Since the validity of both element_size and\ntotal_nr_elements depend on FLEX_ARRAY_BASE_SIZE and FLEX_ARRAY_PART_SIZE,\nthe kernel build will fail if either of these predefined values changes\nsuch that the array parameters are no longer valid.\n\nSince BUILD_BUG_ON() requires compile time constants, several of the\nstatic inline functions that were once local to lib/flex_array.c had to be\nmoved to include/linux/flex_array.h.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4af5a2f770cc8575840ccb1514ec76ecb592985c",
      "tree": "7af18234d7d171a946925e65e987fd51648be3aa",
      "parents": [
        "19da3dd157f8db6fe727ff268dab4791d55a6371"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: add flex_array_shrink function\n\nAdd a new function to the flex_array API:\n\n\tint flex_array_shrink(struct flex_array *fa)\n\nThis function will free all unused second-level pages.  Since elements are\nnow poisoned if they are not allocated with __GFP_ZERO, it\u0027s possible to\nidentify parts that consist solely of unused elements.\n\nflex_array_shrink() returns the number of pages freed.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19da3dd157f8db6fe727ff268dab4791d55a6371",
      "tree": "4259074638b384e765c73542d74dd8f44750068b",
      "parents": [
        "e6de3988aa52debb25a427d085061f3bf1181d54"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: poison free elements\n\nNewly initialized flex_array\u0027s and/or flex_array_part\u0027s are now poisoned\nwith a new poison value, FLEX_ARRAY_FREE.  It\u0027s value is similar to\nPOISON_FREE used in the various slab allocators, but is different to\ndistinguish between flex array\u0027s poisoned kmem and slab allocator poisoned\nkmem.\n\nThis will allow us to identify flex_array_part\u0027s that only contain free\nelements (and free them with an addition to the flex_array API).  This\ncould also be extended in the future to identify `get\u0027 uses on elements\nthat have not been `put\u0027.\n\nIf __GFP_ZERO is passed for a part\u0027s gfp mask, the poisoning is avoided.\nThese elements are considered to be in-use since they have been\ninitialized.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6de3988aa52debb25a427d085061f3bf1181d54",
      "tree": "4a5dd6acac3e73049918c646bd977894335e5560",
      "parents": [
        "2f30b1f9e1b612cdd1a17daeecf514229e8d6a5f"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Sep 21 17:04:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "flex_array: add flex_array_clear function\n\nAdd a new function to the flex_array API:\n\n\tint flex_array_clear(struct flex_array *fa,\n\t\t\t\tunsigned int element_nr)\n\nThis function will zero the element at element_nr in the flex_array.\n\nAlthough this is equivalent to using flex_array_put() and passing a\npointer to zero\u0027d memory, flex_array_clear() does not require such a\npointer to memory that would most likely need to be allocated on the\ncaller\u0027s stack which could be significantly large depending on\nelement_size.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f30b1f9e1b612cdd1a17daeecf514229e8d6a5f",
      "tree": "78be4b31e0fee84c34bcd53270257290098ee058",
      "parents": [
        "efc03ecb9d674588a13aee27289c2af2afe5e6b4"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Mon Sep 21 17:04:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "vsprintf: use WARN_ON_ONCE\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nReviewed-by: Frederic Weisbecker \u003cfweisbec@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": "efc03ecb9d674588a13aee27289c2af2afe5e6b4",
      "tree": "b56e72a17bc11c548eeb31a6dd8a593dbab104f2",
      "parents": [
        "076cfaaece1c4e57ea7d924f38b911b9a5502365"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "MAINTAINERS: move ARM lists to infradead\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nCc: Krzysztof Halasa \u003ckhc@pm.waw.pl\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "076cfaaece1c4e57ea7d924f38b911b9a5502365",
      "tree": "a3a69b96fd5e7ec37c98ee89b732e0ea02a76251",
      "parents": [
        "4e04d5a3d57accb0b05d381aa84d93d3749b15e2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "MAINTAINERS: integrate P:/M: lines\n\nA couple of new uses of separate \"P: name\" \"M: address\" lines are\nconverted to single line \"M: name \u003caddress\u003e\"\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Anil Ravindranath \u003canil_ravindranath@pmc-sierra.com\u003e\nCc: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4e04d5a3d57accb0b05d381aa84d93d3749b15e2",
      "tree": "a77c1f4160ae54042cba85780768b8a400521697",
      "parents": [
        "43368e74d126f8e874fce2c248f094edfcf0baa6"
      ],
      "author": {
        "name": "Felipe Contreras",
        "email": "felipe.contreras@gmail.com",
        "time": "Mon Sep 21 17:04:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:47 2009 -0700"
      },
      "message": "MAINTAINERS: omap: fix regex\n\nOtherwise \u0027arch/arm/*omap*/foo.c\u0027 wouldn\u0027t match\n\nSigned-off-by: Felipe Contreras \u003cfelipe.contreras@gmail.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43368e74d126f8e874fce2c248f094edfcf0baa6",
      "tree": "0a252d2981c8d968a05ca7d1498360c543aee2fe",
      "parents": [
        "b781655a6f6d15bdcc96f2cc1d56b0658f9cf0b4"
      ],
      "author": {
        "name": "Felipe Contreras",
        "email": "felipe.contreras@gmail.com",
        "time": "Mon Sep 21 17:04:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "MAINTAINERS: acpi: add \u0027include/acpi\u0027\n\nSigned-off-by: Felipe Contreras \u003cfelipe.contreras@gmail.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b781655a6f6d15bdcc96f2cc1d56b0658f9cf0b4",
      "tree": "b2b2b1f0cc825333160b929aa48546b587cc4ace",
      "parents": [
        "11ecf53c97863a0609db3816d82f1d0ddf3d2bc2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add maintainers in order listed in matched section\n\nPrevious behavior was \"bottom-up\" in each section from the pattern \"F:\"\nentry that matched.  Now information is entered into the various lists in\nthe \"as entered\" order for each matched section.\n\nThis also allows the F: entry to be put anywhere in a section, not just as\nthe last entries in the section.\n\nAnd a couple of improvements:\n\nDon\u0027t alphabetically sort before outputting the matched scm, status,\nsubsystem and web sections.\n\nIgnore content after a single email address so these entries are acceptable\nM:\tname \u003caddress\u003e whatever other comment\n\nAnd a fix:\n\nMake an M: entry without a name again use the name from an immediately\npreceding P: line if it exists.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "11ecf53c97863a0609db3816d82f1d0ddf3d2bc2",
      "tree": "bea4e471f97f7a5535e03c1e38cdbd588b1a747e",
      "parents": [
        "42498316132e89ca2835b977a7cfb32a83e97b35"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add --remove-duplicates\n\nAllow control over the elimination of duplicate email names and addresses\n\n--remove-duplicates will use the first email name or address presented\n--noremove-duplicates will emit all names and addresses\n\n--remove-duplicates is enabled by default\n\nFor instance:\n\n$ ./scripts/get_maintainer.pl -f drivers/char/tty_ioctl.c\nGreg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAlan Cox \u003calan@linux.intel.com\u003e\nMike Frysinger \u003cvapier@gentoo.org\u003e\nAlexey Dobriyan \u003cadobriyan@gmail.com\u003e\nlinux-kernel@vger.kernel.org\n\n$ ./scripts/get_maintainer.pl -f --noremove-duplicates drivers/char/tty_ioctl.c\nGreg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAlan Cox \u003calan@redhat.com\u003e\nAlan Cox \u003calan@linux.intel.com\u003e\nAlan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nMike Frysinger \u003cvapier@gentoo.org\u003e\nAlexey Dobriyan \u003cadobriyan@gmail.com\u003e\nlinux-kernel@vger.kernel.org\n\nUsing --remove-duplicates could eliminate multiple maintainers that\nshare the same name but not the same email address.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42498316132e89ca2835b977a7cfb32a83e97b35",
      "tree": "1854b2321f90fc546c135b11adcded4429fe299c",
      "parents": [
        "8cbb3a77e1a91073fb279a495a11d5093461dfe5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: using --separator implies --nomultiline\n\nIf a person sets a separator, it\u0027s only used if --nomultiline is set.\nDon\u0027t make the command line also include --nomultiline in that case.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8cbb3a77e1a91073fb279a495a11d5093461dfe5",
      "tree": "847d483a9605e0974df243a4de45487aa31b2aa0",
      "parents": [
        "0e70e83dfd40cac47e1fc3e2f1c7b893ea0cd2f8"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:21 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add .mailmap use, shell and email cleanups\n\nAdd reading and using .mailmap file if it exists\nConvert address entries in .mailmap to first encountered address\nDon\u0027t terminate shell commands with \\n\nStrip characters found after sign-offs by: name \u003caddress\u003e [stripped]\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e70e83dfd40cac47e1fc3e2f1c7b893ea0cd2f8",
      "tree": "119b588cff1fb709402dd88be1204e5b7795c70e",
      "parents": [
        "3fb55652b9f754990e286723f209ce3c07c96d69"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: better email routines, use perl not shell where possible\n\nAdded format_email and parse_email routines to reduce inline use.\n\nAdded email_address_inuse to eliminate multiple maintainer entries\nfor the same email address, the first name encountered is used.\n\nUsed internal perl equivalents of shell cmd use of grep|cut|sort|uniq\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3fb55652b9f754990e286723f209ce3c07c96d69",
      "tree": "6578fa841ae3207a3bb88d2d2c40356f53d637a6",
      "parents": [
        "1d606b4e0bf8fe45e3f88543dfce83207ae0027d"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add --pattern-depth\n\n--pattern-depth is used to control how many levels of directory traversal\nshould be performed to find maintainers.  default is 0 (all directory levels).\n\nFor instance:\n\nMAINTAINERS currently has multiple M: and F: entries that match\nnet/netfilter/ipvs/ip_vs_app.c\n\nIPVS\nM:\tWensong Zhang \u003cwensong@linux-vs.org\u003e\nM:\tSimon Horman \u003chorms@verge.net.au\u003e\nM:\tJulian Anastasov \u003cja@ssi.bg\u003e\n[...]\nF:\tnet/netfilter/ipvs/\n\nNETFILTER/IPTABLES/IPCHAINS\n[...]\nM:\tPatrick McHardy \u003ckaber@trash.net\u003e\n[...]\nF:\tnet/netfilter/\n\nNETWORKING [GENERAL]\nM:\t\"David S. Miller\" \u003cdavem@davemloft.net\u003e\n[...]\nF:\tnet/\n\nTHE REST\nM:\tLinus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n[...]\nF:\t*/\n\nUsing this command will return all of those maintainers:\n(except Linus unless --git-chief-maintainers is specified)\n\n$ ./scripts/get_maintainer.pl --nogit -nol \\\n\t-f net/netfilter/ipvs/ip_vs_app.c\nJulian Anastasov \u003cja@ssi.bg\u003e\nSimon Horman \u003chorms@verge.net.au\u003e\nWensong Zhang \u003cwensong@linux-vs.org\u003e\nPatrick McHardy \u003ckaber@trash.net\u003e\nDavid S. Miller \u003cdavem@davemloft.net\u003e\n\nAdding --pattern-depth\u003d1 will match at the deepest level\n$ ./scripts/get_maintainer.pl --nogit -nol --pattern-depth\u003d1 \\\n\t-f net/netfilter/ipvs/ip_vs_app.c\nJulian Anastasov \u003cja@ssi.bg\u003e\nSimon Horman \u003chorms@verge.net.au\u003e\nWensong Zhang \u003cwensong@linux-vs.org\u003e\n\nAdding --pattern-depth\u003d2 will match at the deepest level and 1 higher\n$ ./scripts/get_maintainer.pl --nogit -nol --pattern-depth\u003d2 \\\n\t-f net/netfilter/ipvs/ip_vs_app.c\nJulian Anastasov \u003cja@ssi.bg\u003e\nSimon Horman \u003chorms@verge.net.au\u003e\nWensong Zhang \u003cwensong@linux-vs.org\u003e\nPatrick McHardy \u003ckaber@trash.net\u003e\n\nand so on.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d606b4e0bf8fe45e3f88543dfce83207ae0027d",
      "tree": "3ce6a2d59ce2240b21d60afc929d58999e9efbc7",
      "parents": [
        "f5492666a3b62344de9026a960c11888160362c9"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add sections in pattern match depth order\n\nBefore this change, matched sections were added in the order\nof appearance in the normally alphabetic section order of\nthe MAINTAINERS file.\n\nFor instance, finding the maintainer for drivers/scsi/wd7000.c\nwould first find \"SCSI SUBSYSTEM\", then \"WD7000 SCSI SUBSYSTEM\",\nthen \"THE REST\".\n\nbefore patch:\n\n$ ./scripts/get_maintainer.pl --nogit -f drivers/scsi/wd7000.c\nJames E.J. Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nMiroslav Zagorac \u003czaga@fly.cc.fer.hr\u003e\nlinux-scsi@vger.kernel.org\nlinux-kernel@vger.kernel.org\n\nget_maintainer.pl now selects matched sections by longest pattern match.\nLongest is the number of \"/\"s and any specific file pattern.\n\nThis changes the example output order of MAINTAINERS to whatever is\nselected in \"WD7000 SUBSYSTEM\", then \"SCSI SYSTEM\", then \"THE REST\".\n\nafter patch:\n\n$ ./scripts/get_maintainer.pl --nogit -f drivers/scsi/wd7000.c\nMiroslav Zagorac \u003czaga@fly.cc.fer.hr\u003e\nJames E.J. Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nlinux-scsi@vger.kernel.org\nlinux-kernel@vger.kernel.org\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f5492666a3b62344de9026a960c11888160362c9",
      "tree": "e9f491186ac1f778817c8b493857d9c84478cb85",
      "parents": [
        "b61d4a71e483fe1aa1c4b170c28d85be77edce4f"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Sep 21 17:04:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "scripts/get_maintainer.pl: add --git-blame\n\nJulia Lawall suggested that get_maintainers.pl should have the\nability to include signatories of commits that are modified by\na particular patch.\n\nVegard Nossum did something similar once.\nhttp://lkml.org/lkml/2008/5/29/449\n\nThe modified script looks the commits for all lines in the\npatch, and includes the \"-by:\" signatories for those commits.\nIt uses the same git-min-percent, git-max-maintainers, and\ngit-min-signatures options.  git-since is ignored.\n\nIt can be used independently from the --git default, so\n        ./scripts/get_maintainers.pl --nogit --git-blame \u003cpatch\u003e\nor\n        ./scripts/get_maintainers.pl --nogit --git-blame -f \u003cfile\u003e\nis acceptable.\n\nIf used with -f \u003cfile\u003e, all lines/commits for the file are\nchecked.\n\n--git-blame can be slow if used with -f \u003cfile\u003e\n--git-blame does not work with -f \u003cdirectory\u003e\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b61d4a71e483fe1aa1c4b170c28d85be77edce4f",
      "tree": "125f223e8f97c1ebbeadc8d5b0681c4d535092ea",
      "parents": [
        "4d04c70754eec6d0fd342a5bc3f684db69cc2226"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "heder@google.com",
        "time": "Mon Sep 21 17:04:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:46 2009 -0700"
      },
      "message": "MAINTAINERS: add IPVS include files\n\nSigned-off-by: Hannes Eder \u003cheder@google.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d04c70754eec6d0fd342a5bc3f684db69cc2226",
      "tree": "4001855784fddcec748e2f9754933a537d04c7d4",
      "parents": [
        "db4e5cbe2f201c6abd51f7dfe41dbd2589affeba"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon Sep 21 17:04:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "uml: fix order of pud and pmd_free()\n\nIf pmd_alloc() fails we should only free the prior allocated pud, if\npte_alloc_map() fails, we should free pmd as well.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db4e5cbe2f201c6abd51f7dfe41dbd2589affeba",
      "tree": "e1db462b358d7242faae23e46bd74fd3f246d7bb",
      "parents": [
        "672917dcc781ead7652a8b11b1fba14e38ac15b8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:10 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "um: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "672917dcc781ead7652a8b11b1fba14e38ac15b8",
      "tree": "c504b7f60737ba8d82eabfa662585d463ae5ea66",
      "parents": [
        "69d25870f20c4b2563304f2b79c5300dd60a067e"
      ],
      "author": {
        "name": "Corrado Zoccolo",
        "email": "czoccolo@gmail.com",
        "time": "Mon Sep 21 17:04:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "cpuidle: menu governor: reduce latency on exit\n\nMove the state residency accounting and statistics computation off the hot\nexit path.\n\nOn exit, the need to recompute statistics is recorded, and new statistics\nwill be computed when menu_select is called again.\n\nThe expected effect is to reduce processor wakeup latency from sleep\n(C-states).  We are speaking of few hundreds of cycles reduction out of a\nseveral microseconds latency (determined by the hardware transition), so\nit is difficult to measure.\n\nSigned-off-by: Corrado Zoccolo \u003cczoccolo@gmail.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Adam Belay \u003cabelay@novell.com\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69d25870f20c4b2563304f2b79c5300dd60a067e",
      "tree": "cda2b2d65c1be95420c6ba92ae2d40fade4232c4",
      "parents": [
        "45d80eea87c9f8292d2d33173d6866c0ec57238a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Mon Sep 21 17:04:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "cpuidle: fix the menu governor to boost IO performance\n\nFix the menu idle governor which balances power savings, energy efficiency\nand performance impact.\n\nThe reason for a reworked governor is that there have been serious\nperformance issues reported with the existing code on Nehalem server\nsystems.\n\nTo show this I\u0027m sure Andrew wants to see benchmark results:\n(benchmark is \"fio\", \"no cstates\" is using \"idle\u003dpoll\")\n\n\t\tno cstates\tcurrent linux\tnew algorithm\n1 disk\t\t107 Mb/s\t85 Mb/s\t\t105 Mb/s\n2 disks\t\t215 Mb/s\t123 Mb/s\t209 Mb/s\n12 disks\t590 Mb/s\t320 Mb/s\t585 Mb/s\n\nIn various power benchmark measurements, no degredation was found by our\nmeasurement\u0026diagnostics team.  Obviously a small percentage more power was\nused in the \"fio\" benchmark, due to the much higher performance.\n\nWhile it would be a novel idea to describe the new algorithm in this\ncommit message, I cheaped out and described it in comments in the code\ninstead.\n\n[changes since first post: spelling fixes from akpm, review feedback,\nfolded menu-tng into menu.c]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45d80eea87c9f8292d2d33173d6866c0ec57238a",
      "tree": "2286da07cdadfb600200679cf9d0090278a39230",
      "parents": [
        "4ad4c76b7afb71774b846b322ad2ae42f814331a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:44 2009 -0700"
      },
      "message": "m68k: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ad4c76b7afb71774b846b322ad2ae42f814331a",
      "tree": "eae834caeb70f70c1112113628cf6f94a0bdfd14",
      "parents": [
        "ef187fd799c50e15dbb56a0286c81bf467bd0201"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Sep 21 17:04:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m68k: convert to use arch_gettimeoffset()\n\nConvert m68k to use GENERIC_TIME via the arch_getoffset() infrastructure,\nreducing the amount of arch specific code we need to maintain.\n\nI\u0027ve taken my best swing at converting this, but I\u0027m not 100% confident\nI got it right. My cross-compiler is now out of date (gcc4.2) so I\nwasn\u0027t able to  check if it compiled. Any assistance from arch\nmaintainers or testers to get this merged would be great.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef187fd799c50e15dbb56a0286c81bf467bd0201",
      "tree": "34753f6f10b3bd07c0d832c06338bfbdd73342b2",
      "parents": [
        "95ad759c6b0f30ad9aa5efbdbcecb9597238c00f"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 21 17:04:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m32r: convert to asm-generic/hardirq.h\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95ad759c6b0f30ad9aa5efbdbcecb9597238c00f",
      "tree": "596e961f86340694d205b652de02c90a16546b90",
      "parents": [
        "d5a6d1739526ed8c383db3dabc232bc15603439a"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Sep 21 17:04:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:43 2009 -0700"
      },
      "message": "m32r: convert to use arch_gettimeoffset()\n\nConvert m32r to use GENERIC_TIME via the arch_getoffset() infrastructure,\nreducing the amount of arch specific code we need to maintain.\n\nI also noted that m32r doesn\u0027t seem to be taking the xtime write lock\nbefore calling do_timer()!  That looks like a pretty bad bug to me.  If\nfolks agree, let me know and I can move the lock grab to the correct spot.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "d5a6d1739526ed8c383db3dabc232bc15603439a"
}
