)]}'
{
  "log": [
    {
      "commit": "73937f5face75e05ec2a72966d04f4e20aa18379",
      "tree": "f3c12b4daec9f72dbecc33001f33ee210c046fec",
      "parents": [
        "3063b5a519b392dd13afd2ffe820eba312db2759"
      ],
      "author": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Thu May 24 23:33:05 2012 +0300"
      },
      "committer": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Thu May 24 23:33:05 2012 +0300"
      },
      "message": "block: ioctl support for sanitize in eMMC 4.5\n\nAdding a new ioctl to support sanitize operation in eMMC\ncards version 4.5.\nThe sanitize ioctl support helps performing this operation\nvia user application.\n\nChange-Id: I79aa4163e7753a75bed5a26a9a92de902b4b9c21\nSigned-off-by: Yaniv Gardi \u003cygardi@codeaurora.org\u003e\nSigned-off-by: Maya Erez \u003cmerez@codeaurora.org\u003e\n"
    },
    {
      "commit": "364da7c6dda2d9f41cb4ab715da204bc9923f3e2",
      "tree": "fca4bceb70a6a4cdafd06829690a7cba5934a41b",
      "parents": [
        "eac0d1edf21ab5a46867fbfea5af621227738083"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Mon Apr 23 10:42:01 2012 -0700"
      },
      "committer": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Mon Apr 23 14:29:54 2012 -0700"
      },
      "message": "vsprintf: Fix %ps on non symbols when using kallsyms\n\nUsing %ps in a printk format will sometimes fail silently and\nprint the empty string if the address passed in does not match a\nsymbol that kallsyms knows about. But using %pS will fall back to\nprinting the full address if kallsyms can\u0027t find the symbol. Make\n%ps act the same as %pS by falling back to printing the address.\n\nWhile we\u0027re here also make %ps print the module that a symbol\ncomes from so that it matches what %pS already does. Take this\nsimple function for example (in a module):\n\n\tstatic void test_printk(void)\n\t{\n\t\tint test;\n\t\tpr_info(\"with pS: %pS\\n\", \u0026test);\n\t\tpr_info(\"with ps: %ps\\n\", \u0026test);\n\t}\n\nBefore this patch:\n\n with pS: 0xdff7df44\n with ps:\n\nAfter this patch:\n\n with pS: 0xdff7df44\n with ps: 0xdff7df44\n\nChange-Id: Id03d74b079d40fe24b07a978909faedc741e281a\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    },
    {
      "commit": "28976a80e961f491e51c1cb627311efc4981b69a",
      "tree": "be065d16c3a99c8666bc908d8806417c217a04de",
      "parents": [
        "2e9581fb01d6e7ae16d2e3d0547bb378d7f562a9"
      ],
      "author": {
        "name": "Hanumant Singh",
        "email": "hanumant@codeaurora.org",
        "time": "Wed Apr 18 14:14:21 2012 -0700"
      },
      "committer": {
        "name": "Hanumant Singh",
        "email": "hanumant@codeaurora.org",
        "time": "Wed Apr 18 14:14:21 2012 -0700"
      },
      "message": "DMM: Fix for movable bytes near end of address space\n\nTo prevent overflow near 4GB memory address, the rounding down of\nmemory addresses needs to be propagated to the memory hotplug logic.\nChecking if a given pfn is part of physical ram allows us to do this.\nAlso while walking through system ram, we need to take care of\noverflow at high memory address.\n\nChange-Id: Id962cf93906888783a807fe89f2be4ba91b2c5d6\nSigned-off-by: Hanumant Singh \u003chanumant@codeaurora.org\u003e\n"
    },
    {
      "commit": "bdc10554f997962a1e8bb9085643bc4628fb1ac4",
      "tree": "2cd492c677ac8300cea608bdd11f19eabed8e003",
      "parents": [
        "30ad10bf5b5944d4cdcbc428f47dcd3113e76a81",
        "2a1070625528cbb42466661988f82c19b47002ab"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Sat Mar 31 16:58:55 2012 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Sat Mar 31 16:58:56 2012 -0700"
      },
      "message": "Merge \"sched: Fix __schedule_bug() output when called from an interrupt\" into msm-3.0"
    },
    {
      "commit": "a76e99abc558aed633ba28ff61c5328116292bf3",
      "tree": "60f7677f0baafa00825accc1214839246b3e78dd",
      "parents": [
        "a54734678ff9cb97938b9f7648547174f3b118e4",
        "1d05f993784973189395051cc711fdd6dd5eb389"
      ],
      "author": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Mar 30 00:09:34 2012 -0700"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Mar 30 00:09:34 2012 -0700"
      },
      "message": "Merge branch \u0027Linux 3.0.21\u0027 into msm-3.0\n\nMerge Upstream\u0027s stable 3.0.21 branch into msm-3.0\nThis consists 814 commits and some merge conflicts.\n\nThe merge conflicts are because of some local changes to\nmsm-3.0 as well as some conflicts between google\u0027s tree and\nthe upstream tree.\n\nConflicts:\n\tarch/arm/kernel/head.S\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n\tdrivers/mmc/core/core.c\n\tdrivers/tty/serial/serial_core.c\n\tdrivers/usb/host/ehci-hub.c\n\tdrivers/usb/serial/qcserial.c\n\tfs/namespace.c\n\tfs/proc/base.c\n\nChange-Id: I62e2edbe213f84915e27f8cd6e4f6ce23db22a21\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "2a1070625528cbb42466661988f82c19b47002ab",
      "tree": "2972386fbfffb9379393156ccdfc68fee28e7fcb",
      "parents": [
        "62ed9ac5c02f94c8ae007f19248ca9b130eadee4"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Wed Mar 28 16:36:13 2012 -0700"
      },
      "committer": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Wed Mar 28 17:13:01 2012 -0700"
      },
      "message": "sched: Fix __schedule_bug() output when called from an interrupt\n\nIf schedule is called from an interrupt handler __schedule_bug()\nwill call show_regs() with the registers saved during the\ninterrupt handling done in do_IRQ(). This means we\u0027ll see the\nregisters and the backtrace for the process that was interrupted\nand not the full backtrace explaining who called schedule().\n\nThis is due to 838225b (sched: use show_regs() to improve\n__schedule_bug() output, 2007-10-24) which improperly assumed\nthat get_irq_regs() would return the registers for the current\nstack because it is being called from within an interrupt\nhandler. Simply remove the show_reg() code so that we dump a\nbacktrace for the interrupt handler that called schedule().\n\nChange-Id: I2922e793bed4c2bf3f1e5d1be851c8d61a384fee\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    },
    {
      "commit": "d4e3d523925a6b0b31d96b78a052702c70c68135",
      "tree": "57a24f74de3a76fed38a56f66c48748c8e3c0199",
      "parents": [
        "1942f21b1d31ef46ecaad76f963f2b889537ab12",
        "5ded52c2167dd3664cda89ebcd4e9aaaa37dd03a"
      ],
      "author": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Wed Mar 28 16:03:47 2012 -0700"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Wed Mar 28 16:03:47 2012 -0700"
      },
      "message": "Merge branch \u0027google-android\u0027 into msm-3.0\n\nMerge Google\u0027s Android tree into msm-3.0\nThis consists of the following conflicts and 42 commits:\n\nConflicts:\n\tdrivers/mmc/core/bus.c\n\tdrivers/rtc/class.c\n\tdrivers/usb/gadget/android.c\n\nMost of the conflicts stem from the changes made to the\nlocal msm-3.0 branch.\n\ncommit 1f8c5cecfe44994cd617ba2803f41fb56d53e91c\nAuthor: Heiko Stuebner \u003cheiko@sntech.de\u003e\nDate:   Wed Feb 1 10:33:01 2012 -0800\n\n    Input: evdev - fix variable initialisation\n\n    Commit 509f87c5f564 (evdev - do not block waiting for an event if\n    fd\n    is nonblock) created a code path were it was possible to use retval\n    uninitialized.\n\n    This could lead to the xorg evdev input driver getting corrupt data\n    and refusing to work with log messages like\n    \tAUO-Pixcir touchscreen: Read error: Success\n    \tsg060_keys: Read error: Success\n    \tAUO-Pixcir touchscreen: Read error: Success\n    \tsg060_keys: Read error: Success\n    (for drivers auo-pixcir-ts and gpio-keys).\n\n    Signed-off-by: Heiko Stuebner \u003cheiko@sntech.de\u003e\n\n drivers/input/evdev.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit 4dc43d7079bdae572212368e1d29abea0177c932\nAuthor: Arve Hjønnevåg \u003carve@android.com\u003e\nDate:   Fri Oct 17 15:20:55 2008 -0700\n\n    Input: evdev - Add ioctl to block suspend while event queue is not empty.\n\n    Add an ioctl, EVIOCSSUSPENDBLOCK, to enable a wakelock that will block\n    suspend while the event queue is not empty. This allows userspace code to\n    process input events while the device appears to be asleep.\n\n    The current code holds the wakelock for up 5 seconds for every input\n    device and client. This can prevent suspend if sensor with a high data\n    rate is active, even when that sensor is not capable of waking the\n    device once it is suspended.\n\n    Change-Id: I624d66ef30a0b3abb543685c343382b8419b42b9\n    Signed-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n\n drivers/input/evdev.c |   53 +++++++++++++++++++++++++++++++++++++++++++-----\n include/linux/input.h |    3 ++\n 2 files changed, 50 insertions(+), 6 deletions(-)\n\ncommit 7cc846069a8a9116d8c81526c459070eed0e3477\nAuthor: Arve Hjønnevåg \u003carve@android.com\u003e\nDate:   Mon Jan 23 17:15:45 2012 -0800\n\n    Input: evdev - Don\u0027t hold wakelock when no data is available to user-space\n\n    If there is no SYN_REPORT event in the buffer the buffer data is invisible\n    to user-space. The wakelock should not be held in this case.\n\n    Change-Id: Idae890ff0da8eb46a2cfce61a95b3a97252551ad\n    Signed-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n\n drivers/input/evdev.c |    5 +++--\n 1 files changed, 3 insertions(+), 2 deletions(-)\n\ncommit 0e80804a2e8134e31d4d32679bdfff070fc64bca\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Jan 31 11:06:23 2012 -0800\n\n    net: wireless: bcmdhd: Increase pm_notify callback priority\n\n    Make pm_notify callback to be called the first on suspend/resume path to\n    ensure it will always be called.\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_linux.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit dfc896e1c833916ef5062294e2d675d66294ac68\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Mon Jan 30 15:43:31 2012 -0800\n\n    net: wireless: bcmdhd: Fix crash on dhdsdio_probe_attach() failure\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_linux.c |   17 ++++++++++++++---\n drivers/net/wireless/bcmdhd/dhd_sdio.c  |    8 +++++++-\n 2 files changed, 21 insertions(+), 4 deletions(-)\n\ncommit 256a6b23be368f708672eb5929e961afc872f610\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Mon Jan 30 13:03:19 2012 -0800\n\n    net: wireless: bcmdhd: Daemonize wl_event_handler\n\n    Daemonizing makes thread (besides other things) NON-FREEZABLE, and it will not\n    get fake signal on suspend to quicl down_interruptible()\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_linux.c        |   13 -------------\n drivers/net/wireless/bcmdhd/include/linuxver.h |   12 ++++++++++++\n drivers/net/wireless/bcmdhd/wl_cfg80211.c      |    3 +++\n 3 files changed, 15 insertions(+), 13 deletions(-)\n\ncommit ff93146589f6f28ba8a46f85e9b319bbd2cc8cfd\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Jan 24 13:59:40 2012 -0800\n\n    net: wireless: bcmdhd: Update to Version 5.90.195.23\n\n    - WFD fixes\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_cfg80211.c    |  269 -------------------------\n drivers/net/wireless/bcmdhd/dhd_linux.c       |    2 +-\n drivers/net/wireless/bcmdhd/dhd_sdio.c        |    8 +-\n drivers/net/wireless/bcmdhd/include/epivers.h |    8 +-\n drivers/net/wireless/bcmdhd/siutils.c         |    5 +\n drivers/net/wireless/bcmdhd/wl_cfg80211.c     |  223 +++++++++++++++------\n drivers/net/wireless/bcmdhd/wl_cfgp2p.c       |  175 ++++++++++++++++-\n drivers/net/wireless/bcmdhd/wl_cfgp2p.h       |   37 ++--\n 8 files changed, 368 insertions(+), 359 deletions(-)\n\ncommit 96034c20069fe841f4be741755f94671a328702e\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Jan 24 13:55:00 2012 -0800\n\n    net: wireless: bcmdhd: Update to Version 5.90.195.22\n\n    - Disable Ad-hoc support for cfg80211\n    - dhd_linux.c: Fix incorrect pid check\n    - Merge Android changes from Android tree\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/bcmsdh_linux.c       |   24 ++------------------\n drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c |   25 +++++++++++++++------\n drivers/net/wireless/bcmdhd/dhd_linux.c          |   10 ++++----\n drivers/net/wireless/bcmdhd/dhd_sdio.c           |   11 +++++++--\n drivers/net/wireless/bcmdhd/hndpmu.c             |   16 ++++++++++++++\n drivers/net/wireless/bcmdhd/include/bcmdevs.h    |    2 +\n drivers/net/wireless/bcmdhd/include/epivers.h    |    8 +++---\n drivers/net/wireless/bcmdhd/siutils.c            |    3 ++\n drivers/net/wireless/bcmdhd/wl_cfg80211.c        |   11 ++++++++-\n 9 files changed, 68 insertions(+), 42 deletions(-)\n\ncommit 494661a1acbd4767e4d7daaff8d7ce55328913d9\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Jan 24 13:47:47 2012 -0800\n\n    net: wireless: bcmdhd: Update to Version 5.90.195.19\n\n    - Add WFD changes\n    - Add extra locking for internal ioctl operations\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/Makefile               |    4 +-\n drivers/net/wireless/bcmdhd/bcmsdh_linux.c         |   25 +-\n drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c         |    4 +-\n drivers/net/wireless/bcmdhd/dhd.h                  |   10 +-\n drivers/net/wireless/bcmdhd/dhd_cdc.c              |    7 +-\n drivers/net/wireless/bcmdhd/dhd_cfg80211.c         |  862 ++++++++\n drivers/net/wireless/bcmdhd/dhd_cfg80211.h         |   42 +\n drivers/net/wireless/bcmdhd/dhd_common.c           |    7 +-\n drivers/net/wireless/bcmdhd/dhd_linux.c            |  103 +-\n drivers/net/wireless/bcmdhd/dhd_linux_mon.c        |  409 ----\n drivers/net/wireless/bcmdhd/dhd_sdio.c             |    4 +-\n drivers/net/wireless/bcmdhd/include/dhdioctl.h     |    3 +-\n drivers/net/wireless/bcmdhd/include/epivers.h      |    8 +-\n drivers/net/wireless/bcmdhd/include/proto/802.11.h |   12 +-\n drivers/net/wireless/bcmdhd/include/wlioctl.h      |   19 +-\n drivers/net/wireless/bcmdhd/wl_android.c           |   22 +-\n drivers/net/wireless/bcmdhd/wl_android.h           |    2 +-\n drivers/net/wireless/bcmdhd/wl_cfg80211.c          | 2142 ++++++--------------\n drivers/net/wireless/bcmdhd/wl_cfg80211.h          |  125 +-\n drivers/net/wireless/bcmdhd/wl_cfgp2p.c            |  245 ++-\n drivers/net/wireless/bcmdhd/wl_cfgp2p.h            |   27 +-\n drivers/net/wireless/bcmdhd/wl_linux_mon.c         |  409 ++++\n drivers/net/wireless/bcmdhd/wldev_common.c         |   69 +-\n drivers/net/wireless/bcmdhd/wldev_common.h         |   20 +-\n 24 files changed, 2485 insertions(+), 2095 deletions(-)\n\ncommit 1dddb0cc0de2840a2fe43a02fcb0196bb5cb86c8\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Jan 24 13:37:34 2012 -0800\n\n    net: wireless: bcmdhd: Update to Version 5.90.195.15\n\n    - Add WFD concurrent mode support\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/bcmevent.c             |    8 +-\n drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c   |   12 +-\n drivers/net/wireless/bcmdhd/bcmutils.c             |    4 +-\n drivers/net/wireless/bcmdhd/dhd.h                  |   25 +-\n drivers/net/wireless/bcmdhd/dhd_cdc.c              |    9 +-\n drivers/net/wireless/bcmdhd/dhd_common.c           |    4 +-\n drivers/net/wireless/bcmdhd/dhd_linux.c            |  148 +++--\n drivers/net/wireless/bcmdhd/dhd_linux_mon.c        |   28 +-\n drivers/net/wireless/bcmdhd/dhd_sdio.c             |   27 +-\n drivers/net/wireless/bcmdhd/dhd_wlfc.h             |   12 +-\n drivers/net/wireless/bcmdhd/hndpmu.c               |   44 +-\n drivers/net/wireless/bcmdhd/include/Makefile       |    2 +-\n drivers/net/wireless/bcmdhd/include/aidmp.h        |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmcdc.h       |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmdefs.h      |   37 +-\n drivers/net/wireless/bcmdhd/include/bcmdevs.h      |  573 +++++++++++++-\n drivers/net/wireless/bcmdhd/include/bcmendian.h    |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmpcispi.h    |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmperf.h      |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmsdbus.h     |   10 +-\n drivers/net/wireless/bcmdhd/include/bcmsdh.h       |   10 +-\n drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmsdpcm.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmsdspi.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmsdstd.h     |   34 +-\n drivers/net/wireless/bcmdhd/include/bcmspi.h       |    2 +-\n drivers/net/wireless/bcmdhd/include/bcmutils.h     |   14 +-\n drivers/net/wireless/bcmdhd/include/bcmwifi.h      |    2 +-\n drivers/net/wireless/bcmdhd/include/dhdioctl.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/epivers.h      |   14 +-\n drivers/net/wireless/bcmdhd/include/hndpmu.h       |    2 +-\n .../net/wireless/bcmdhd/include/hndrte_armtrap.h   |    2 +-\n drivers/net/wireless/bcmdhd/include/hndrte_cons.h  |    2 +-\n drivers/net/wireless/bcmdhd/include/hndsoc.h       |    2 +-\n drivers/net/wireless/bcmdhd/include/htsf.h         |    2 +-\n drivers/net/wireless/bcmdhd/include/linux_osl.h    |    2 +-\n drivers/net/wireless/bcmdhd/include/linuxver.h     |    6 +-\n drivers/net/wireless/bcmdhd/include/miniopt.h      |    2 +-\n drivers/net/wireless/bcmdhd/include/msgtrace.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/osl.h          |    2 +-\n .../wireless/bcmdhd/include/packed_section_end.h   |    2 +-\n .../wireless/bcmdhd/include/packed_section_start.h |    2 +-\n drivers/net/wireless/bcmdhd/include/pcicfg.h       |   28 +-\n drivers/net/wireless/bcmdhd/include/proto/802.11.h |  317 +++++++-\n .../net/wireless/bcmdhd/include/proto/802.11_bta.h |    2 +-\n .../net/wireless/bcmdhd/include/proto/802.11e.h    |    2 +-\n drivers/net/wireless/bcmdhd/include/proto/802.1d.h |    2 +-\n drivers/net/wireless/bcmdhd/include/proto/bcmeth.h |    2 +-\n .../net/wireless/bcmdhd/include/proto/bcmevent.h   |    9 +-\n drivers/net/wireless/bcmdhd/include/proto/bcmip.h  |    2 +-\n .../net/wireless/bcmdhd/include/proto/bt_amp_hci.h |    2 +-\n drivers/net/wireless/bcmdhd/include/proto/eapol.h  |    2 +-\n .../net/wireless/bcmdhd/include/proto/ethernet.h   |    3 +-\n drivers/net/wireless/bcmdhd/include/proto/p2p.h    |    2 +-\n drivers/net/wireless/bcmdhd/include/proto/sdspi.h  |    2 +-\n drivers/net/wireless/bcmdhd/include/proto/vlan.h   |    2 +-\n drivers/net/wireless/bcmdhd/include/proto/wpa.h    |   12 +-\n drivers/net/wireless/bcmdhd/include/sbchipc.h      |  168 ++++-\n drivers/net/wireless/bcmdhd/include/sbconfig.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/sbhnddma.h     |    6 +-\n drivers/net/wireless/bcmdhd/include/sbpcmcia.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/sbsdio.h       |    2 +-\n drivers/net/wireless/bcmdhd/include/sbsdpcmdev.h   |    2 +-\n drivers/net/wireless/bcmdhd/include/sbsocram.h     |    2 +-\n drivers/net/wireless/bcmdhd/include/sdio.h         |    5 +-\n drivers/net/wireless/bcmdhd/include/sdioh.h        |   32 +-\n drivers/net/wireless/bcmdhd/include/sdiovar.h      |    2 +-\n drivers/net/wireless/bcmdhd/include/siutils.h      |   30 +-\n drivers/net/wireless/bcmdhd/include/trxhdr.h       |    3 +-\n drivers/net/wireless/bcmdhd/include/typedefs.h     |    5 +-\n drivers/net/wireless/bcmdhd/include/wlfc_proto.h   |    2 +-\n drivers/net/wireless/bcmdhd/include/wlioctl.h      |   87 ++-\n drivers/net/wireless/bcmdhd/linux_osl.c            |   23 +-\n drivers/net/wireless/bcmdhd/siutils.c              |  195 +++++-\n drivers/net/wireless/bcmdhd/wl_android.c           |    6 +-\n drivers/net/wireless/bcmdhd/wl_cfg80211.c          |  875 ++++++++++++--------\n drivers/net/wireless/bcmdhd/wl_cfg80211.h          |  282 +++++---\n drivers/net/wireless/bcmdhd/wl_cfgp2p.c            |  165 ++++-\n drivers/net/wireless/bcmdhd/wl_cfgp2p.h            |   12 +-\n drivers/net/wireless/bcmdhd/wl_iw.c                |  110 +++-\n drivers/net/wireless/bcmdhd/wl_iw.h                |   17 +-\n 81 files changed, 2737 insertions(+), 752 deletions(-)\n\ncommit 52bdb6f54335bce7861d756ce1eb03ea9b7adb8f\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Mon Jan 23 12:47:21 2012 -0800\n\n    net: wireless: bcmdhd: Add WIPHY_FLAG_SUPPORTS_FW_ROAM flag\n\n    Adding this flag will allow NL80211_ATTR_ROAM_SUPPORT, and will set\n      WPA_DRIVER_FLAGS_BSS_SELECTION flag in wpa_supplicant\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/wl_cfg80211.c |    4 +++-\n 1 files changed, 3 insertions(+), 1 deletions(-)\n\ncommit b1a94205e9ab943d4c18f8e0a081b32bc8bd1f50\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Fri Jan 20 14:15:05 2012 -0800\n\n    net: wireless: bcmdhd: Fake PNO event to wake up the wpa_supplicant\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_linux.c   |    4 +++-\n drivers/net/wireless/bcmdhd/wl_cfg80211.c |   20 ++++++++++++++++----\n 2 files changed, 19 insertions(+), 5 deletions(-)\n\ncommit 09701e3edf03f92f4215aad83b32cd8cec7fb689\nAuthor: Scott Anderson \u003csaa@google.com\u003e\nDate:   Wed Jan 18 15:56:51 2012 -0800\n\n    usb: gadget: android: Honor CONFIG_USB_GADGET_VBUS_DRAW\n\n    The maximum current draw was hard coded to 500 mA.  composite.c\n    has code that uses CONFIG_USB_GADGET_VBUS_DRAW to set the\n    bMaxPower and to set whether or not the device is self-powered if\n    they haven\u0027t been set.  This change removes the code in android.c\n    to allow composite.c to set them.\n\n    Change-Id: I9db37922e91ee86e9e5c0e14519e119e5c41ca48\n    Signed-off-by: Scott Anderson \u003csaa@google.com\u003e\n\n drivers/usb/gadget/android.c |    3 ---\n 1 files changed, 0 insertions(+), 3 deletions(-)\n\ncommit a6ccb73389f3df11e788bf84254a7b27c430f949\nAuthor: Benoit Goby \u003cbenoit@android.com\u003e\nDate:   Fri Jan 20 14:42:41 2012 -0800\n\n    usb: gadget: Fix usb string id allocation\n\n    Don\u0027t reset next_string_id every time the gadget is enabled, this makes\n    the next strings allocated overwrite strings allocated at probe time.\n    Instead, fix rndis not to allocate new string ids on every config bind.\n\n    Change-Id: Ied28ee416bb6f00c434c34176fe5b7f0dcb2b2d4\n    Signed-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n\n drivers/usb/gadget/android.c |    1 -\n drivers/usb/gadget/f_rndis.c |   12 +++++-------\n drivers/usb/gadget/rndis.c   |   11 +++++++++++\n 3 files changed, 16 insertions(+), 8 deletions(-)\n\ncommit 87159de9c30dab02b84cbaffa7498140d4ebc1a1\nAuthor: Jouni Malinen \u003cjouni@qca.qualcomm.com\u003e\nDate:   Thu Aug 11 11:46:22 2011 +0300\n\n    nl80211/cfg80211: Make addition of new sinfo fields safer\n\n    Add a comment pointing out the use of enum station_info_flags for\n    all new struct station_info fields. In addition, memset the sinfo\n    buffer to zero before use on all paths in the current tree to avoid\n    leaving uninitialized pointers in the data.\n\n    Signed-off-by: Jouni Malinen \u003cjouni@qca.qualcomm.com\u003e\n    Signed-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n include/net/cfg80211.h  |    5 +++++\n net/mac80211/sta_info.c |    1 +\n net/wireless/nl80211.c  |    1 +\n 3 files changed, 7 insertions(+), 0 deletions(-)\n\ncommit d692df224b8605095cb7f770c1c99d3150834daf\nAuthor: Jouni Malinen \u003cjouni@qca.qualcomm.com\u003e\nDate:   Mon Aug 8 12:11:52 2011 +0300\n\n    cfg80211/nl80211: Send AssocReq IEs to user space in AP mode\n\n    When user space SME/MLME (e.g., hostapd) is not used in AP mode, the\n    IEs from the (Re)Association Request frame that was processed in\n    firmware need to be made available for user space (e.g., RSN IE for\n    hostapd). Allow this to be done with cfg80211_new_sta().\n\n    Signed-off-by: Jouni Malinen \u003cjouni@qca.qualcomm.com\u003e\n    Acked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n    Signed-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n include/net/cfg80211.h |    8 ++++++++\n net/wireless/nl80211.c |    4 ++++\n 2 files changed, 12 insertions(+), 0 deletions(-)\n\ncommit d1e94136fc4fe8ea608f4e9d21befa00c86e1e29\nAuthor: Dima Zavin \u003cdima@android.com\u003e\nDate:   Mon Jan 23 10:39:02 2012 -0800\n\n    misc: remove android pmem driver, it\u0027s obsolete.\n\n    Change-Id: I48d9778007e1e9eed2bb34e33ceee818c23afaa5\n    Signed-off-by: Dima Zavin \u003cdima@android.com\u003e\n\n drivers/misc/Kconfig         |    4 -\n drivers/misc/Makefile        |    1 -\n drivers/misc/pmem.c          | 1345 ------------------------------------------\n include/linux/android_pmem.h |   93 ---\n 4 files changed, 0 insertions(+), 1443 deletions(-)\n\ncommit dac306d896642f3dfcd878ab6a0a5b8c123722f3\nAuthor: Dima Zavin \u003cdima@android.com\u003e\nDate:   Thu Jan 19 09:51:07 2012 -0800\n\n    Revert \"proc: enable writing to /proc/pid/mem\"\n\n    This reverts commit 198214a7ee50375fa71a65e518341980cfd4b2f0.\n\n fs/proc/base.c |    5 +++++\n 1 files changed, 5 insertions(+), 0 deletions(-)\n\ncommit a65e28a0149261776678977962cfa0f90973e1d4\nAuthor: Dima Zavin \u003cdima@android.com\u003e\nDate:   Thu Jan 12 15:55:25 2012 -0800\n\n    ram_console: set CON_ANYTIME console flag\n\n    We want to ensure that we get all the console messages, even ones\n    that occur while the printing CPU is not yet online.\n\n    Change-Id: I1d2694d05ac9415669a92f38efdd8e71c927705b\n    Signed-off-by: Dima Zavin \u003cdima@android.com\u003e\n\n drivers/staging/android/ram_console.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit f16e6fb3e3bbbc279579b3c3def7951787c88a0a\nAuthor: Benoit Goby \u003cbenoit@android.com\u003e\nDate:   Thu Dec 15 18:40:37 2011 -0800\n\n    Revert \"usb: gadget: rndis: don\u0027t use dev_get_stats\"\n\n    This reverts commit ffdab0c0c40bab6de78b1952bb07aed221994b73.\n\n    Not needed anymore in 2.6.39 and 3.0, dev_get_stats has been fixed\n    and may be called from atomic context. See:\n    1ac9ad1 net: remove dev_txq_stats_fold()\n\n drivers/usb/gadget/rndis.c |   23 ++---------------------\n 1 files changed, 2 insertions(+), 21 deletions(-)\n\ncommit e1493f1544e804f228efd4a48a843bb1d81d2d2c\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Mon Dec 19 10:24:09 2011 -0800\n\n    net: wireless: bcmdhd: Enable wlan access on resume for all sdio functions\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c |    4 +---\n 1 files changed, 1 insertions(+), 3 deletions(-)\n\ncommit bbd08c6e95880dfc3bf1fe9b07486beb33a9cdd1\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Fri Dec 16 12:54:51 2011 -0800\n\n    net: wireless: bcmdhd: Fix P2P interface removal\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_linux.c   |    3 ++\n drivers/net/wireless/bcmdhd/wl_cfg80211.c |   43 ++++++++++++++++++++++-------\n drivers/net/wireless/bcmdhd/wl_cfg80211.h |    9 ++++--\n 3 files changed, 42 insertions(+), 13 deletions(-)\n\ncommit 37ff4411a5f5ce21feb3825296308f2a767e3662\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Thu Dec 15 12:12:20 2011 -0800\n\n    net: wireless: bcm4329: Fix pno_enable if disassociated\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcm4329/dhd_common.c |   43 ++++++++++++++++++++++++-----\n 1 files changed, 36 insertions(+), 7 deletions(-)\n\ncommit 599c8566fa1f34f297df6c683c23a213ff748d02\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Dec 13 17:39:48 2011 -0800\n\n    net: wireless: bcmdhd: Fix proper scan command even if request is NULL\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/wl_cfg80211.c |   16 ++++++++++------\n 1 files changed, 10 insertions(+), 6 deletions(-)\n\ncommit f227b88c89e84371e3897207ddab3877f6af6113\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Dec 13 12:27:49 2011 -0800\n\n    net: wireless: bcmdhd: Decrease event wake_lock timeout to 1500 ms\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd.h       |    4 ++--\n drivers/net/wireless/bcmdhd/dhd_linux.c |    8 ++++----\n drivers/net/wireless/bcmdhd/wl_iw.c     |    2 +-\n 3 files changed, 7 insertions(+), 7 deletions(-)\n\ncommit ed3f35608786481035165a3b0321ab0b04768b5d\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Mon Dec 12 15:40:33 2011 -0800\n\n    net: wireless: bcmdhd: Fix getting arp_hostip table\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_common.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit c561cedf2b6c9d6e7c26ee69dd17c97c0a852a17\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Tue Dec 6 16:27:37 2011 -0800\n\n    net: wireless: bcmdhd: Allow to push more packets to FW for Tx\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_sdio.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit 4f36cb88d6e7e5afcdef42f6d2d70cbffbd2c541\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Fri Dec 2 13:24:01 2011 -0800\n\n    net: wireless: bcmdhd: Fix scan crash in ibss mode\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/wl_cfg80211.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit af16732d4c98078988755337fb5e197fc31ca77e\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Fri Dec 2 13:10:47 2011 -0800\n\n    net: wireless: bcmdhd: Add FW reloading in case of FW hang\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_linux.c |    5 ++++-\n 1 files changed, 4 insertions(+), 1 deletions(-)\n\ncommit 7caeacd6ed135e2ee4fbbc26aa0fc0aea4cb166d\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Wed Nov 30 12:49:02 2011 -0800\n\n    net: wireless: bcmdhd: Update to Version 5.90.125.94.1\n\n    - Return zeroed private command buffer\n    - Fix memory leak in wl_inform_single_bss()\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/dhd_common.c      |    5 +++--\n drivers/net/wireless/bcmdhd/dhd_linux_mon.c   |   10 ++++++----\n drivers/net/wireless/bcmdhd/include/epivers.h |    2 +-\n drivers/net/wireless/bcmdhd/wl_android.c      |    9 ++++++---\n drivers/net/wireless/bcmdhd/wl_cfg80211.c     |    9 ++++++---\n 5 files changed, 22 insertions(+), 13 deletions(-)\n\ncommit 8d71d882e7062dfbcdb2f790470f803cc536b8ae\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Fri Nov 11 16:04:12 2011 -0800\n\n    net: wireless: bcmdhd: Use CONFIG_DHD_USE_STATIC_BUF for preallocated memory\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/net/wireless/bcmdhd/Kconfig             |    7 +++\n drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c      |   16 ++++----\n drivers/net/wireless/bcmdhd/dhd.h               |    4 +-\n drivers/net/wireless/bcmdhd/dhd_cdc.c           |    4 +-\n drivers/net/wireless/bcmdhd/dhd_linux.c         |    4 +-\n drivers/net/wireless/bcmdhd/dhd_sdio.c          |    4 +-\n drivers/net/wireless/bcmdhd/include/linux_osl.h |    2 +-\n drivers/net/wireless/bcmdhd/linux_osl.c         |   52 +++++++++++++----------\n drivers/net/wireless/bcmdhd/wl_android.c        |    7 ++-\n 9 files changed, 57 insertions(+), 43 deletions(-)\n\ncommit 35047200c401cdd1bb43b5574270d1ac86a47937\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Mon Dec 19 12:32:21 2011 -0800\n\n    wireless: Protect regdomain change by mutex\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n net/wireless/reg.c |    5 ++++-\n 1 files changed, 4 insertions(+), 1 deletions(-)\n\ncommit ea693bf7f87603b072f4ceea6684221fa0b8e863\nAuthor: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\nDate:   Fri Dec 16 17:52:18 2011 -0800\n\n    mmc: Set suspend/resume bus operations if CONFIG_PM_RUNTIME is used\n\n    Signed-off-by: Dmitry Shmidt \u003cdimitrysh@google.com\u003e\n\n drivers/mmc/core/bus.c |   24 +++++++-----------------\n 1 files changed, 7 insertions(+), 17 deletions(-)\n\ncommit dc1b6340394ef744e210247ab786df66639f5a33\nAuthor: Benoit Goby \u003cbenoit@android.com\u003e\nDate:   Fri Dec 9 18:05:00 2011 -0800\n\n    usb: gadget: android: Don\u0027t allow changing the functions list if enabled\n\n    Change-Id: I3ad39b420ce79a8602a7eca1daac1f56b30bad5c\n    Signed-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n\n drivers/usb/gadget/android.c |   28 ++++++++++++++++++++++++----\n 1 files changed, 24 insertions(+), 4 deletions(-)\n\ncommit e0de0a507d83e84c833d01de9e46a44b12419431\nAuthor: Benoit Goby \u003cbenoit@android.com\u003e\nDate:   Tue Nov 29 13:49:27 2011 -0800\n\n    usb: gadget: android: Cancel pending ctrlrequest before disabling\n\n    Make sure there is no pending ctrlrequest before removing the config.\n    Otherwise the ctrlrequest complete callback could access structures\n    after they have been freed. Unbind cancels pending transfers but not\n    ep0 requests.\n\n    Bug: 5513065 5440193\n\n    Change-Id: I063c22bf5d104a3d2df71cf622409459fac5f27a\n    Signed-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n\n drivers/usb/gadget/android.c |    2 ++\n 1 files changed, 2 insertions(+), 0 deletions(-)\n\ncommit b86fd0b62252fbba6a5d6acda09fd325fb8e201b\nAuthor: Colin Cross \u003cccross@android.com\u003e\nDate:   Tue Nov 29 16:37:07 2011 -0800\n\n    ARM: idle: call idle notifiers before stopping nohz tick\n\n    If an idle notifier modifies a timer, calling the notifier after\n    the sched tick has been stopped may leave the sched tick set too\n    early.  Move teh idle notifier call before the call to\n    tick_nohz_stop_sched_tick.\n\n    Change-Id: I0db3284bec6d0193bc5e2a57650ab06bd8342319\n    Signed-off-by: Colin Cross \u003cccross@android.com\u003e\n\n arch/arm/kernel/process.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit 6a4a38525d60db7e915d559273d8c89db5a98edf\nAuthor: Benoit Goby \u003cbenoit@android.com\u003e\nDate:   Mon Nov 28 18:01:03 2011 -0800\n\n    usb: gadget: android: Reset next_string_id before enable\n\n    Reset next_string_id to 0 before enabling the gadget driver. Otherwise,\n    after a large number of enable/disable cycles, bind will fail\n    because we cannot allocate new string ids. String ids cannot be larger\n    than 254 per USB spec.\n\n    Change-Id: I44f5fece45008b7a0a18c025d4eb5ce842585c28\n    Signed-off-by: Benoit Goby \u003cbenoit@android.com\u003e\n\n drivers/usb/gadget/android.c |    1 +\n 1 files changed, 1 insertions(+), 0 deletions(-)\n\ncommit dbb18fb2c1519b7810018580ee5123f9be73f213\nAuthor: hyungseoung.yoo \u003chyungseoung.yoo@samsung.com\u003e\nDate:   Fri Nov 18 13:57:01 2011 +0900\n\n    Bluetooth: Keep master role when SCO or eSCO is active\n\n    This improves compatbility with a lot of headset / chipset\n    combinations. Ideally this should not be needed.\n\n    Change-Id: I8b676701e12e416aa7d60801b9d353b15d102709\n    Signed-off-by: hyungseoung.yoo \u003chyungseoung.yoo@samsung.com\u003e\n    Signed-off-by: Jaikumar Ganesh \u003cjaikumarg@android.com\u003e\n\n net/bluetooth/hci_event.c |   12 +++++++++++-\n 1 files changed, 11 insertions(+), 1 deletions(-)\n\ncommit 9d187300dfeb825b3c851458427a7046d9302c06\nAuthor: Arve Hjønnevåg \u003carve@android.com\u003e\nDate:   Tue Nov 22 14:56:50 2011 -0800\n\n    rtc: Fix some bugs that allowed accumulating time drift in suspend/resume\n\n    The current code checks if abs(delta_delta.tv_sec) is greater or\n    equal to two before it discards the old delta value, but this can\n    trigger at close to -1 seconds since -1.000000001 seconds is stored\n    as tv_sec -2 and tv_nsec 999999999 in a normalized timespec.\n\n    rtc_resume had an early return check if the rtc value had not changed\n    since rtc_suspend. This effectivly stops time for the duration of the\n    short sleep. Check if sleep_time is positive after all the adjustments\n    have been applied instead since this allows the old_system adjustment\n    in rtc_suspend to have an effect even for short sleep cycles.\n\n    Change-Id: I00b45c0349ec91a4bab9b41a126b377515427898\n    Signed-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\n\n drivers/rtc/class.c |   10 +++++-----\n 1 files changed, 5 insertions(+), 5 deletions(-)\n\ncommit 452d440ab295475afb04dee90879f5fb70254659\nAuthor: Arve Hjønnevåg \u003carve@android.com\u003e\nDate:   Tue Nov 22 15:28:27 2011 -0800\n\n    Fix \"time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime\" to compile on 3.0\n\n    Change-Id: I1225f279cda04dedbfb7f853f6b58f1032bd6d2b\n\n kernel/time/timekeeping.c |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ncommit cf70c6a40073530c9e23fb373a541c09996429c7\nAuthor: John Stultz \u003cjohn.stultz@linaro.org\u003e\nDate:   Wed Jun 1 18:18:09 2011 -0700\n\n    time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime\n\n    Arve suggested making sure we catch possible negative sleep time\n    intervals that could be passed into timekeeping_inject_sleeptime.\n\n    CC: Arve Hjønnevåg \u003carve@android.com\u003e\n    CC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n    Signed-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n\n kernel/time/timekeeping.c |    6 ++++++\n 1 files changed, 6 insertions(+), 0 deletions(-)\n\ncommit 340ede367101d47c8fd69e83e5e6db9077f4caad\nAuthor: John Stultz \u003cjohn.stultz@linaro.org\u003e\nDate:   Fri May 27 11:33:18 2011 -0700\n\n    rtc: Avoid accumulating time drift in suspend/resume\n\n    Because the RTC interface is only a second granular interface,\n    each time we read from the RTC for suspend/resume, we introduce a\n    half second (on average) of error.\n\n    In order to avoid this error accumulating as the system is suspended\n    over and over, this patch measures the time delta between the RTC\n    and the system CLOCK_REALTIME.\n\n    If the delta is less then 2 seconds from the last suspend, we compensate\n    by using the previous time delta (keeping it close). If it is larger\n    then 2 seconds, we assume the clock was set or has been changed, so we\n    do no correction and update the delta.\n\n    Note: If NTP is running, ths could seem to \"fight\" with the NTP corrected\n    time, where as if the system time was off by 1 second, and NTP slewed the\n    value in, a suspend/resume cycle could undo this correction, by trying to\n    restore the previous offset from the RTC. However, without this patch,\n    since each read could cause almost a full second worth of error, its\n    possible to get almost 2 seconds of error just from the suspend/resume\n    cycle alone, so this about equal to any offset added by the compensation.\n\n    Further on systems that suspend/resume frequently, this should keep time\n    closer then NTP could compensate for if the errors were allowed to\n    accumulate.\n\n    Credits to Arve Hjønnevåg for suggesting this solution.\n\n    This patch also improves some of the variable names and adds more clear\n    comments.\n\n    CC: Arve Hjønnevåg \u003carve@android.com\u003e\n    CC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n    Signed-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n\n drivers/rtc/class.c |   65 +++++++++++++++++++++++++++++++++++++-------------\n 1 files changed, 48 insertions(+), 17 deletions(-)\n\nChange-Id: I16f522e7ee2b301cbdaea62d52d50d7249f565c2\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "1942f21b1d31ef46ecaad76f963f2b889537ab12",
      "tree": "9d9b10a94bb8721d10c7114a61b8eacef4afea71",
      "parents": [
        "62ed9ac5c02f94c8ae007f19248ca9b130eadee4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 25 16:09:17 2009 +0200"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Wed Mar 28 15:11:58 2012 -0700"
      },
      "message": "locking, kprobes: Annotate the hash locks and kretprobe.lock as raw\n\nThe kprobe locks can be taken in atomic context and therefore\ncannot be preempted on -rt - annotate it.\n\nIn mainline this change documents the low level nature of\nthe lock - otherwise there\u0027s no functional difference. Lockdep\nand Sparse checking will work as usual.\n\nChange-Id: Ifa5b3bc25f2b3b9a7d0474cb7834e8a91fba518e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "97d68a8b69e87480c436dd8365b438c3d18fed47",
      "tree": "2d587d3aa46d50758d29697d937f6a7cb038306f",
      "parents": [
        "8405e3e79e0144b735dd988fad37ace208846992"
      ],
      "author": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Tue Mar 20 19:03:04 2012 -0700"
      },
      "committer": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Wed Mar 21 14:01:08 2012 -0700"
      },
      "message": "kernel/main: fix calling sysfs_notify from atomic context\n\nSysfs_notify takes a mutex and therefore cannot be called from atomic\ncontext like interrupt handler in this case. Use a workqueue to schedule\nthe work instead.\n\nChange-Id: I0a5230fe379aa51f1065df4af9b27f471aa22440\nSigned-off-by: Amar Singhal \u003casinghal@codeaurora.org\u003e\n"
    },
    {
      "commit": "099aa69b9cfb6f4c5b56dd1d1d06ce9ef92cf2d5",
      "tree": "8b86f82df11e296f1d528cce1bdba7cfec5dbe54",
      "parents": [
        "cf76837260758073496ce6325bcb20e657eb2066"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Tue Feb 28 14:07:39 2012 -0800"
      },
      "committer": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Mon Mar 19 17:32:55 2012 -0700"
      },
      "message": "kernel: reduce sleep duration in wait_task_inactive\n\nSleeping for an entire tick adds unnecessary latency to\nhotplugging a cpu (cpu_up).\n\nChange-Id: Iab323a79f4048bc9101ecfd368e0f275827ed4ab\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "6cad96a03eaefe1350375b64d0dddfc379f71999",
      "tree": "a7707c7badea11a86dcda1a60fae9b4f5ee5e5c0",
      "parents": [
        "990f7c8de76211f534139ea2bcfa2664a1b2d9d2",
        "ac2a6d6453c50db7ba7c0b3aa328a3ba48a84abf"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Fri Mar 09 00:03:11 2012 -0800"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Fri Mar 09 00:03:12 2012 -0800"
      },
      "message": "Merge \"kernel/power: add pollable sysfs entries for touch events\" into msm-3.0"
    },
    {
      "commit": "2fb0354486e2d7b8d73622cbdbb941748a921240",
      "tree": "ba440eea2f97a79117eb2ebb0d5635ceb0586763",
      "parents": [
        "704a644e6526a3ca0ca91839b35c3466167a6bd0"
      ],
      "author": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Thu Feb 23 14:43:58 2012 -0800"
      },
      "committer": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Tue Mar 06 15:44:10 2012 -0800"
      },
      "message": "framebuffer: add a pollable sysfs entry for display status\n\nWakeup the userspace poll on change of display status. The\nuserspace then may take action to change the\npower/performance characteristics of the device.\n\nChange-Id: I9bd11f3d895d3d83230104f5d8dcd1deeaa754cd\nSigned-off-by: Amar Singhal \u003casinghal@codeaurora.org\u003e\n"
    },
    {
      "commit": "ac2a6d6453c50db7ba7c0b3aa328a3ba48a84abf",
      "tree": "171ec9b17755fde7d3a5d56caeed9b5ede3a8ee7",
      "parents": [
        "704a644e6526a3ca0ca91839b35c3466167a6bd0"
      ],
      "author": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Mon Feb 27 17:40:31 2012 -0800"
      },
      "committer": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Tue Mar 06 15:27:33 2012 -0800"
      },
      "message": "kernel/power: add pollable sysfs entries for touch events\n\nProvide userspace with a pollable sysfs entry that it can poll\non waiting for touch event notifiction. Once it\nis woken up, the userspace can take action to change the\npower/performance characteristics of the device for the duration\nof the event.\n\nChange-Id: Iab84f729f2ea3a5352c4e5173f78544023a276c1\nSigned-off-by: Amar Singhal \u003casinghal@codeaurora.org\u003e\n"
    },
    {
      "commit": "d378b2d044139f88384d278bd5830669c44c789b",
      "tree": "4798988a3ac3182f38dfa8b3b6459833a6f40596",
      "parents": [
        "e02c339f506e10fadf8a5f00f1c932035596ed8e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Nov 14 13:13:49 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Feb 13 11:06:10 2012 -0800"
      },
      "message": "lockdep, bug: Exclude TAINT_FIRMWARE_WORKAROUND from disabling lockdep\n\ncommit df754e6af2f237a6c020c0daff55a1a609338e31 upstream.\n\nIt\u0027s unlikely that TAINT_FIRMWARE_WORKAROUND causes false\nlockdep messages, so do not disable lockdep in that case.\nWe still want to keep lockdep disabled in the\nTAINT_OOT_MODULE case:\n\n  - bin-only modules can cause various instabilities in\n    their and in unrelated kernel code\n\n  - they are impossible to debug for kernel developers\n\n  - they also typically do not have the copyright license\n    permission to link to the GPL-ed lockdep code.\n\nSuggested-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-xopopjjens57r0i13qnyh2yo@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "c27711dc7f2cff89cee6a47026d936672cb29350",
      "tree": "e5a0ec57b1bd91a803be48854467b70091c2bdc6",
      "parents": [
        "32c4490a6ffbe3de604581f5fdce361eb049acff"
      ],
      "author": {
        "name": "Chanho Min",
        "email": "chanho0207@gmail.com",
        "time": "Thu Jan 05 20:00:19 2012 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Feb 13 11:06:08 2012 -0800"
      },
      "message": "sched/rt: Fix task stack corruption under __ARCH_WANT_INTERRUPTS_ON_CTXSW\n\ncommit cb297a3e433dbdcf7ad81e0564e7b804c941ff0d upstream.\n\nThis issue happens under the following conditions:\n\n 1. preemption is off\n 2. __ARCH_WANT_INTERRUPTS_ON_CTXSW is defined\n 3. RT scheduling class\n 4. SMP system\n\nSequence is as follows:\n\n 1.suppose current task is A. start schedule()\n 2.task A is enqueued pushable task at the entry of schedule()\n   __schedule\n    prev \u003d rq-\u003ecurr;\n    ...\n    put_prev_task\n     put_prev_task_rt\n      enqueue_pushable_task\n 4.pick the task B as next task.\n   next \u003d pick_next_task(rq);\n 3.rq-\u003ecurr set to task B and context_switch is started.\n   rq-\u003ecurr \u003d next;\n 4.At the entry of context_swtich, release this cpu\u0027s rq-\u003elock.\n   context_switch\n    prepare_task_switch\n     prepare_lock_switch\n      raw_spin_unlock_irq(\u0026rq-\u003elock);\n 5.Shortly after rq-\u003elock is released, interrupt is occurred and start IRQ context\n 6.try_to_wake_up() which called by ISR acquires rq-\u003elock\n    try_to_wake_up\n     ttwu_remote\n      rq \u003d __task_rq_lock(p)\n      ttwu_do_wakeup(rq, p, wake_flags);\n        task_woken_rt\n 7.push_rt_task picks the task A which is enqueued before.\n   task_woken_rt\n    push_rt_tasks(rq)\n     next_task \u003d pick_next_pushable_task(rq)\n 8.At find_lock_lowest_rq(), If double_lock_balance() returns 0,\n   lowest_rq can be the remote rq.\n  (But,If preemption is on, double_lock_balance always return 1 and it\n   does\u0027t happen.)\n   push_rt_task\n    find_lock_lowest_rq\n     if (double_lock_balance(rq, lowest_rq))..\n 9.find_lock_lowest_rq return the available rq. task A is migrated to\n   the remote cpu/rq.\n   push_rt_task\n    ...\n    deactivate_task(rq, next_task, 0);\n    set_task_cpu(next_task, lowest_rq-\u003ecpu);\n    activate_task(lowest_rq, next_task, 0);\n 10. But, task A is on irq context at this cpu.\n     So, task A is scheduled by two cpus at the same time until restore from IRQ.\n     Task A\u0027s stack is corrupted.\n\nTo fix it, don\u0027t migrate an RT task if it\u0027s still running.\n\nSigned-off-by: Chanho Min \u003cchanho.min@lge.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/r/CAOAMb1BHA\u003d5fm7KTewYyke6u-8DP0iUuJMpgQw54vNeXFsGpoQ@mail.gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "603b63484725a6e88e4ae5da58716efd88154b1e",
      "tree": "60749779f5d0425c12455805280fe4dbff1ab955",
      "parents": [
        "55d9f089521b1355cdd6914d1186ae02ddc0f74f"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "liuj97@gmail.com",
        "time": "Fri Feb 03 15:37:16 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Feb 13 11:06:06 2012 -0800"
      },
      "message": "kprobes: fix a memory leak in function pre_handler_kretprobe()\n\ncommit 55ca6140e9bb307efc97a9301a4f501de02a6fd6 upstream.\n\nIn function pre_handler_kretprobe(), the allocated kretprobe_instance\nobject will get leaked if the entry_handler callback returns non-zero.\nThis may cause all the preallocated kretprobe_instance objects exhausted.\n\nThis issue can be reproduced by changing\nsamples/kprobes/kretprobe_example.c to probe \"mutex_unlock\".  And the fix\nis straightforward: just put the allocated kretprobe_instance object back\nonto the free_instances list.\n\n[akpm@linux-foundation.org: use raw_spin_lock/unlock]\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nAcked-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.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\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "aa9b60bb87a69ba2e0472fbfb04a8c056690936f",
      "tree": "c60ee3953ba6498a6f8d6e91edb329f75d3f6823",
      "parents": [
        "96a0760091ed47fc1b914f78bb46116b2dd8bb94"
      ],
      "author": {
        "name": "Laura Abbott",
        "email": "lauraa@codeaurora.org",
        "time": "Mon Jan 23 13:06:20 2012 -0800"
      },
      "committer": {
        "name": "Laura Abbott",
        "email": "lauraa@codeaurora.org",
        "time": "Tue Feb 07 09:04:00 2012 -0800"
      },
      "message": "printk: Log printk events\n\nLog printk events to the uncached buffer. If a reset occurs\nand printk data is still present in the cache, information will\nbe lost. This doesn\u0027t store the actual printk, but it at least\ngives information on who the last caller was.\n\nChange-Id: If1bd414a44b19b45c157d23a7ddde8f16b30e780\nSigned-off-by: Laura Abbott \u003clauraa@codeaurora.org\u003e\nSigned-off-by: Trevor Bourget \u003ctbourget@codeaurora.org\u003e\n"
    },
    {
      "commit": "e21ed1cebed09df11b4bf7809fd6d69b25457127",
      "tree": "0946eb8de0678bd263d03ae8d6f124eb725fd636",
      "parents": [
        "7e2d7afcbacf7683c72e98980c6a9284a5a2a01c"
      ],
      "author": {
        "name": "Jonathan Nieder",
        "email": "jrnieder@gmail.com",
        "time": "Mon Aug 08 06:22:43 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:57 2012 -0800"
      },
      "message": "cap_syslog: don\u0027t use WARN_ONCE for CAP_SYS_ADMIN deprecation warning\n\ncommit f2c0d0266cc5eb36a4aa44944b4096ec121490aa upstream.\n\nsyslog-ng versions before 3.3.0beta1 (2011-05-12) assume that\nCAP_SYS_ADMIN is sufficient to access syslog, so ever since CAP_SYSLOG\nwas introduced (2010-11-25) they have triggered a warning.\n\nCommit ee24aebffb75 (\"cap_syslog: accept CAP_SYS_ADMIN for now\")\nimproved matters a little by making syslog-ng work again, just keeping\nthe WARN_ONCE().  But still, this is a warning that writes a stack trace\nwe don\u0027t care about to syslog, sets a taint flag, and alarms sysadmins\nwhen nothing worse has happened than use of an old userspace with a\nrecent kernel.\n\nConvert the WARN_ONCE to a printk_once to avoid that while continuing to\ngive userspace developers a hint that this is an unwanted\nbackward-compatibility feature and won\u0027t be around forever.\n\nReported-by: Ralf Hildebrandt \u003cralf.hildebrandt@charite.de\u003e\nReported-by: Niels \u003czorglub_olsen@hotmail.com\u003e\nReported-by: Paweł Sikora \u003cpluto@agmk.net\u003e\nSigned-off-by: Jonathan Nieder \u003cjrnieder@gmail.com\u003e\nLiked-by: Gergely Nagy \u003calgernon@madhouse-project.org\u003e\nAcked-by: Serge Hallyn \u003cserge@hallyn.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Christoph Biedl \u003clinux-kernel.bfrz@manchmal.in-ulm.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "da8ae089a79cdc37589cab581a2ca9cf48f98904",
      "tree": "aa95891ffdec00d331c6e0c97e83c848957e35c0",
      "parents": [
        "2ffe3ccf80eba0ac9ca71c41e7357d92f1c08fc3"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Mon Dec 05 18:22:48 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:54 2012 -0800"
      },
      "message": "ftrace: Fix unregister ftrace_ops accounting\n\ncommit 30fb6aa74011dcf595f306ca2727254d708b786e upstream.\n\nMultiple users of the function tracer can register their functions\nwith the ftrace_ops structure. The accounting within ftrace will\nupdate the counter on each function record that is being traced.\nWhen the ftrace_ops filtering adds or removes functions, the\nfunction records will be updated accordingly if the ftrace_ops is\nstill registered.\n\nWhen a ftrace_ops is removed, the counter of the function records,\nthat the ftrace_ops traces, are decremented. When they reach zero\nthe functions that they represent are modified to stop calling the\nmcount code.\n\nWhen changes are made, the code is updated via stop_machine() with\na command passed to the function to tell it what to do. There is an\nENABLE and DISABLE command that tells the called function to enable\nor disable the functions. But the ENABLE is really a misnomer as it\nshould just update the records, as records that have been enabled\nand now have a count of zero should be disabled.\n\nThe DISABLE command is used to disable all functions regardless of\ntheir counter values. This is the big off switch and is not the\ncomplement of the ENABLE command.\n\nTo make matters worse, when a ftrace_ops is unregistered and there\nis another ftrace_ops registered, neither the DISABLE nor the\nENABLE command are set when calling into the stop_machine() function\nand the records will not be updated to match their counter. A command\nis passed to that function that will update the mcount code to call\nthe registered callback directly if it is the only one left. This\nmeans that the ftrace_ops that is still registered will have its callback\ncalled by all functions that have been set for it as well as the ftrace_ops\nthat was just unregistered.\n\nHere\u0027s a way to trigger this bug. Compile the kernel with\nCONFIG_FUNCTION_PROFILER set and with CONFIG_FUNCTION_GRAPH not set:\n\n CONFIG_FUNCTION_PROFILER\u003dy\n # CONFIG_FUNCTION_GRAPH is not set\n\nThis will force the function profiler to use the function tracer instead\nof the function graph tracer.\n\n  # cd /sys/kernel/debug/tracing\n  # echo schedule \u003e set_ftrace_filter\n  # echo function \u003e current_tracer\n  # cat set_ftrace_filter\n schedule\n  # cat trace\n # tracer: nop\n #\n # entries-in-buffer/entries-written: 692/68108025   #P:4\n #\n #                              _-----\u003d\u003e irqs-off\n #                             / _----\u003d\u003e need-resched\n #                            | / _---\u003d\u003e hardirq/softirq\n #                            || / _--\u003d\u003e preempt-depth\n #                            ||| /     delay\n #           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION\n #              | |       |   ||||       |         |\n      kworker/0:2-909   [000] ....   531.235574: schedule \u003c-worker_thread\n           \u003cidle\u003e-0     [001] .N..   531.235575: schedule \u003c-cpu_idle\n      kworker/0:2-909   [000] ....   531.235597: schedule \u003c-worker_thread\n             sshd-2563  [001] ....   531.235647: schedule \u003c-schedule_hrtimeout_range_clock\n\n  # echo 1 \u003e function_profile_enabled\n  # echo 0 \u003e function_porfile_enabled\n  # cat set_ftrace_filter\n schedule\n  # cat trace\n # tracer: function\n #\n # entries-in-buffer/entries-written: 159701/118821262   #P:4\n #\n #                              _-----\u003d\u003e irqs-off\n #                             / _----\u003d\u003e need-resched\n #                            | / _---\u003d\u003e hardirq/softirq\n #                            || / _--\u003d\u003e preempt-depth\n #                            ||| /     delay\n #           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION\n #              | |       |   ||||       |         |\n           \u003cidle\u003e-0     [002] ...1   604.870655: local_touch_nmi \u003c-cpu_idle\n           \u003cidle\u003e-0     [002] d..1   604.870655: enter_idle \u003c-cpu_idle\n           \u003cidle\u003e-0     [002] d..1   604.870656: atomic_notifier_call_chain \u003c-enter_idle\n           \u003cidle\u003e-0     [002] d..1   604.870656: __atomic_notifier_call_chain \u003c-atomic_notifier_call_chain\n\nThe same problem could have happened with the trace_probe_ops,\nbut they are modified with the set_frace_filter file which does the\nupdate at closure of the file.\n\nThe simple solution is to change ENABLE to UPDATE and call it every\ntime an ftrace_ops is unregistered.\n\nLink: http://lkml.kernel.org/r/1323105776-26961-3-git-send-email-jolsa@redhat.com\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "2ffe3ccf80eba0ac9ca71c41e7357d92f1c08fc3",
      "tree": "b25759efa685d002b043e657fa3d05624c85eaaa",
      "parents": [
        "f935e6192f9e068da8f8395f032ff4b721fe8510"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jul 13 15:08:31 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:54 2012 -0800"
      },
      "message": "ftrace: Update filter when tracing enabled in set_ftrace_filter()\n\ncommit 072126f4529196f71a97960248bca54fd4554c2d upstream.\n\nCurrently, if set_ftrace_filter() is called when the ftrace_ops is\nactive, the function filters will not be updated. They will only be updated\nwhen tracing is disabled and re-enabled.\n\nUpdate the functions immediately during set_ftrace_filter().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "f935e6192f9e068da8f8395f032ff4b721fe8510",
      "tree": "d98c511790df01d7e362a50b72a169ae11008b61",
      "parents": [
        "3ce5564096c4444197e6f7dc83a9dbc63392b084"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jul 13 15:03:44 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Feb 03 09:18:53 2012 -0800"
      },
      "message": "ftrace: Balance records when updating the hash\n\ncommit 41fb61c2d08107ce96a5dcb3a6289b2afd3e135c upstream.\n\nWhenever the hash of the ftrace_ops is updated, the record counts\nmust be balance. This requires disabling the records that are set\nin the original hash, and then enabling the records that are set\nin the updated hash.\n\nMoving the update into ftrace_hash_move() removes the bug where the\nhash was updated but the records were not, which results in ftrace\ntriggering a warning and disabling itself because the ftrace_ops filter\nis updated while the ftrace_ops was registered, and then the failure\nhappens when the ftrace_ops is unregistered.\n\nThe current code will not trigger this bug, but new code will.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "b8f256956a063ebc60a674ec5795c7ca5aaa79c6",
      "tree": "0e84a418d7a9f7cc32db588c933a82c00a22ff80",
      "parents": [
        "72a82010500dea88b2d786a76b063a871e2a4603"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Fri Jan 20 14:34:04 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 25 17:25:04 2012 -0800"
      },
      "message": "kprobes: initialize before using a hlist\n\ncommit d496aab567e7e52b3e974c9192a5de6e77dce32c upstream.\n\nCommit ef53d9c5e (\"kprobes: improve kretprobe scalability with hashed\nlocking\") introduced a bug where we can potentially leak\nkretprobe_instances since we initialize a hlist head after having used\nit.\n\nInitialize the hlist head before using it.\n\nReported by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nAcked-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Srinivasa D S \u003csrinivasa@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7b103970375e6857f11122f5176a7a1185eabe8b",
      "tree": "96b336d654b2df2c88e46b63abff38a224a50683",
      "parents": [
        "67272e1a35796787a403eab000cd6c374f0ef556",
        "cf68d7a3f7f7dfb5f51a34c843bddbe176799ce9"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Tue Jan 17 09:24:09 2012 -0800"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Tue Jan 17 09:24:09 2012 -0800"
      },
      "message": "Merge changes I8b0f5d25,I2835dacf,Idef697db,I34c6a1f5,Ie3340d07 into msm-3.0\n\n* changes:\n  irq: irqdomain: Add API to find free irq range\n  arm: gic: Check for error code on irq_domain_add\n  irq: irqdomain: Change irq_domain_add to detect errors\n  arm: gic: Register irqdomain after adding it\n  irq: irqdomain: Add support for dynamic irq_desc allocations\n"
    },
    {
      "commit": "cf68d7a3f7f7dfb5f51a34c843bddbe176799ce9",
      "tree": "1c330c5fc8ae7ad42c65515895eb2e0657bd8f0b",
      "parents": [
        "33efecf03dc975a818685ee3d74a47ab93b483d2"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Wed Jan 11 17:53:05 2012 -0800"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Jan 16 14:25:55 2012 -0800"
      },
      "message": "irq: irqdomain: Add API to find free irq range\n\nWhen registering irq chip drivers, one common requirement is to\nspecify the irq_domain irq_base and nr_irq. These fields represent\nthe system wide logical interrupt range the domain occupies.\nFor systems with only one interrupt controller, it\u0027s trivial to\nknow these values. But for systems with several irq chip drivers,\nit becomes painful to keep track of interrupt ranges in platform\ndefines. These create needless compile time dependencies, of\nwhich the Device Tree aims to solve.\n\nirq_alloc_desc() can search for a free irq, but is very\ninefficient for determining the availability of large ranges.\nAdditionally, some irq chip drivers allocate irq descriptors\nlazily. For example, portions of the Device Tree may not be parsed\nuntil a particular bus is probed. But of_irq_init() is intended to\nbe run at init time, and this is a natural time to allocate irq\ndomains. Thus by the time we allocate our irq descriptors, we already\nneed to know a range of acceptable irqs to use for the domain.\n\nTo solve these problems, let\u0027s introduce\nirq_domain_find_free_range(), which will return to the caller the\nfirst available irq domain range not used already by the system.\nThis range can then be specified with irq_domain_add().\n\nChange-Id: I8b0f5d25b173c76b8fc5d4f46b3fe9c6bf5c3c8f\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "6f4df41a29fadd17da7fdca722a8e07e02bb4829",
      "tree": "ac1835fb7c133656cd5b2d54d3f5ab9ab73cec95",
      "parents": [
        "b8635c3f53352d245f146ffa1facd13a6db3bea3"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Wed Jan 11 11:45:16 2012 -0800"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Jan 16 14:25:54 2012 -0800"
      },
      "message": "irq: irqdomain: Change irq_domain_add to detect errors\n\nIt should not be valid to add an irq_domain with a logical irq\nrange that overlaps with another already registered to the\nsystem. Return an error on such an occurrence.\n\nThis change also inherently sorts the irq_domains by logical\nirq_base as they are added.\n\nChange-Id: Idef697dbe4584d783703d053fbf09f1b17e62ab0\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "e6717fdd1fbc2bbc3fb7c7a9932a195eee6b1522",
      "tree": "d0bf06a3d2bd0268969d7d26c2a8de5e58a4ea9a",
      "parents": [
        "56b42db68ddf6aac9bc33130535e2a52d309ceea"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Tue Jan 03 16:37:43 2012 -0800"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Jan 16 14:25:42 2012 -0800"
      },
      "message": "irq: irqdomain: Add support for dynamic irq_desc allocations\n\nThe current irq_domain_add() design assumes the underlying\nirq_descs are valid when irq_domain_add() is called. It also\nassumes that every hwirq enlisted in the irq_domain is valid.\nOften, these assumptions are not correct.\n\nTypically, irq_domain_add() is called at board_init time, but\nsometimes interrupt chip drivers are not initialized until an\nunderlying bus is probed. When using SPARSE_IRQ, it\u0027s quite\nnatural to hold off allocating irq_descs until the board\ntopology specifies them as included.\n\nAnd in such device topologies, there\u0027s no guarantee that chip\ninterrupt numbers will be contiguous. For example, each hwirq may\nmap to a particular device, but that device may or may not be\npresent in the actual hardware configuration. In order to support\nthis, we need the concept of an irq_domain that supports holes\nin it.\n\nIn order to solve these problems, let\u0027s break the irq_domain\ncreation from the irq registration process. The irq_domain\ncreation can occur at init time and then have no dependencies. An\ninterrupt is not \u0027registered\u0027 with the domain until its resources\nhave already been allocated by the chip driver. For simple cases,\nan additional API is provided to register the entire\nlogical irq_domain range to provide feature parity with what\nalready exists.\n\nChange-Id: Ie3340d07ba8663196dc87d1185e3bb7fbed4be4d\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "72153812cf48340558f6436dabd3390b987ed5f5",
      "tree": "01d05853512e0512b15bda3de26e542383fd0025",
      "parents": [
        "56b42db68ddf6aac9bc33130535e2a52d309ceea"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Sat Jan 14 22:53:54 2012 -0800"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Mon Jan 16 13:20:27 2012 -0800"
      },
      "message": "tracing: Clean up tb_fmt to not give faulty compile warning\n\ngcc incorrectly states that the variable \"fmt\" is uninitialized when\nCC_OPITMIZE_FOR_SIZE is set.\n\nInstead of just blindly setting fmt to NULL, the code is cleaned up\na little to be a bit easier for humans to follow, as well as gcc\nto know the variables are initialized.\n\nChange-Id: Ia5fb9cc6be8eadae9af3a5636a2459ed7cd48662\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "4ae84455f98af3b3c3a23f8b6458fcefc9ff62bf",
      "tree": "84c872ec590114cadc912adeb495878d50f9098b",
      "parents": [
        "81aaa36dde03db855fb233382c7667f98ac12659"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu Nov 03 00:59:25 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 12 11:35:46 2012 -0800"
      },
      "message": "PM / Sleep: Fix race between CPU hotplug and freezer\n\ncommit 79cfbdfa87e84992d509e6c1648a18e1d7e68c20 upstream.\n\nThe CPU hotplug notifications sent out by the _cpu_up() and _cpu_down()\nfunctions depend on the value of the \u0027tasks_frozen\u0027 argument passed to them\n(which indicates whether tasks have been frozen or not).\n(Examples for such CPU hotplug notifications: CPU_ONLINE, CPU_ONLINE_FROZEN,\nCPU_DEAD, CPU_DEAD_FROZEN).\n\nThus, it is essential that while the callbacks for those notifications are\nrunning, the state of the system with respect to the tasks being frozen or\nnot remains unchanged, *throughout that duration*. Hence there is a need for\nsynchronizing the CPU hotplug code with the freezer subsystem.\n\nSince the freezer is involved only in the Suspend/Hibernate call paths, this\npatch hooks the CPU hotplug code to the suspend/hibernate notifiers\nPM_[SUSPEND|HIBERNATE]_PREPARE and PM_POST_[SUSPEND|HIBERNATE] to prevent\nthe race between CPU hotplug and freezer, thus ensuring that CPU hotplug\nnotifications will always be run with the state of the system really being\nwhat the notifications indicate, _throughout_ their execution time.\n\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2481cbcad1ba76a928c74c2e8cab67d8c77823ab",
      "tree": "23f5b3d7aada19cf8f7ce69c9003f6ea891cabb7",
      "parents": [
        "630fe244a944ebb950e8b2076177547266d255cf"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 27 14:25:55 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 12 11:35:08 2012 -0800"
      },
      "message": "cgroup: fix to allow mounting a hierarchy by name\n\ncommit 0d19ea866562e46989412a0676412fa0983c9ce7 upstream.\n\nIf we mount a hierarchy with a specified name, the name is unique,\nand we can use it to mount the hierarchy without specifying its\nset of subsystem names. This feature is documented is\nDocumentation/cgroups/cgroups.txt section 2.3\n\nHere\u0027s an example:\n\n\t# mount -t cgroup -o cpuset,name\u003dmyhier xxx /cgroup1\n\t# mount -t cgroup -o name\u003dmyhier xxx /cgroup2\n\nBut it was broken by commit 32a8cf235e2f192eb002755076994525cdbaa35a\n(cgroup: make the mount options parsing more accurate)\n\nThis fixes the regression.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3ccc82179dc70e4aa3f47481b10f9b74f40146ee",
      "tree": "bb86708c96ce0cc534b79df614d0764af487d98c",
      "parents": [
        "af1546d43ccc86853e0855525b4c9955c10d58bb",
        "c1105e186a86b18b2966f42e098000fdb50c0fb5"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Wed Jan 11 08:03:55 2012 -0800"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Wed Jan 11 08:03:55 2012 -0800"
      },
      "message": "Merge changes I0059a438,Ic6455ac0,I3ac329f2 into msm-3.0\n\n* changes:\n  Revert \"cpu-hotplug: Add the function \u0027cpu_hotplug_inprogress\u0027\"\n  Revert \"printk: Don\u0027t allow cpu to get console lock during hotplugging\"\n  Revert \"partition_sched_domains: Do not destroy old sched domain on cpu_up\"\n"
    },
    {
      "commit": "ef50d8d96fa350c1f602f8c3bae65eb21ddb28e3",
      "tree": "1eab282ba71a3e7e2ea2b0986fb6cec90cb6e217",
      "parents": [
        "b47f3ad598247071dcab661f94655bbe8074467a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Wed Jan 04 17:29:02 2012 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:14:14 2012 -0800"
      },
      "message": "ptrace: partially fix the do_wait(WEXITED) vs EXIT_DEAD-\u003eEXIT_ZOMBIE race\n\ncommit 50b8d257486a45cba7b65ca978986ed216bbcc10 upstream.\n\nTest-case:\n\n\tint main(void)\n\t{\n\t\tint pid, status;\n\n\t\tpid \u003d fork();\n\t\tif (!pid) {\n\t\t\tfor (;;) {\n\t\t\t\tif (!fork())\n\t\t\t\t\treturn 0;\n\t\t\t\tif (waitpid(-1, \u0026status, 0) \u003c 0) {\n\t\t\t\t\tprintf(\"ERR!! wait: %m\\n\");\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tassert(ptrace(PTRACE_ATTACH, pid, 0,0) \u003d\u003d 0);\n\t\tassert(waitpid(-1, NULL, 0) \u003d\u003d pid);\n\n\t\tassert(ptrace(PTRACE_SETOPTIONS, pid, 0,\n\t\t\t\t\tPTRACE_O_TRACEFORK) \u003d\u003d 0);\n\n\t\tdo {\n\t\t\tptrace(PTRACE_CONT, pid, 0, 0);\n\t\t\tpid \u003d waitpid(-1, NULL, 0);\n\t\t} while (pid \u003e 0);\n\n\t\treturn 1;\n\t}\n\nIt fails because -\u003ereal_parent sees its child in EXIT_DEAD state\nwhile the tracer is going to change the state back to EXIT_ZOMBIE\nin wait_task_zombie().\n\nThe offending commit is 823b018e which moved the EXIT_DEAD check,\nbut in fact we should not blame it. The original code was not\ncorrect as well because it didn\u0027t take ptrace_reparented() into\naccount and because we can\u0027t really trust -\u003eptrace.\n\nThis patch adds the additional check to close this particular\nrace but it doesn\u0027t solve the whole problem. We simply can\u0027t\nrely on -\u003eptrace in this case, it can be cleared if the tracer\nis multithreaded by the exiting -\u003eparent.\n\nI think we should kill EXIT_DEAD altogether, we should always\nremove the soon-to-be-reaped child from -\u003echildren or at least\nwe should never do the DEAD-\u003eZOMBIE transition. But this is too\ncomplex for 3.2.\n\nReported-and-tested-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nTested-by: Lukasz Michalik \u003clmi@ift.uni.wroc.pl\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c61e023d2b6ca9d0aaf766659a81ad5d017e5b53",
      "tree": "959303b1093bdaa92f640a54e0692881aed9e370",
      "parents": [
        "e343400d67fa390709d8147972eb4b700018811b"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@chromium.org",
        "time": "Tue Jan 03 14:41:13 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:14:13 2012 -0800"
      },
      "message": "hung_task: fix false positive during vfork\n\ncommit f9fab10bbd768b0e5254e53a4a8477a94bfc4b96 upstream.\n\nvfork parent uninterruptibly and unkillably waits for its child to\nexec/exit. This wait is of unbounded length. Ignore such waits\nin the hung_task detector.\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nReported-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nLKML-Reference: \u003c1325344394.28904.43.camel@lappy\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3ce696d12b26c9c1cfedeb194a02606bef2854a4",
      "tree": "85ea2e7bf2009e4f329a2cd9cec5335b27ad80d6",
      "parents": [
        "4347b837ab999865063649cf801ba4f8d7e8748e"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Sat Dec 31 11:44:01 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:13:58 2012 -0800"
      },
      "message": "futex: Fix uninterruptible loop due to gate_area\n\ncommit e6780f7243eddb133cc20ec37fa69317c218b709 upstream.\n\nIt was found (by Sasha) that if you use a futex located in the gate\narea we get stuck in an uninterruptible infinite loop, much like the\nZERO_PAGE issue.\n\nWhile looking at this problem, PeterZ realized you\u0027ll get into similar\ntrouble when hitting any install_special_pages() mapping.  And are there\nstill drivers setting up their own special mmaps without page-\u003emapping,\nand without special VM or pte flags to make get_user_pages fail?\n\nIn most cases, if page-\u003emapping is NULL, we do not need to retry at all:\nLinus points out that even /proc/sys/vm/drop_caches poses no problem,\nbecause it ends up using remove_mapping(), which takes care not to\ninterfere when the page reference count is raised.\n\nBut there is still one case which does need a retry: if memory pressure\ncalled shmem_writepage in between get_user_pages_fast dropping page\ntable lock and our acquiring page lock, then the page gets switched from\nfilecache to swapcache (and -\u003emapping set to NULL) whatever the refcount.\nFault it back in to get the page-\u003emapping needed for key-\u003eshared.inode.\n\nReported-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b05727c7f8e3b30309d013a7d3bbc6d1e6f860ba",
      "tree": "e50ad4a59ee25b1b79a099ba2fbf510865439f17",
      "parents": [
        "2aad1ca4711a46ca4540c924ffb84e7673a4738c"
      ],
      "author": {
        "name": "Mandeep Singh Baines",
        "email": "msb@chromium.org",
        "time": "Thu Dec 15 11:36:43 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:13:53 2012 -0800"
      },
      "message": "cgroups: fix a css_set not found bug in cgroup_attach_proc\n\ncommit e0197aae59e55c06db172bfbe1a1cdb8c0e1cab3 upstream.\n\nThere is a BUG when migrating a PF_EXITING proc. Since css_set_prefetch()\nis not called for the PF_EXITING case, find_existing_css_set() will return\nNULL inside cgroup_task_migrate() causing a BUG.\n\nThis bug is easy to reproduce. Create a zombie and echo its pid to\ncgroup.procs.\n\n$ cat zombie.c\n\\#include \u003cunistd.h\u003e\n\nint main()\n{\n  if (fork())\n      pause();\n  return 0;\n}\n$\n\nWe are hitting this bug pretty regularly on ChromeOS.\n\nThis bug is already fixed by Tejun Heo\u0027s cgroup patchset which is\ntargetted for the next merge window:\n\nhttps://lkml.org/lkml/2011/11/1/356\n\nI\u0027ve create a smaller patch here which just fixes this bug so that a\nfix can be merged into the current release and stable.\n\nSigned-off-by: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nDownstream-Bug-Report: http://crosbug.com/23953\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: containers@lists.linux-foundation.org\nCc: cgroups@vger.kernel.org\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Paul Menage \u003cpaul@paulmenage.org\u003e\nCc: Olof Johansson \u003colofj@chromium.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5b8befdb785856462ee5eafc8a52ceb78e720f77",
      "tree": "d3767c51bdd491cf6cec2d0fb786e8005aaa75c6",
      "parents": [
        "d051424f29eac6b4c173365a3ba5b9bb76870ce6"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Dec 19 17:12:06 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 14:13:50 2012 -0800"
      },
      "message": "binary_sysctl(): fix memory leak\n\ncommit 3d3c8f93a237b64580c5c5e138edeb1377e98230 upstream.\n\nbinary_sysctl() calls sysctl_getname() which allocates from names_cache\nslab usin __getname()\n\nThe matching function to free the name is __putname(), and not putname()\nwhich should be used only to match getname() allocations.\n\nThis is because when auditing is enabled, putname() calls audit_putname\n*instead* (not in addition) to __putname().  Then, if a syscall is in\nprogress, audit_putname does not release the name - instead, it expects\nthe name to get released when the syscall completes, but that will happen\nonly if audit_getname() was called previously, i.e.  if the name was\nallocated with getname() rather than the naked __getname().  So,\n__getname() followed by putname() ends up leaking memory.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c1105e186a86b18b2966f42e098000fdb50c0fb5",
      "tree": "e1b87a89119a2aeaacbad14868bd8b8983613a4c",
      "parents": [
        "140260eef19ebcf2db5789070b29359f0f711b53"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Dec 19 14:57:04 2011 -0800"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Thu Jan 05 10:15:53 2012 -0800"
      },
      "message": "Revert \"cpu-hotplug: Add the function \u0027cpu_hotplug_inprogress\u0027\"\n\nThis reverts commit 3d321a35703d041a11f25f7abc27cc6c1ef8cd13.\n\nSince sched domains are allocated dynamically now these\nchanges are N/A for 3.0. Hence the revert.\n\nChange-Id: I0059a4384c871815c01455d4b6f5c8be582a5d73\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "140260eef19ebcf2db5789070b29359f0f711b53",
      "tree": "11b49d9e0d1a7b2f45edb818f669c27202d4b4a0",
      "parents": [
        "6c0389f123f5377c885ef49574c270785c3a8589"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Dec 19 14:55:43 2011 -0800"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Thu Jan 05 10:15:53 2012 -0800"
      },
      "message": "Revert \"printk: Don\u0027t allow cpu to get console lock during hotplugging\"\n\nThis reverts commit 2aba4e8b5e3aaac879ab2f0f88ee6396cdab30a7.\n\nSince sched domains are allocated dynamically now these\nchanges are N/A for 3.0. Hence the revert.\n\nChange-Id: Ic6455ac02afd4191dc071343ebc303ab68df2bf9\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "6c0389f123f5377c885ef49574c270785c3a8589",
      "tree": "79f24bc1f4736f96a746c95463cbd77aa447f079",
      "parents": [
        "4a948998dbc53b801cb26a107b1a0ef720c0bfc2"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Mon Dec 19 14:53:47 2011 -0800"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Thu Jan 05 10:15:53 2012 -0800"
      },
      "message": "Revert \"partition_sched_domains: Do not destroy old sched domain on cpu_up\"\n\nThis reverts commit e0473b4aafe9013a27749518afd449594f158b04.\n\nSince sched domains are allocated dynamically now, these\nchanges are N/A for 3.0. Hence the revert.\n\nChange-Id: I3ac329f298107f4ebdee6a1aab771d2be8ca5f5c\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "f10f2a8bad44078c11378d9a0da025bc4a8e0f15",
      "tree": "b486463f6c5278b8fe1ab0641ab5da20c11e8591",
      "parents": [
        "0c629385aede73f6121148cdddb791d384d6ca9d"
      ],
      "author": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Mon Dec 19 13:17:51 2011 -0800"
      },
      "committer": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Wed Jan 04 12:24:24 2012 -0800"
      },
      "message": "tick-sched: change the cpu that updates rq_stats\n\nIt can happen that the scheduler tick stops on cpu 0 but keeps\nrunning on some other cpu. Make the cpu in-charge of updating\nthe jiffies also update the rq_stats.\n\nChange-Id: Idb1a8132bd96500c68c516b4a99663965cec28e1\nSigned-off-by: Amar Singhal \u003casinghal@codeaurora.org\u003e\n"
    },
    {
      "commit": "ef7386b5de11f6269eaf072c5ef522d2a43172c2",
      "tree": "18626ff19e69fb04b75257a60cd37d51671583de",
      "parents": [
        "6636552f1dd0d2e2be2f87605ea2cd3aa4d2e5b6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 30 13:24:40 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jan 03 10:42:00 2012 -0800"
      },
      "message": "Revert \"clockevents: Set noop handler in clockevents_exchange_device()\"\n\ncommit 3b87487ac5008072f138953b07505a7e3493327f upstream.\n\nThis reverts commit de28f25e8244c7353abed8de0c7792f5f883588c.\n\nIt results in resume problems for various people. See for example\n\n  http://thread.gmane.org/gmane.linux.kernel/1233033\n  http://thread.gmane.org/gmane.linux.kernel/1233389\n  http://thread.gmane.org/gmane.linux.kernel/1233159\n  http://thread.gmane.org/gmane.linux.kernel/1227868/focus\u003d1230877\n\nand the fedora and ubuntu bug reports\n\n  https://bugzilla.redhat.com/show_bug.cgi?id\u003d767248\n  https://bugs.launchpad.net/ubuntu/+source/linux/+bug/904569\n\nwhich got bisected down to the stable version of this commit.\n\nReported-by: Jonathan Nieder \u003cjrnieder@gmail.com\u003e\nReported-by: Phil Miller \u003cmille121@illinois.edu\u003e\nReported-by: Philip Langdale \u003cphilipl@overt.org\u003e\nReported-by: Tim Gardner \u003ctim.gardner@canonical.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "60fe460c072b19aeda65adf17cd59bf3a946db8d",
      "tree": "c8f8202e3c3e42eb290bf304605034305576186b",
      "parents": [
        "36b2c36335003a8d7eee62ae3ab73cfd99268302"
      ],
      "author": {
        "name": "Rob Herring",
        "email": "rob.herring@calxeda.com",
        "time": "Fri Sep 30 10:48:38 2011 -0500"
      },
      "committer": {
        "name": "Trilok Soni",
        "email": "tsoni@codeaurora.org",
        "time": "Mon Dec 26 15:47:59 2011 +0530"
      },
      "message": "irq: support domains with non-zero hwirq base\n\nInterrupt controllers can have non-zero starting value for h/w irq numbers.\nAdding support in irq_domain allows the domain hwirq numbering to match\nthe interrupt controllers\u0027 numbering.\n\nAs this makes looping over irqs for a domain more complicated, add loop\niterators to iterate over all hwirqs and irqs for a domain.\n\nChange-Id: I64774aea2f3efb883fe11e9f6161970f7e7dc0fc\nSigned-off-by: Rob Herring \u003crob.herring@calxeda.com\u003e\nReviewed-by: Jamie Iles \u003cjamie@jamieiles.com\u003e\nTested-by: Thomas Abraham \u003cthomas.abraham@linaro.org\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Trilok Soni \u003ctsoni@codeaurora.org\u003e\n"
    },
    {
      "commit": "36b2c36335003a8d7eee62ae3ab73cfd99268302",
      "tree": "f03226e2833d99b68ed2ad20fc75a3447dcae445",
      "parents": [
        "19d9d54b6b92b04eb8edccc1a3b86270caa84b89"
      ],
      "author": {
        "name": "Rob Herring",
        "email": "robherring2@gmail.com",
        "time": "Wed Sep 14 11:31:37 2011 -0500"
      },
      "committer": {
        "name": "Trilok Soni",
        "email": "tsoni@codeaurora.org",
        "time": "Mon Dec 26 15:47:57 2011 +0530"
      },
      "message": "irq: Fix check for already initialized irq_domain in irq_domain_add\n\nThe sanity check in irq_domain_add() tests desc-\u003eirq_data !\u003d NULL or\nirq_data-\u003edomain !\u003d NULL. This prevents adding an irq_domain to a irq\ndescriptor when irq_data exists, which true when the irq descriptor\nexists.\n\nThis went unnoticed so far as the simple domain code did not enter\nthis code path because domain-\u003enr_irqs is always 0 for the simple domains.\n\nSplit the check for irq_data \u003d\u003d NULL out and have a separate warning\nfor it.\n\n[ tglx: Made the check for irq_data \u003d\u003d NULL separate ]\n\nChange-Id: I4d22d3a638b4fcd908a491ec0cb3273db6935dc2\nSigned-off-by: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: marc.zyngier@arm.com\nCc: thomas.abraham@linaro.org\nCc: jamie@jamieiles.com\nCc: b-cousson@ti.com\nCc: shawn.guo@linaro.org\nCc: linux-arm-kernel@lists.infradead.org\nCc: devicetree-discuss@lists.ozlabs.org\nLink: http://lkml.kernel.org/r/1316017900-19918-3-git-send-email-robherring2@gmail.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Trilok Soni \u003ctsoni@codeaurora.org\u003e\n"
    },
    {
      "commit": "b2c51348a4e6b08bb493b2b33d06df89d1a9a0bc",
      "tree": "82fe8ebc70b477d46156a4290bb66c21abed9300",
      "parents": [
        "b98eb43012d8679aa6c9e5527a7cc5706ee192f6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 19 17:04:37 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 12:57:40 2011 -0800"
      },
      "message": "Make TASKSTATS require root access\n\ncommit 1a51410abe7d0ee4b1d112780f46df87d3621043 upstream.\n\nOk, this isn\u0027t optimal, since it means that \u0027iotop\u0027 needs admin\ncapabilities, and we may have to work on this some more.  But at the\nsame time it is very much not acceptable to let anybody just read\nanybody elses IO statistics quite at this level.\n\nUse of the GENL_ADMIN_PERM suggested by Johannes Berg as an alternative\nto checking the capabilities by hand.\n\nReported-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Balbir Singh \u003cbsingharora@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Moritz Mühlenhoff \u003cjmm@inutil.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "612e5dbc550f30c787e40b958d351720e72091c6",
      "tree": "3ba8f13e9a8d7f7bf0a6511bffe48f04d305c9e4",
      "parents": [
        "2a72a47b80bf4dfbdec91889d1d2c4702f134da5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 05 21:20:23 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 12:57:34 2011 -0800"
      },
      "message": "alarmtimers: Fix time comparison\n\ncommit c9c024b3f3e07d087974db4c0dc46217fff3a6c0 upstream.\n\nThe expiry function compares the timer against current time and does\nnot expire the timer when the expiry time is \u003e\u003d now. That\u0027s wrong. If\nthe timer is set for now, then it must expire.\n\nMake the condition expiry \u003e now for breaking out the loop.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1714337153c9b1fc24eb8597e94f6205183227c5",
      "tree": "54c4657b8b5e91411e2b0580a45852a4bc179f7a",
      "parents": [
        "2c4d6f229d29c4c44b5ea0ccd6b1cf53bc02a594"
      ],
      "author": {
        "name": "Trilok Soni",
        "email": "tsoni@codeaurora.org",
        "time": "Fri Sep 30 10:48:47 2011 +0100"
      },
      "committer": {
        "name": "Trilok Soni",
        "email": "tsoni@codeaurora.org",
        "time": "Sat Dec 10 16:34:15 2011 +0530"
      },
      "message": "genirq: percpu: allow interrupt type to be set at enable time\n\nThe commit 1e7c5fd breaks the build which gets fixed in the\nnext commit 32cffdd.\n\ncommit 1e7c5fd29487ee88cb3abac945bafa60ae026146\nAuthor: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\nDate:   Fri Sep 30 10:48:47 2011 +0100\n\n    genirq: percpu: allow interrupt type to be set at enable time\n\n    As request_percpu_irq() doesn\u0027t allow for a percpu interrupt to have\n    its type configured (it is generally impossible to configure it on all\n    CPUs at once), add a \u0027type\u0027 argument to enable_percpu_irq().\n\n    This allows some low-level, board specific init code to be switched to\n    a generic API.\n\n    [ tglx: Added WARN_ON argument ]\n\n    Signed-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\n    Cc: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n    Signed-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\ncommit 32cffdde4a3ee6c2d9e0f0a94edecf1a9ce7586b\nAuthor: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nDate:   Tue Oct 4 18:43:57 2011 +0200\n\n    genirq: Fix fatfinered fixup really\n\n    Putting the argument inside the quote does not really help.\n\n    Signed-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\nChange-Id: I1c9e58dd8788b5515f183ec169975d48a329b339\n[tsoni@codeaurora.org: Fixup MSM build failure]\nSigned-off-by: Trilok Soni \u003ctsoni@codeaurora.org\u003e\n"
    },
    {
      "commit": "2c4d6f229d29c4c44b5ea0ccd6b1cf53bc02a594",
      "tree": "5c7401f9bfaee66ff2e2c6d3654039dfb0d154d1",
      "parents": [
        "6f1c405828afce2ac53f5fcacb1312f597e92d33"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "marc.zyngier@arm.com",
        "time": "Fri Sep 23 17:03:06 2011 +0100"
      },
      "committer": {
        "name": "Trilok Soni",
        "email": "tsoni@codeaurora.org",
        "time": "Sat Dec 10 16:34:13 2011 +0530"
      },
      "message": "genirq: Add support for per-cpu dev_id interrupts\n\nThe ARM GIC interrupt controller offers per CPU interrupts (PPIs),\nwhich are usually used to connect local timers to each core. Each CPU\nhas its own private interface to the GIC, and only sees the PPIs that\nare directly connect to it.\n\nWhile these timers are separate devices and have a separate interrupt\nline to a core, they all use the same IRQ number.\n\nFor these devices, request_irq() is not the right API as it assumes\nthat an IRQ number is visible by a number of CPUs (through the\naffinity setting), but makes it very awkward to express that an IRQ\nnumber can be handled by all CPUs, and yet be a different interrupt\nline on each CPU, requiring a different dev_id cookie to be passed\nback to the handler.\n\nThe *_percpu_irq() functions is designed to overcome these\nlimitations, by providing a per-cpu dev_id vector:\n\nint request_percpu_irq(unsigned int irq, irq_handler_t handler,\n\t\t   const char *devname, void __percpu *percpu_dev_id);\nvoid free_percpu_irq(unsigned int, void __percpu *);\nint setup_percpu_irq(unsigned int irq, struct irqaction *new);\nvoid remove_percpu_irq(unsigned int irq, struct irqaction *act);\nvoid enable_percpu_irq(unsigned int irq);\nvoid disable_percpu_irq(unsigned int irq);\n\nThe API has a number of limitations:\n- no interrupt sharing\n- no threading\n- common handler across all the CPUs\n\nOnce the interrupt is requested using setup_percpu_irq() or\nrequest_percpu_irq(), it must be enabled by each core that wishes its\nlocal interrupt to be delivered.\n\nBased on an initial patch by Thomas Gleixner.\n\nChange-Id: I3e3d0f36e04added105753d30b2ef07e3d9d6a56\nSigned-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\nCc: linux-arm-kernel@lists.infradead.org\nLink: http://lkml.kernel.org/r/1316793788-14500-2-git-send-email-marc.zyngier@arm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n[kumarrav@codeaurora.org: fixup manage.c merge conflict]\nSigned-off-by: Ravi Kumar \u003ckumarrav@codeaurora.org\u003e\n"
    },
    {
      "commit": "6f1c405828afce2ac53f5fcacb1312f597e92d33",
      "tree": "10545f4f5436b3ea715b1b7f1a2dd49b8f7f0a02",
      "parents": [
        "9a48df2d29848d4751745761c1a9386287eaaa2d"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Mon Jul 11 12:17:31 2011 +0200"
      },
      "committer": {
        "name": "Trilok Soni",
        "email": "tsoni@codeaurora.org",
        "time": "Sat Dec 10 16:34:12 2011 +0530"
      },
      "message": "irq: Track the owner of irq descriptor\n\nInterrupt descriptors can be allocated from modules. The interrupts\nare used by other modules, but we have no refcount on the module which\nprovides the interrupts and there is no way to establish one on the\ndevice level as the interrupt using module is agnostic to the fact\nthat the interrupt is provided by a module rather than by some builtin\ninterrupt controller.\n\nTo prevent removal of the interrupt providing module, we can track the\nowner of the interrupt descriptor, which also provides the relevant\nirq chip functions in the irq descriptor.\n\nrequest/setup_irq() can now acquire a refcount on the owner module to\nprevent unloading. free_irq() drops the refcount.\n\nChange-Id: I132df8e65d4e01db4f15dba0868607c7cdd33e14\nSigned-off-by: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nLink: http://lkml.kernel.org/r/20110711101731.GA13804@Chamillionaire.breakpoint.cc\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ravi Kumar \u003ckumarrav@codeaurora.org\u003e\n"
    },
    {
      "commit": "b01b383bbd04e9dcf7d9fe6ca3751b77ccdc533c",
      "tree": "011972826f7b83c5aafece5ef589e93a4d011508",
      "parents": [
        "4078977c46f627f553ed2d8ea047b9bf25dee48d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 16:02:45 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:53 2011 -0800"
      },
      "message": "clockevents: Set noop handler in clockevents_exchange_device()\n\ncommit de28f25e8244c7353abed8de0c7792f5f883588c upstream.\n\nIf a device is shutdown, then there might be a pending interrupt,\nwhich will be processed after we reenable interrupts, which causes the\noriginal handler to be run. If the old handler is the (broadcast)\nperiodic handler the shutdown state might hang the kernel completely.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4078977c46f627f553ed2d8ea047b9bf25dee48d",
      "tree": "fd257cf2fde90205159813141edc07102e387901",
      "parents": [
        "0bbf5c70251286fbc3b7aac5e7961b4568115bfd"
      ],
      "author": {
        "name": "Yang Honggang (Joseph)",
        "email": "eagle.rtlinux@gmail.com",
        "time": "Thu Dec 01 22:22:41 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:52 2011 -0800"
      },
      "message": "clocksource: Fix bug with max_deferment margin calculation\n\ncommit b1f919664d04a8d0ba29cb76673c7ca3325a2006 upstream.\n\nIn order to leave a margin of 12.5% we should \u003e\u003e 3 not \u003e\u003e 5.\n\nSigned-off-by: Yang Honggang (Joseph) \u003ceagle.rtlinux@gmail.com\u003e\n[jstultz: Modified commit subject]\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9140096a5b039dcdfbb0a005f4b9e6b17eb3123e",
      "tree": "a78847c0bd04fbdb4f3d15c9589f379919c3087b",
      "parents": [
        "248f3235861683bb1ffc7316b56bf783b162666f"
      ],
      "author": {
        "name": "Gleb Natapov",
        "email": "gleb@redhat.com",
        "time": "Tue Oct 18 19:55:51 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:50 2011 -0800"
      },
      "message": "jump_label: jump_label_inc may return before the code is patched\n\ncommit bbbf7af4bf8fc69bc751818cf30521080fa47dcb upstream.\n\nIf cpu A calls jump_label_inc() just after atomic_add_return() is\ncalled by cpu B, atomic_inc_not_zero() will return value greater then\nzero and jump_label_inc() will return to a caller before jump_label_update()\nfinishes its job on cpu B.\n\nLink: http://lkml.kernel.org/r/20111018175551.GH17571@redhat.com\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d80dee54533aa4bfe29def921edb31715fdba214",
      "tree": "f509a1896113dc10a0288052bbee448682f387d6",
      "parents": [
        "eda31b190f7c7033b86ff6e8de3866a4ca25b7df"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 12:34:16 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:48 2011 -0800"
      },
      "message": "tick-broadcast: Stop active broadcast device when replacing it\n\ncommit c1be84309c58b1e7c6d626e28fba41a22b364c3d upstream.\n\nWhen a better rated broadcast device is installed, then the current\nactive device is not disabled, which results in two running broadcast\ndevices.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "eda31b190f7c7033b86ff6e8de3866a4ca25b7df",
      "tree": "ed17bff7b228d122699d232e4d62fe70bea64a08",
      "parents": [
        "4ebbdc2c9aad8e28e1335755c728d31032b24cfb"
      ],
      "author": {
        "name": "Ilya Dryomov",
        "email": "idryomov@gmail.com",
        "time": "Mon Oct 31 11:07:42 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:48 2011 -0800"
      },
      "message": "tracing: fix event_subsystem ref counting\n\ncommit cb59974742aea24adf6637eb0c4b8e7b48bca6fb upstream.\n\nFix a bug introduced by e9dbfae5, which prevents event_subsystem from\never being released.\n\nRef_count was added to keep track of subsystem users, not for counting\nevents.  Subsystem is created with ref_count \u003d 1, so there is no need to\nincrement it for every event, we have nr_events for that.  Fix this by\ntouching ref_count only when we actually have a new user -\nsubsystem_open().\n\nSigned-off-by: Ilya Dryomov \u003cidryomov@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1320052062-7846-1-git-send-email-idryomov@gmail.com\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4e3cd8129cf10c92c8e88251b519703dc65523be",
      "tree": "1cec02db446345585db2afbfeb480d9b8b95042b",
      "parents": [
        "e006de470fa793b770cb098b39b46212a35b1b2b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Nov 23 08:49:49 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:47 2011 -0800"
      },
      "message": "trace_events_filter: Use rcu_assign_pointer() when setting ftrace_event_call-\u003efilter\n\ncommit d3d9acf646679c1981032b0985b386d12fccc60c upstream.\n\nftrace_event_call-\u003efilter is sched RCU protected but didn\u0027t use\nrcu_assign_pointer().  Use it.\n\nTODO: Add proper __rcu annotation to call-\u003efilter and all its users.\n\n-v2: Use RCU_INIT_POINTER() for %NULL clearing as suggested by Eric.\n\nLink: http://lkml.kernel.org/r/20111123164949.GA29639@google.com\n\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0198f84095f61e3ae0643eddb76df9ac684dae43",
      "tree": "ca54cf590f770d86b5a705a73f04dc5c8664b68a",
      "parents": [
        "7e06614ab127e8c9de4af2e8f9d66953d3e68297"
      ],
      "author": {
        "name": "Ido Yariv",
        "email": "ido@wizery.com",
        "time": "Thu Dec 01 13:55:08 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:46 2011 -0800"
      },
      "message": "genirq: Fix race condition when stopping the irq thread\n\ncommit 550acb19269d65f32e9ac4ddb26c2b2070e37f1c upstream.\n\nIn irq_wait_for_interrupt(), the should_stop member is verified before\nsetting the task\u0027s state to TASK_INTERRUPTIBLE and calling schedule().\nIn case kthread_stop sets should_stop and wakes up the process after\nshould_stop is checked by the irq thread but before the task\u0027s state\nis changed, the irq thread might never exit:\n\nkthread_stop                    irq_wait_for_interrupt\n------------                    ----------------------\n\n                                 ...\n...                              while (!kthread_should_stop()) {\nkthread-\u003eshould_stop \u003d 1;\nwake_up_process(k);\nwait_for_completion(\u0026kthread-\u003eexited);\n...\n                                     set_current_state(TASK_INTERRUPTIBLE);\n\n                                     ...\n\n                                     schedule();\n                                 }\n\nFix this by checking if the thread should stop after modifying the\ntask\u0027s state.\n\n[ tglx: Simplified it a bit ]\n\nSigned-off-by: Ido Yariv \u003cido@wizery.com\u003e\nLink: http://lkml.kernel.org/r/1322740508-22640-1-git-send-email-ido@wizery.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "24ee8bfeb1dafdc8d2294d1c296bf4baa9324ad8",
      "tree": "73565676f751caa8f8f8c6079ff18806c501b9d7",
      "parents": [
        "e1ef77bdad527601e9e47b377cbef5bee9df8248"
      ],
      "author": {
        "name": "Jeff Ohlstein",
        "email": "johlstei@codeaurora.org",
        "time": "Fri Nov 18 15:47:10 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:28 2011 -0800"
      },
      "message": "hrtimer: Fix extra wakeups from __remove_hrtimer()\n\ncommit 27c9cd7e601632b3794e1c3344d37b86917ffb43 upstream.\n\n__remove_hrtimer() attempts to reprogram the clockevent device when\nthe timer being removed is the next to expire. However,\n__remove_hrtimer() reprograms the clockevent *before* removing the\ntimer from the timerqueue and thus when hrtimer_force_reprogram()\nfinds the next timer to expire it finds the timer we\u0027re trying to\nremove.\n\nThis is especially noticeable when the system switches to NOHz mode\nand the system tick is removed. The timer tick is removed from the\nsystem but the clockevent is programmed to wakeup in another HZ\nanyway.\n\nSilence the extra wakeup by removing the timer from the timerqueue\nbefore calling hrtimer_force_reprogram() so that we actually program\nthe clockevent for the next timer to expire.\n\nThis was broken by 998adc3 \"hrtimers: Convert hrtimers to use\ntimerlist infrastructure\".\n\nSigned-off-by: Jeff Ohlstein \u003cjohlstei@codeaurora.org\u003e\nLink: http://lkml.kernel.org/r/1321660030-8520-1-git-send-email-johlstei@codeaurora.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e1ef77bdad527601e9e47b377cbef5bee9df8248",
      "tree": "384280ecb7c3c04ddb0e1083a462a73783b4dd06",
      "parents": [
        "953d0c888eda75de7d248017f6dd2e5e254ad0cc"
      ],
      "author": {
        "name": "Hector Palacios",
        "email": "hector.palacios@digi.com",
        "time": "Mon Nov 14 11:15:25 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:28 2011 -0800"
      },
      "message": "timekeeping: add arch_offset hook to ktime_get functions\n\ncommit d004e024058a0eaca097513ce62cbcf978913e0a upstream.\n\nktime_get and ktime_get_ts were calling timekeeping_get_ns()\nbut later they were not calling arch_gettimeoffset() so architectures\nusing this mechanism returned 0 ns when calling these functions.\n\nThis happened for example when running Busybox\u0027s ping which calls\nsyscall(__NR_clock_gettime, CLOCK_MONOTONIC, ts) which eventually\ncalls ktime_get. As a result the returned ping travel time was zero.\n\nSigned-off-by: Hector Palacios \u003chector.palacios@digi.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "953d0c888eda75de7d248017f6dd2e5e254ad0cc",
      "tree": "58017d4edf59b04ec606eafd12e6c6a7f967abd7",
      "parents": [
        "1c8ca629b774d8dd5fb85baf985f260cfcd68fc8"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Tue Nov 22 07:44:47 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:27 2011 -0800"
      },
      "message": "cgroup_freezer: fix freezing groups with stopped tasks\n\ncommit 884a45d964dd395eda945842afff5e16bcaedf56 upstream.\n\n2d3cbf8b (cgroup_freezer: update_freezer_state() does incorrect state\ntransitions) removed is_task_frozen_enough and replaced it with a simple\nfrozen call. This, however, breaks freezing for a group with stopped tasks\nbecause those cannot be frozen and so the group remains in CGROUP_FREEZING\nstate (update_if_frozen doesn\u0027t count stopped tasks) and never reaches\nCGROUP_FROZEN.\n\nLet\u0027s add is_task_frozen_enough back and use it at the original locations\n(update_if_frozen and try_to_freeze_cgroup). Semantically we consider\nstopped tasks as frozen enough so we should consider both cases when\ntesting frozen tasks.\n\nTestcase:\nmkdir /dev/freezer\nmount -t cgroup -o freezer none /dev/freezer\nmkdir /dev/freezer/foo\nsleep 1h \u0026\npid\u003d$!\nkill -STOP $pid\necho $pid \u003e /dev/freezer/foo/tasks\necho FROZEN \u003e /dev/freezer/foo/freezer.state\nwhile true\ndo\n\tcat /dev/freezer/foo/freezer.state\n\t[ \"`cat /dev/freezer/foo/freezer.state`\" \u003d \"FROZEN\" ] \u0026\u0026 break\n\tsleep 1\ndone\necho OK\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Tomasz Buchert \u003ctomasz.buchert@inria.fr\u003e\nCc: Paul Menage \u003cpaul@paulmenage.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1c8ca629b774d8dd5fb85baf985f260cfcd68fc8",
      "tree": "8779a2a6116853e9bca53df9814c81c43865f807",
      "parents": [
        "421f55945fb8515c6f322d20e9b0a2d390235e05"
      ],
      "author": {
        "name": "Edward Donovan",
        "email": "edward.donovan@numble.net",
        "time": "Sun Nov 27 23:07:34 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 09 08:52:27 2011 -0800"
      },
      "message": "genirq: fix regression in irqfixup, irqpoll\n\ncommit 52553ddffad76ccf192d4dd9ce88d5818f57f62a upstream.\n\nCommit fa27271bc8d2(\"genirq: Fixup poll handling\") introduced a\nregression that broke irqfixup/irqpoll for some hardware configurations.\n\nAmidst reorganizing \u0027try_one_irq\u0027, that patch removed a test that\nchecked for \u0027action-\u003ehandler\u0027 returning IRQ_HANDLED, before acting on\nthe interrupt.  Restoring this test back returns the functionality lost\nsince 2.6.39.  In the current set of tests, after \u0027action\u0027 is set, it\nmust precede \u0027!action-\u003enext\u0027 to take effect.\n\nWith this and my previous patch to irq/spurious.c, c75d720fca8a, all\nIRQ regressions that I have encountered are fixed.\n\nSigned-off-by: Edward Donovan \u003cedward.donovan@numble.net\u003e\nReported-and-tested-by: Rogério Brito \u003crbrito@ime.usp.br\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "45db69a9fd0d36ec3fafcf0255cf9a592df0c49c",
      "tree": "ac411234281e424f48c674a86cb42ca874e8f605",
      "parents": [
        "b9599f1d4d913ecc85cdd0ebe16dee8210120753"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Aug 23 13:20:46 2011 +0200"
      },
      "committer": {
        "name": "Jeff Ohlstein",
        "email": "johlstei@codeaurora.org",
        "time": "Wed Dec 07 13:12:14 2011 -0800"
      },
      "message": "nohz: Remove \"Switched to NOHz mode\" debugging messages\n\nWhen performing cpu hotplug tests the kernel printk log buffer gets flooded\nwith pointless \"Switched to NOHz mode...\" messages. Especially when afterwards\nanalyzing a dump this might have removed more interesting stuff out of the\nbuffer.\nAssuming that switching to NOHz mode simply works just remove the printk.\n\nChange-Id: I1746f8c0119a512055716c3fd77a966b735ca49b\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20110823112046.GB2540@osiris.boeblingen.de.ibm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Jeff Ohlstein \u003cjohlstei@codeaurora.org\u003e\n"
    },
    {
      "commit": "219a067fc90ff329bed117238e4f79b70f9b8719",
      "tree": "7f348ceae68395bf30a08b1beb43b7a8c5d70ab0",
      "parents": [
        "3d576c041485ad582b1027f9a3cbcfa86f4c762a",
        "b599ff7fcb262317403bb1be613ab52b9e2a07fc"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Fri Dec 02 21:29:05 2011 -0800"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Fri Dec 02 21:29:05 2011 -0800"
      },
      "message": "Merge \"Revert \"power: wakelock: don\u0027t set check_done flag if aborting\"\" into msm-3.0"
    },
    {
      "commit": "06e857251e781e36453009b3efb338dc8fff6528",
      "tree": "cb35d6df7ec8779991c2438c3060c71586624e83",
      "parents": [
        "133ddac5a8ef75139bb2f8275e4d45f348c15105"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Nov 09 16:39:19 2011 -0500"
      },
      "committer": {
        "name": "Ashwin Chaugule",
        "email": "ashwinc@codeaurora.org",
        "time": "Tue Nov 29 16:42:33 2011 -0500"
      },
      "message": "ARM: cpu_pm: Add cpu power management notifiers\n\nDuring some CPU power modes entered during idle, hotplug and\nsuspend, peripherals located in the CPU power domain, such as\nthe GIC, localtimers, and VFP, may be powered down.  Add a\nnotifier chain that allows drivers for those peripherals to\nbe notified before and after they may be reset.\n\nSigned-off-by: Colin Cross \u003cccross \u003cat\u003e android.com\u003e\n[santosh.shilimkar \u003cat\u003e ti.com: Rebased against 3.1-rc3]\nSigned-off-by: Santosh Shilimkar \u003csantosh.shilimkar \u003cat\u003e ti.com\u003e\nTested-by: Kevin Hilman \u003ckhilman \u003cat\u003e ti.com\u003e\nChange-Id: I6e076344b268869d12033f57321f3e7cf23b05e8\nSigned-off-by: Ashwin Chaugule \u003cashwinc@codeaurora.org\u003e\n"
    },
    {
      "commit": "b599ff7fcb262317403bb1be613ab52b9e2a07fc",
      "tree": "f3b6bfa8496a13d7402051a891d3991f17fc676e",
      "parents": [
        "4b0f0d9b57b19ecd3a7d03460cb9682b0dc3544e"
      ],
      "author": {
        "name": "Patrick Cain",
        "email": "pcain@codeaurora.org",
        "time": "Mon Nov 28 14:41:25 2011 -0800"
      },
      "committer": {
        "name": "Patrick Cain",
        "email": "pcain@codeaurora.org",
        "time": "Mon Nov 28 14:41:25 2011 -0800"
      },
      "message": "Revert \"power: wakelock: don\u0027t set check_done flag if aborting\"\n\nThis reverts commit 7ef4dbaa2adcadb39b5b60051d637e0203c7b6ba.\n\nRevert \"power: wakelock: BUG if wakelock is taken very late\"\n\nThis reverts commit 57b34bbdca587ed67ed3d6fc9a83cf3564ac770d.\n\nChange-Id: Ie1288b5e6c899ac4419c55b91cb024b8093b5ffe\nSigned-off-by: Patrick Cain \u003cpcain@codeaurora.org\u003e\n"
    },
    {
      "commit": "2cecc3d5df1bfb3356234b81cda993e187ac4f89",
      "tree": "1f4cfbf9717b67270738ea0540744002764c7b9c",
      "parents": [
        "c7e2ea59cdd74342d3614bee9fc42fa2fb5add7e"
      ],
      "author": {
        "name": "Edward Donovan",
        "email": "edward.donovan@numble.net",
        "time": "Tue Nov 01 15:29:44 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Nov 26 09:09:51 2011 -0800"
      },
      "message": "genirq: Fix irqfixup, irqpoll regression\n\ncommit c75d720fca8a91ce99196d33adea383621027bf2 upstream.\n\ncommit d05c65fff0 (\"genirq: spurious: Run only one poller at a time\")\nintroduced a regression, leaving the boot options \u0027irqfixup\u0027 and\n\u0027irqpoll\u0027 non-functional. The patch placed tests in each function, to\nexit if the function is already running. The test in \u0027misrouted_irq\u0027\nexited when it should have proceeded, effectively disabling\n\u0027misrouted_irq\u0027 and \u0027poll_spurious_irqs\u0027.\n\nThe check for an already running poller needs to be \"!\u003d 1\" not \"\u003d\u003d 1\"\nas \"1\" is the value when the first poller starts running.\n\nSigned-off-by: Edward Donovan \u003cedward.donovan@numble.net\u003e\nCc: maciej.rutecki@gmail.com\nLink: http://lkml.kernel.org/r/1320175784-6745-1-git-send-email-edward.donovan@numble.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "949f8650085a5d20168f626e237540bf35e6ba67",
      "tree": "4b8cd42f0fe53a6567688c901ab2c3df834af7f3",
      "parents": [
        "8f6490befbf6ae217b2d674b4f01b5358a3edcac",
        "ead6b5105018ab86db3c39f1c909b2e696a08317"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Wed Nov 23 14:51:07 2011 -0800"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Wed Nov 23 14:51:07 2011 -0800"
      },
      "message": "Merge \"hrtimer: remove timerqueue node before reprogramming clockevent device\" into msm-3.0"
    },
    {
      "commit": "452d440ab295475afb04dee90879f5fb70254659",
      "tree": "9e9dd3c13903b316c9e016fde1e4ea5b3373caf6",
      "parents": [
        "cf70c6a40073530c9e23fb373a541c09996429c7"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Nov 22 15:28:27 2011 -0800"
      },
      "committer": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Nov 22 16:49:43 2011 -0800"
      },
      "message": "Fix \"time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime\" to compile on 3.0\n\nChange-Id: I1225f279cda04dedbfb7f853f6b58f1032bd6d2b\n"
    },
    {
      "commit": "cf70c6a40073530c9e23fb373a541c09996429c7",
      "tree": "ed3729edc89111a87447373523f2a4cf2bc6d5e4",
      "parents": [
        "340ede367101d47c8fd69e83e5e6db9077f4caad"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Jun 01 18:18:09 2011 -0700"
      },
      "committer": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Nov 22 16:49:29 2011 -0800"
      },
      "message": "time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime\n\nArve suggested making sure we catch possible negative sleep time\nintervals that could be passed into timekeeping_inject_sleeptime.\n\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "ead6b5105018ab86db3c39f1c909b2e696a08317",
      "tree": "a17eed607317dcb071086d7b3b3f71a6ac75c186",
      "parents": [
        "5ceed1e252c91d96d14c924e276e3f8ba9af100a"
      ],
      "author": {
        "name": "Jeff Ohlstein",
        "email": "johlstei@codeaurora.org",
        "time": "Thu Nov 17 13:49:36 2011 -0800"
      },
      "committer": {
        "name": "Jeff Ohlstein",
        "email": "johlstei@codeaurora.org",
        "time": "Thu Nov 17 16:25:08 2011 -0800"
      },
      "message": "hrtimer: remove timerqueue node before reprogramming clockevent device\n\nCurrently the __remove_hrtimer function attempts to reprogram the\nclockevent device so that we don\u0027t wake up unnecessarily from a timer we\nhave deleted. However, it does the reprogramming before actually\nremoving the timer in question from the timerqueue, so it turns into a\nnoop. This causes us to have an extra wakeup every time we remove the\ntimer that fires this. This is especially noticeable when the system\ngoes idle and we switch to NOHZ mode, as the system will always wakeup\none extra time when the system tick is removed.\n\nChange-Id: If8656bbf85694228f279923fa86bd798d23e0f49\nSigned-off-by: Jeff Ohlstein \u003cjohlstei@codeaurora.org\u003e\n"
    },
    {
      "commit": "d074fa2796bdbc42c4f918c78d6711bafc80b1c8",
      "tree": "033929706a0aae95f65c134a8fc09cec3fb3e75d",
      "parents": [
        "53ae1740b250e4d02dd7a6ca82075355ad99dc23",
        "9ab6a29787b1221a697f85835645549668258bdc"
      ],
      "author": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Wed Nov 16 13:52:50 2011 -0800"
      },
      "committer": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Wed Nov 16 13:52:50 2011 -0800"
      },
      "message": "Merge remote-tracking branch \u0027common/android-3.0\u0027 into msm-3.0\n\n* common/android-3.0: (570 commits)\n  misc: remove kernel debugger core\n  ARM: common: fiq_debugger: dump sysrq directly to console if enabled\n  ARM: common: fiq_debugger: add irq context debug functions\n  net: wireless: bcmdhd: Call init_ioctl() only if was started properly for WEXT\n  net: wireless: bcmdhd: Call init_ioctl() only if was started properly\n  net: wireless: bcmdhd: Fix possible memory leak in escan/iscan\n  cpufreq: interactive governor: default 20ms timer\n  cpufreq: interactive governor: go to intermediate hi speed before max\n  cpufreq: interactive governor: scale to max only if at min speed\n  cpufreq: interactive governor: apply intermediate load on current speed\n  ARM: idle: update idle ticks before call idle end notifier\n  input: gpio_input: don\u0027t print debounce message unless flag is set\n  net: wireless: bcm4329: Skip dhd_bus_stop() if bus is already down\n  net: wireless: bcmdhd: Skip dhd_bus_stop() if bus is already down\n  net: wireless: bcmdhd: Improve suspend/resume processing\n  net: wireless: bcmdhd: Check if FW is Ok for internal FW call\n  tcp: Don\u0027t nuke connections for the wrong protocol\n  ARM: common: fiq_debugger: make uart irq be no_suspend\n  net: wireless: Skip connect warning for CONFIG_CFG80211_ALLOW_RECONNECT\n  mm: avoid livelock on !__GFP_FS allocations\n  ...\n\nConflicts:\n\tarch/arm/mm/cache-l2x0.c\n\tarch/arm/vfp/vfpmodule.c\n\tdrivers/mmc/core/host.c\n\tkernel/power/wakelock.c\n\tnet/bluetooth/hci_event.c\n\nSigned-off-by: Bryan Huntsman \u003cbryanh@codeaurora.org\u003e\n"
    },
    {
      "commit": "f450df800450e9c7ec8c53bdb72d6c4ef5f17d4e",
      "tree": "9b9300377184b368b48f031e9ff6afad454c379a",
      "parents": [
        "3fa57c1bf5fb311544199b7837a08b9f5bf5e6e4"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Wed Sep 21 20:55:04 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:37:17 2011 -0800"
      },
      "message": "PM / Suspend: Off by one in pm_suspend()\n\ncommit 528f7ce6e439edeac38f6b3f8561f1be129b5e91 upstream.\n\nIn enter_state() we use \"state\" as an offset for the pm_states[]\narray.  The pm_states[] array only has PM_SUSPEND_MAX elements so\nthis test is off by one.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "43742b14ffbe87453e96f4411389445fc707df57",
      "tree": "42e98afb73a408e2cf9b3525648657f8c7612d2c",
      "parents": [
        "eb4b2df8f20d4479eceeb9bc51695caaa7bcd229"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Sep 26 19:06:32 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:36:23 2011 -0800"
      },
      "message": "ptrace: don\u0027t clear GROUP_STOP_SIGMASK on double-stop\n\n[This does not correspond to any specific patch in the upstream tree as it was\nfixed accidentally by rewriting the code in the 3.1 release]\n\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d740121\n\n1. Luke Macken triggered WARN_ON(!(group_stop \u0026 GROUP_STOP_SIGMASK))\n   in do_signal_stop().\n\n   This is because do_signal_stop() clears GROUP_STOP_SIGMASK part\n   unconditionally but doesn\u0027t update it if task_is_stopped().\n\n2. Looking at this problem I noticed that WARN_ON_ONCE(!ptrace) is\n   not right, a stopped-but-resumed tracee can clone the untraced\n   thread in the SIGNAL_STOP_STOPPED group, the new thread can start\n   another group-stop.\n\n   Remove this warning, we need more fixes to make it true.\n\nReported-by: Luke Macken \u003clmacken@redhat.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "09bb52774e0543390bdba59b67ade093d34e4906",
      "tree": "0515e384685d0898716bfb63cebd4c39be24ee27",
      "parents": [
        "12cb3e734a5616ea0057aee938c553ff6ccbdfbd"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Mon Oct 03 15:37:00 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:54 2011 -0800"
      },
      "message": "genirq: Add IRQF_RESUME_EARLY and resume such IRQs earlier\n\ncommit 9bab0b7fbaceec47d32db51cd9e59c82fb071f5a upstream.\n\nThis adds a mechanism to resume selected IRQs during syscore_resume\ninstead of dpm_resume_noirq.\n\nUnder Xen we need to resume IRQs associated with IPIs early enough\nthat the resched IPI is unmasked and we can therefore schedule\nourselves out of the stop_machine where the suspend/resume takes\nplace.\n\nThis issue was introduced by 676dc3cf5bc3 \"xen: Use IRQF_FORCE_RESUME\".\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Jeremy Fitzhardinge \u003cJeremy.Fitzhardinge@citrix.com\u003e\nCc: xen-devel \u003cxen-devel@lists.xensource.com\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLink: http://lkml.kernel.org/r/1318713254.11016.52.camel@dagon.hellion.org.uk\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "12cb3e734a5616ea0057aee938c553ff6ccbdfbd",
      "tree": "828c560746757c997c97a76777444a036a5ef9ac",
      "parents": [
        "d59892017c5f6de2fdee221f2a7788696e9f2cda"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Oct 14 10:44:25 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:53 2011 -0800"
      },
      "message": "tracing: Fix returning of duplicate data after EOF in trace_pipe_raw\n\ncommit 436fc280261dcfce5af38f08b89287750dc91cd2 upstream.\n\nThe trace_pipe_raw handler holds a cached page from the time the file\nis opened to the time it is closed. The cached page is used to handle\nthe case of the user space buffer being smaller than what was read from\nthe ring buffer. The left over buffer is held in the cache so that the\nnext read will continue where the data left off.\n\nAfter EOF is returned (no more data in the buffer), the index of\nthe cached page is set to zero. If a user app reads the page again\nafter EOF, the check in the buffer will see that the cached page\nis less than page size and will return the cached page again. This\nwill cause reading the trace_pipe_raw again after EOF to return\nduplicate data, making the output look like the time went backwards\nbut instead data is just repeated.\n\nThe fix is to not reset the index right after all data is read\nfrom the cache, but to reset it after all data is read and more\ndata exists in the ring buffer.\n\nReported-by: Jeremy Eder \u003cjeder@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c7f65094f7e2b8463a7c002e967e78db8f30468a",
      "tree": "da95910f073769273a1708fccc566e18337d0752",
      "parents": [
        "40b3c4dc2c6c44972323be3a1ebd62c4fe35fac0"
      ],
      "author": {
        "name": "hank",
        "email": "pyu@redhat.com",
        "time": "Tue Sep 20 13:53:39 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:52 2011 -0800"
      },
      "message": "time: Change jiffies_to_clock_t() argument type to unsigned long\n\ncommit cbbc719fccdb8cbd87350a05c0d33167c9b79365 upstream.\n\nThe parameter\u0027s origin type is long. On an i386 architecture, it can\neasily be larger than 0x80000000, causing this function to convert it\nto a sign-extended u64 type.\n\nChange the type to unsigned long so we get the correct result.\n\nSigned-off-by: hank \u003cpyu@redhat.com\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\n[ build fix ]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3cdf240310b4f3d94981d727d3660c78a50a40c6",
      "tree": "fae7019c027ef93773110db514fa39f63cff46f5",
      "parents": [
        "50f621d8f5b6f9e8ed931df12c595fd0e882f8e3"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Oct 26 13:10:39 2011 +1030"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 11 09:35:48 2011 -0800"
      },
      "message": "kmod: prevent kmod_loop_msg overflow in __request_module()\n\ncommit 37252db6aa576c34fd794a5a54fb32d7a8b3a07a upstream.\n\nDue to post-increment in condition of kmod_loop_msg in __request_module(),\nthe system log can be spammed by much more than 5 instances of the \u0027runaway\nloop\u0027 message if the number of events triggering it makes the kmod_loop_msg\nto overflow.\n\nFix that by making sure we never increment it past the threshold.\n\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "afcffe54c379314f8e97610673d7ea783f559d58",
      "tree": "d4ca259e42a8f20a40bf4a7e97bca51b989f6102",
      "parents": [
        "b811aa7237b013a03c62266ae10ed79e27a4fe38"
      ],
      "author": {
        "name": "Patrick Cain",
        "email": "pcain@codeaurora.org",
        "time": "Fri Nov 04 14:25:55 2011 -0700"
      },
      "committer": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Tue Nov 08 23:21:57 2011 -0800"
      },
      "message": "Revert \"power: wakelock: don\u0027t set check_done flag if aborting\"\n\nThis reverts commit 7ef4dbaa2adcadb39b5b60051d637e0203c7b6ba.\n\nRevert \"power: wakelock: BUG if wakelock is taken very late\"\n\nThis reverts commit 57b34bbdca587ed67ed3d6fc9a83cf3564ac770d.\n\nChange-Id: Id4e05b191cf7781b8e0d0bed42f1c136b1ac428e\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n"
    },
    {
      "commit": "b811aa7237b013a03c62266ae10ed79e27a4fe38",
      "tree": "a35f2ecf2e46792fc3663c2223b73268217f67be",
      "parents": [
        "6f6fdc65bfe8c38b6d905903de911eaed2a74e18"
      ],
      "author": {
        "name": "Patrick Cain",
        "email": "pcain@codeaurora.org",
        "time": "Fri Nov 04 14:25:36 2011 -0700"
      },
      "committer": {
        "name": "Patrick Cain",
        "email": "pcain@codeaurora.org",
        "time": "Fri Nov 04 14:25:36 2011 -0700"
      },
      "message": "Revert \"power: wakelock: reset wakelock checked early\"\n\nThis reverts commit fa3a6d5572e22676c8c93775662b0d755a8dca85.\n\nSigned-off-by: Patrick Cain \u003cpcain@codeaurora.org\u003e\n"
    },
    {
      "commit": "2bb3e310159b65c88caf0c67a20ed257568be267",
      "tree": "e4ad01c06a9e27939781c5dd9d0cb92e6fcd54d5",
      "parents": [
        "2f53cb72c1574d3880d9e88e254b756565fe2f6d",
        "97596c34030ed28657ccafddb67e17a03890b90a"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Oct 27 15:01:19 2011 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Oct 27 15:01:19 2011 -0700"
      },
      "message": "Merge commit \u0027v3.0.8\u0027 into android-3.0\n"
    },
    {
      "commit": "fa3a6d5572e22676c8c93775662b0d755a8dca85",
      "tree": "e57f4c557fa8f09ebb1fd6726af15b68bd053efe",
      "parents": [
        "54932793d51fde72af2942ee120126412489b134"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Tue Oct 25 20:14:44 2011 -0700"
      },
      "committer": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Tue Oct 25 20:14:44 2011 -0700"
      },
      "message": "power: wakelock: reset wakelock checked early\n\nCurrently we reset msm_suspend_check_done in resume_noirq and set it\nin the suspend_noirq stage right after the wakelock checks are done.\n\nAn issue is discovered recently that a wakelock can be held much earlier\nin the resume sequence - a tasklet was scheduled right in the arch specifc\nresume path, and this tasklet was run as soon as local interrupt was\nenabled (the I bit in the CPSR for arm processors).  The tasklet endedup\ngrabbing a wakelock thus causing a BUG.\n\nTo avoid this situation reset msm_suspend_check_done before enabling local\ninterrupts using the syscore ops.\n\nChange-Id: I12766cb759134185e9727829f71893934492cc5f\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n"
    },
    {
      "commit": "607ce3ed1cf6aa5af82a12faf1adf0de5d2f583e",
      "tree": "c362e60a92b358b460147092ea479bb3f52055c8",
      "parents": [
        "f62f4cad504f32e9d4e407ea5ba8a743da399a8a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Oct 17 11:50:30 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Oct 25 07:10:14 2011 +0200"
      },
      "message": "cputimer: Cure lock inversion\n\ncommit bcd5cff7216f9b2de0a148cc355eac199dc6f1cf upstream.\n\nThere\u0027s a lock inversion between the cputimer-\u003elock and rq-\u003elock;\nnotably the two callchains involved are:\n\n update_rlimit_cpu()\n   sighand-\u003esiglock\n   set_process_cpu_timer()\n     cpu_timer_sample_group()\n       thread_group_cputimer()\n         cputimer-\u003elock\n         thread_group_cputime()\n           task_sched_runtime()\n             -\u003epi_lock\n             rq-\u003elock\n\n scheduler_tick()\n   rq-\u003elock\n   task_tick_fair()\n     update_curr()\n       account_group_exec()\n         cputimer-\u003elock\n\nWhere the first one is enabling a CLOCK_PROCESS_CPUTIME_ID timer, and\nthe second one is keeping up-to-date.\n\nThis problem was introduced by e8abccb7193 (\"posix-cpu-timers: Cure\nSMP accounting oddities\").\n\nCure the problem by removing the cputimer-\u003elock and rq-\u003elock nesting,\nthis leaves concurrent enablers doing duplicate work, but the time\nwasted should be on the same order otherwise wasted spinning on the\nlock and the greater-than assignment filter should ensure we preserve\nmonotonicity.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nReported-by: Simon Kirby \u003csim@hostway.ca\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nLink: http://lkml.kernel.org/r/1318928713.21167.4.camel@twins\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "60635529f6aec7572ae7009aabd80558cf2f43b4",
      "tree": "d1e0354991824e03a169dd784158cd1894c2d417",
      "parents": [
        "05ffb6746c59a967115714ea1e5b8412291874ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 17 08:24:24 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Oct 25 07:10:14 2011 +0200"
      },
      "message": "Avoid using variable-length arrays in kernel/sys.c\n\ncommit a84a79e4d369a73c0130b5858199e949432da4c6 upstream.\n\nThe size is always valid, but variable-length arrays generate worse code\nfor no good reason (unless the function happens to be inlined and the\ncompiler sees the length for the simple constant it is).\n\nAlso, there seems to be some code generation problem on POWER, where\nHenrik Bakken reports that register r28 can get corrupted under some\nsubtle circumstances (interrupt happening at the wrong time?).  That all\nindicates some seriously broken compiler issues, but since variable\nlength arrays are bad regardless, there\u0027s little point in trying to\nchase it down.\n\n\"Just don\u0027t do that, then\".\n\nReported-by: Henrik Grindal Bakken \u003chenribak@cisco.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "971a0ee566cbe64558020ee6c254910516a43549",
      "tree": "a2d7fa66effa881da7c7fdb70c702a2867446550",
      "parents": [
        "6469dfb4eeada88ded776eebdd8a687146ffa286"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 26 03:19:06 2011 -0600"
      },
      "committer": {
        "name": "Sathish Ambley",
        "email": "sambley@codeaurora.org",
        "time": "Mon Oct 24 10:42:45 2011 -0700"
      },
      "message": "dt/irq: add irq_domain_generate_simple() helper\n\nirq_domain_generate_simple() is an easy way to generate an irq translation\ndomain for simple irq controllers.  It assumes a flat 1:1 mapping from\nhardware irq number to an offset of the first linux irq number assigned\nto the controller\n\nChange-Id: I0820754314a0c15b1cc9881bc38b75b0de2509b2\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Sathish Ambley \u003csambley@codeaurora.org\u003e\n"
    },
    {
      "commit": "6469dfb4eeada88ded776eebdd8a687146ffa286",
      "tree": "bda65acc3b37508de2c9829cb18bc90ea9fabdd1",
      "parents": [
        "00f0deb25f2074062b0af7db870b8f34b4906b1d"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 26 03:19:06 2011 -0600"
      },
      "committer": {
        "name": "Sathish Ambley",
        "email": "sambley@codeaurora.org",
        "time": "Mon Oct 24 10:42:45 2011 -0700"
      },
      "message": "irq: add irq_domain translation infrastructure\n\nThis patch adds irq_domain infrastructure for translating from\nhardware irq numbers to linux irqs.  This is particularly important\nfor architectures adding device tree support because the current\nimplementation (excluding PowerPC and SPARC) cannot handle\ntranslation for more than a single interrupt controller.  irq_domain\nsupports device tree translation for any number of interrupt\ncontrollers.\n\nThis patch converts x86, Microblaze, ARM and MIPS to use irq_domain\nfor device tree irq translation.  x86 is untested beyond compiling it,\nirq_domain is enabled for MIPS and Microblaze, but the old behaviour is\npreserved until the core code is modified to actually register an\nirq_domain yet.  On ARM it works and is required for much of the new\nARM device tree board support.\n\nPowerPC has /not/ been converted to use this new infrastructure.  It\nis still missing some features before it can replace the virq\ninfrastructure already in powerpc (see documentation on\nirq_domain_map/unmap for details).  Followup patches will add the\nmissing pieces and migrate PowerPC to use irq_domain.\n\nSPARC has its own method of managing interrupts from the device tree\nand is unaffected by this change.\n\nChange-Id: Ia5fa674a97c85e2fc8e30275753b1494a97bd1d9\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Sathish Ambley \u003csambley@codeaurora.org\u003e\n"
    },
    {
      "commit": "e9baa79ea038ac2dfd3c8eb3ec33b9c4e8101b25",
      "tree": "e05fd0f8c920de87dbf17a59acf49e4467d8c424",
      "parents": [
        "74e902972e0a0d207dbcc4b50c5c2720404294bf",
        "b615b0e3d4661277cfef5e94957dfa62b4d94bb9"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Mon Oct 24 03:04:12 2011 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Mon Oct 24 03:04:12 2011 -0700"
      },
      "message": "Merge \"genirq: chip: set pending only for edge interrupts\" into msm-3.0"
    },
    {
      "commit": "b615b0e3d4661277cfef5e94957dfa62b4d94bb9",
      "tree": "d6c9aedd2ccf6f73257982def9b73fbdaa361968",
      "parents": [
        "c60c2d46299ec789b639c9b0e7dc82f130fa6603"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Fri Oct 21 19:59:05 2011 -0700"
      },
      "committer": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Fri Oct 21 20:32:18 2011 -0700"
      },
      "message": "genirq: chip: set pending only for edge interrupts\n\nThe IRQS_PENDING flag is meant to record an edge interrupt trigger event\nwhen that interrupt is disabled.\n\nWhen an edge triggered interrupt is enabled, check_irq_resend() retriggers\nthat irq and resets the flag to zero if set. Note that check_irq_resend()\nonly does this for edge triggered interrupts.\n\nFor level triggered interrupts it is expected that the interrupt remains\nactive and doesn\u0027t need this PENDING flag assistance from software for\nre-triggering it.\n\nHowever, handle_fasteoi_irq flow handler sets the PENDING flag even for\na disabled level interrupt. This causes an adverse effect if that level\ninterrupt is marked wakeup. The suspend code sees the pending flag on a\nwakeup interrupt and aborts suspend whereas check_irq_resend does not reset\nit to 0 (as it is a level interrupt). The end result is that the PENDING\nflag on this level triggered wakeup interrupt never clears and the system\n keeps aborting suspend.\n\nFix this by setting IRQS_PENDING flag only for edge interrupts in the\nhandle_fasteoi_irq.\n\nCRs-Fixed: 314344\nChange-Id: I775d40f434f9309fd9672bae372b0f0fb5b91627\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n"
    },
    {
      "commit": "f49d99bc4168c7937655bb09989cc72525163b40",
      "tree": "ad0c9564e7bb8b3e845917440ee34578fb8f5e51",
      "parents": [
        "a21ec56a1e1d13b1cc3a6f62a39c2be49c450747"
      ],
      "author": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Mon Aug 22 19:02:04 2011 -0700"
      },
      "committer": {
        "name": "Amar Singhal",
        "email": "asinghal@codeaurora.org",
        "time": "Thu Oct 20 14:35:49 2011 -0700"
      },
      "message": "rq_stats: Doing rq_stats calculation in the scheduler tick.\n\nWith this change, we do the average run queue statistics calculation\nin the scheduler tick itself. This helps avoid any extra timers to\ndo the same. Also doing this calculation in the scheduler tick avoids\nany bias if the calculation is done in a workqueue\n\nChange-Id: I854d90acc05cc7a7226487be5555976826d8c837\nSigned-off-by: Amar Singhal \u003casinghal@codeaurora.org\u003e\n"
    },
    {
      "commit": "9374622a9923b2343ee2f5083ebe6c51fcc914c5",
      "tree": "e8bb3d4a219b791361b4c9d716350d17be0b7d8f",
      "parents": [
        "d7f04c486e494bf96166ff53b0957369e32509c6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jul 14 23:02:27 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:55 2011 -0700"
      },
      "message": "ftrace: Fix regression where ftrace breaks when modules are loaded\n\ncommit f7bc8b61f65726ff98f52e286b28e294499d7a08 upstream.\n\nEnabling function tracer to trace all functions, then load a module and\nthen disable function tracing will cause ftrace to fail.\n\nThis can also happen by enabling function tracing on the command line:\n\n  ftrace\u003dfunction\n\nand during boot up, modules are loaded, then you disable function tracing\nwith \u0027echo nop \u003e current_tracer\u0027 you will trigger a bug in ftrace that\nwill shut itself down.\n\nThe reason is, the new ftrace code keeps ref counts of all ftrace_ops that\nare registered for tracing. When one or more ftrace_ops are registered,\nall the records that represent the functions that the ftrace_ops will\ntrace have a ref count incremented. If this ref count is not zero,\nwhen the code modification runs, that function will be enabled for tracing.\nIf the ref count is zero, that function will be disabled from tracing.\n\nTo make sure the accounting was working, FTRACE_WARN_ON()s were added\nto updating of the ref counts.\n\nIf the ref count hits its max (\u003e 2^30 ftrace_ops added), or if\nthe ref count goes below zero, a FTRACE_WARN_ON() is triggered which\ndisables all modification of code.\n\nSince it is common for ftrace_ops to trace all functions in the kernel,\ninstead of creating \u003e 20,000 hash items for the ftrace_ops, the hash\ncount is just set to zero, and it represents that the ftrace_ops is\nto trace all functions. This is where the issues arrise.\n\nIf you enable function tracing to trace all functions, and then add\na module, the modules function records do not get the ref count updated.\nWhen the function tracer is disabled, all function records ref counts\nare subtracted. Since the modules never had their ref counts incremented,\nthey go below zero and the FTRACE_WARN_ON() is triggered.\n\nThe solution to this is rather simple. When modules are loaded, and\ntheir functions are added to the the ftrace pool, look to see if any\nftrace_ops are registered that trace all functions. And for those,\nupdate the ref count for the module function records.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n\n"
    },
    {
      "commit": "d7f04c486e494bf96166ff53b0957369e32509c6",
      "tree": "5f133f3a4b823bcbdbe66aa1265254bf8f7e316f",
      "parents": [
        "e35c99bc50ef74c02244d6e6d40868f9a49a59be"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jul 07 11:09:22 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:55 2011 -0700"
      },
      "message": "ftrace: Fix regression of :mod:module function enabling\n\ncommit 43dd61c9a09bd413e837df829e6bfb42159be52a upstream.\n\nThe new code that allows different utilities to pick and choose\nwhat functions they trace broke the :mod: hook that allows users\nto trace only functions of a particular module.\n\nThe reason is that the :mod: hook bypasses the hash that is setup\nto allow individual users to trace their own functions and uses\nthe global hash directly. But if the global hash has not been\nset up, it will cause a bug:\n\necho \u0027*:mod:radeon\u0027 \u003e /sys/kernel/debug/set_ftrace_filter\n\nproduces:\n\n [drm:drm_mode_getfb] *ERROR* invalid framebuffer id\n [drm:radeon_crtc_page_flip] *ERROR* failed to reserve new rbo buffer before flip\n BUG: unable to handle kernel paging request at ffffffff8160ec90\n IP: [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n PGD 1a05067 PUD 1a09063 PMD 80000000016001e1\n Oops: 0003 [#1] SMP Jul  7 04:02:28 phyllis kernel: [55303.858604] CPU 1\n Modules linked in: cryptd aes_x86_64 aes_generic binfmt_misc rfcomm bnep ip6table_filter hid radeon r8169 ahci libahci mii ttm drm_kms_helper drm video i2c_algo_bit intel_agp intel_gtt\n\n Pid: 10344, comm: bash Tainted: G        WC  3.0.0-rc5 #1 Dell Inc. Inspiron N5010/0YXXJJ\n RIP: 0010:[\u003cffffffff810d9136\u003e]  [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n RSP: 0018:ffff88003a96bda8  EFLAGS: 00010246\n RAX: ffff8801301735c0 RBX: ffffffff8160ec80 RCX: 0000000000306ee0\n RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff880137c92940\n RBP: ffff88003a96bdb8 R08: ffff880137c95680 R09: 0000000000000000\n R10: 0000000000000001 R11: 0000000000000000 R12: ffffffff81c9df78\n R13: ffff8801153d1000 R14: 0000000000000000 R15: 0000000000000000\n FS: 00007f329c18a700(0000) GS:ffff880137c80000(0000) knlGS:0000000000000000\n CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n CR2: ffffffff8160ec90 CR3: 000000003002b000 CR4: 00000000000006e0\n DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n Process bash (pid: 10344, threadinfo ffff88003a96a000, task ffff88012fcfc470)\n Stack:\n  0000000000000fd0 00000000000000fc ffff88003a96be38 ffffffff810d92f5\n  ffff88011c4c4e00 ffff880000000000 000000000b69f4d0 ffffffff8160ec80\n  ffff8800300e6f06 0000000081130295 0000000000000282 ffff8800300e6f00\n Call Trace:\n  [\u003cffffffff810d92f5\u003e] match_records+0x155/0x1b0\n  [\u003cffffffff810d940c\u003e] ftrace_mod_callback+0xbc/0x100\n  [\u003cffffffff810dafdf\u003e] ftrace_regex_write+0x16f/0x210\n  [\u003cffffffff810db09f\u003e] ftrace_filter_write+0xf/0x20\n  [\u003cffffffff81166e48\u003e] vfs_write+0xc8/0x190\n  [\u003cffffffff81167001\u003e] sys_write+0x51/0x90\n  [\u003cffffffff815c7e02\u003e] system_call_fastpath+0x16/0x1b\n Code: 48 8b 33 31 d2 48 85 f6 75 33 49 89 d4 4c 03 63 08 49 8b 14 24 48 85 d2 48 89 10 74 04 48 89 42 08 49 89 04 24 4c 89 60 08 31 d2\n RIP [\u003cffffffff810d9136\u003e] add_hash_entry+0x66/0xd0\n  RSP \u003cffff88003a96bda8\u003e\n CR2: ffffffff8160ec90\n ---[ end trace a5d031828efdd88e ]---\n\nReported-by: Brian Marete \u003cmarete@toshnix.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "249cf808ba1a0d403fe7c476a74b66e2bc0a8e53",
      "tree": "e090348cc2bc2a3a1a226f35e6c6f99f76c1bebb",
      "parents": [
        "3217df8e225c8579293fd2e193ba5cee709b6eba"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Sep 01 12:42:04 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:51 2011 -0700"
      },
      "message": "posix-cpu-timers: Cure SMP wobbles\n\ncommit d670ec13178d0fd8680e6742a2bc6e04f28f87d8 upstream.\n\nDavid reported:\n\n  Attached below is a watered-down version of rt/tst-cpuclock2.c from\n  GLIBC.  Just build it with \"gcc -o test test.c -lpthread -lrt\" or\n  similar.\n\n  Run it several times, and you will see cases where the main thread\n  will measure a process clock difference before and after the nanosleep\n  which is smaller than the cpu-burner thread\u0027s individual thread clock\n  difference.  This doesn\u0027t make any sense since the cpu-burner thread\n  is part of the top-level process\u0027s thread group.\n\n  I\u0027ve reproduced this on both x86-64 and sparc64 (using both 32-bit and\n  64-bit binaries).\n\n  For example:\n\n  [davem@boricha build-x86_64-linux]$ ./test\n  process: before(0.001221967) after(0.498624371) diff(497402404)\n  thread:  before(0.000081692) after(0.498316431) diff(498234739)\n  self:    before(0.001223521) after(0.001240219) diff(16698)\n  [davem@boricha build-x86_64-linux]$\n\n  The diff of \u0027process\u0027 should always be \u003e\u003d the diff of \u0027thread\u0027.\n\n  I make sure to wrap the \u0027thread\u0027 clock measurements the most tightly\n  around the nanosleep() call, and that the \u0027process\u0027 clock measurements\n  are the outer-most ones.\n\n  ---\n  #include \u003cunistd.h\u003e\n  #include \u003cstdio.h\u003e\n  #include \u003cstdlib.h\u003e\n  #include \u003ctime.h\u003e\n  #include \u003cfcntl.h\u003e\n  #include \u003cstring.h\u003e\n  #include \u003cerrno.h\u003e\n  #include \u003cpthread.h\u003e\n\n  static pthread_barrier_t barrier;\n\n  static void *chew_cpu(void *arg)\n  {\n\t  pthread_barrier_wait(\u0026barrier);\n\t  while (1)\n\t\t  __asm__ __volatile__(\"\" : : : \"memory\");\n\t  return NULL;\n  }\n\n  int main(void)\n  {\n\t  clockid_t process_clock, my_thread_clock, th_clock;\n\t  struct timespec process_before, process_after;\n\t  struct timespec me_before, me_after;\n\t  struct timespec th_before, th_after;\n\t  struct timespec sleeptime;\n\t  unsigned long diff;\n\t  pthread_t th;\n\t  int err;\n\n\t  err \u003d clock_getcpuclockid(0, \u0026process_clock);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d pthread_getcpuclockid(pthread_self(), \u0026my_thread_clock);\n\t  if (err)\n\t\t  return 1;\n\n\t  pthread_barrier_init(\u0026barrier, NULL, 2);\n\t  err \u003d pthread_create(\u0026th, NULL, chew_cpu, NULL);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d pthread_getcpuclockid(th, \u0026th_clock);\n\t  if (err)\n\t\t  return 1;\n\n\t  pthread_barrier_wait(\u0026barrier);\n\n\t  err \u003d clock_gettime(process_clock, \u0026process_before);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(my_thread_clock, \u0026me_before);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(th_clock, \u0026th_before);\n\t  if (err)\n\t\t  return 1;\n\n\t  sleeptime.tv_sec \u003d 0;\n\t  sleeptime.tv_nsec \u003d 500000000;\n\t  nanosleep(\u0026sleeptime, NULL);\n\n\t  err \u003d clock_gettime(th_clock, \u0026th_after);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(my_thread_clock, \u0026me_after);\n\t  if (err)\n\t\t  return 1;\n\n\t  err \u003d clock_gettime(process_clock, \u0026process_after);\n\t  if (err)\n\t\t  return 1;\n\n\t  diff \u003d process_after.tv_nsec - process_before.tv_nsec;\n\t  printf(\"process: before(%lu.%.9lu) after(%lu.%.9lu) diff(%lu)\\n\",\n\t\t process_before.tv_sec, process_before.tv_nsec,\n\t\t process_after.tv_sec, process_after.tv_nsec, diff);\n\t  diff \u003d th_after.tv_nsec - th_before.tv_nsec;\n\t  printf(\"thread:  before(%lu.%.9lu) after(%lu.%.9lu) diff(%lu)\\n\",\n\t\t th_before.tv_sec, th_before.tv_nsec,\n\t\t th_after.tv_sec, th_after.tv_nsec, diff);\n\t  diff \u003d me_after.tv_nsec - me_before.tv_nsec;\n\t  printf(\"self:    before(%lu.%.9lu) after(%lu.%.9lu) diff(%lu)\\n\",\n\t\t me_before.tv_sec, me_before.tv_nsec,\n\t\t me_after.tv_sec, me_after.tv_nsec, diff);\n\n\t  return 0;\n  }\n\nThis is due to us using p-\u003ese.sum_exec_runtime in\nthread_group_cputime() where we iterate the thread group and sum all\ndata. This does not take time since the last schedule operation (tick\nor otherwise) into account. We can cure this by using\ntask_sched_runtime() at the cost of having to take locks.\n\nThis also means we can (and must) do away with\nthread_group_sched_runtime() since the modified thread_group_cputime()\nis now more accurate and would deadlock when called from\nthread_group_sched_runtime().\n\nAside of that it makes the function safe on 32 bit systems. The old\ncode added t-\u003ese.sum_exec_runtime unprotected. sum_exec_runtime is a\n64bit value and could be changed on another cpu at the same time.\n\nReported-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1314874459.7945.22.camel@twins\nTested-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4e41ce698822a9a2cfd324a11ea44f60fc95c871",
      "tree": "d2a7be264f9b5d631dcc7f26091d1f46e40ef565",
      "parents": [
        "113f8b8f997cd3a70e6e4c95ced9232d50b7a308"
      ],
      "author": {
        "name": "Simon Kirby",
        "email": "sim@hostway.ca",
        "time": "Thu Sep 22 17:03:46 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:51 2011 -0700"
      },
      "message": "sched: Fix up wchan borkage\n\ncommit 6ebbe7a07b3bc40b168d2afc569a6543c020d2e3 upstream.\n\nCommit c259e01a1ec (\"sched: Separate the scheduler entry for\npreemption\") contained a boo-boo wrecking wchan output. It forgot to\nput the new schedule() function in the __sched section and thereby\ndoesn\u0027t get properly ignored for things like wchan.\n\nTested-by: Simon Kirby \u003csim@hostway.ca\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20110923000346.GA25425@hostway.ca\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "113f8b8f997cd3a70e6e4c95ced9232d50b7a308",
      "tree": "b538a6784088c3a84cef45aec6952f392d83c2b3",
      "parents": [
        "ca64baea4dd045516046a84a8860c3f9809b8984"
      ],
      "author": {
        "name": "Shawn Bohrer",
        "email": "sbohrer@rgmadvisors.com",
        "time": "Mon Sep 12 09:28:04 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Oct 16 14:14:51 2011 -0700"
      },
      "message": "sched/rt: Migrate equal priority tasks to available CPUs\n\ncommit 3be209a8e22cedafc1b6945608b7bb8d9887ab61 upstream.\n\nCommit 43fa5460fe60dea5c610490a1d263415419c60f6 (\"sched: Try not to\nmigrate higher priority RT tasks\") also introduced a change in behavior\nwhich keeps RT tasks on the same CPU if there is an equal priority RT\ntask currently running even if there are empty CPUs available.\n\nThis can cause unnecessary wakeup latencies, and can prevent the\nscheduler from balancing all RT tasks across available CPUs.\n\nThis change causes an RT task to search for a new CPU if an equal\npriority RT task is already running on wakeup.  Lower priority tasks\nwill still have to wait on higher priority tasks, but the system should\nstill balance out because there is always the possibility that if there\nare both a high and low priority RT tasks on a given CPU that the high\npriority task could wakeup while the low priority task is running and\nforce it to search for a better runqueue.\n\nSigned-off-by: Shawn Bohrer \u003csbohrer@rgmadvisors.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nTested-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1315837684-18733-1-git-send-email-sbohrer@rgmadvisors.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c37683a29929d312686347687906f92b3f94cb23",
      "tree": "afa6d327a4824275acc4571f2eb73657e5e47716",
      "parents": [
        "3672c4fcfdbed08e67568447d618530a169d6e1c",
        "7ef4dbaa2adcadb39b5b60051d637e0203c7b6ba"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Fri Oct 14 14:39:38 2011 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Fri Oct 14 14:39:38 2011 -0700"
      },
      "message": "Merge \"power: wakelock: don\u0027t set check_done flag if aborting\" into msm-3.0"
    },
    {
      "commit": "7ef4dbaa2adcadb39b5b60051d637e0203c7b6ba",
      "tree": "41d1b4c6b6f40c448fe4f97878e2cf9ed11ed7ba",
      "parents": [
        "e60096da0f2e37010af610472b9df688a08f9c55"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Thu Oct 06 14:22:20 2011 -0700"
      },
      "committer": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Fri Oct 14 09:22:49 2011 -0700"
      },
      "message": "power: wakelock: don\u0027t set check_done flag if aborting\n\nIf there is a wakelock held the wakelock driver rejects the suspend\nby returning EAGAIN(-11). In this case since the suspend is rejected\nin suspend_noirq callback, the resume_noirq callback is not called on\nthe wakelock driver, leading to the check_done flag not being cleared\nand causing a BUG for the next wakelock request.\n\nDon\u0027t set the check_done flag if suspend_noirq aborts suspend.\n\nChange-Id: Iddd12cefd9a30020784416b4e5bec7fe3f7fc0e6\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n"
    },
    {
      "commit": "17e081ddcdf897295e60b00b9938bfcb4a00183b",
      "tree": "9febff446aa15cfea7d0d4aebd98134692b85f68",
      "parents": [
        "f4422a069aff841807b86809d538242800b07d26",
        "9049d3635fe2a7511c07a9bfde4287603bd569b6"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Thu Oct 13 05:28:39 2011 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Thu Oct 13 05:28:40 2011 -0700"
      },
      "message": "Merge \"Revert \"ARM: Make low-level printk work\"\" into msm-3.0"
    },
    {
      "commit": "9049d3635fe2a7511c07a9bfde4287603bd569b6",
      "tree": "c5c14e92e019f48304a4d1c09604b872ec691b07",
      "parents": [
        "5ec7cbebdddfffc7972ba3e1aa41e3855f826018"
      ],
      "author": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Mon May 23 16:05:46 2011 -0700"
      },
      "committer": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Tue Oct 11 13:25:03 2011 -0700"
      },
      "message": "Revert \"ARM: Make low-level printk work\"\n\nThis reverts commit ffdcd796e23c86d2cfeb25cb2d140f11d5fd6411.\nThis feature is replaced by passing \u0027earlyprintk\u0027 on the\nkernel command line.\n\nChange-Id: I2d4f2812e39b1c7afc061f106863b63710762fa7\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    },
    {
      "commit": "25bcca80f97e627116243ac97ed64c0f23117c65",
      "tree": "c6b317deae5b3bc340c744f1d0efc1c92c547db3",
      "parents": [
        "dcc6aac30bcaadbbb5a5197fd38838cd0f660bc8"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Wed Aug 24 01:09:32 2011 -0700"
      },
      "committer": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Tue Oct 11 09:59:29 2011 -0700"
      },
      "message": "genirq: fix handle_nested_irq for lazy disable\n\nWhen lazy disabling is implemented and an interrupt is disabled the\ngenirq code ends up marking it as IRQ_DISABLED in the descriptor.\nThe interrupt stays enabled in the controller.  If the interrupt\nfires after disabling, the flow handlers namely handle_level_irq and\nhandle_edge_irq mask the interrupt in the controller.\n\nThis is not the case with handle_nested_irq. The interrupt stays enabled in\nthe controller and if it were a level interrupt it keeps firing only to be\nignored by handle_nested_irq.\n\nUpdate handle_nested_irq to mask such an interrupt.\n\nCRs-Fixed: 300931\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n\nConflicts:\n\n\tkernel/irq/chip.c\n"
    },
    {
      "commit": "32a41b2cd1e28ee8689dc02e2d29e27ed4d4bd19",
      "tree": "30301026e0bf8e009f0e6571f84538111bf6b4db",
      "parents": [
        "98f5fd413f051db8407a53f583a46a1c3fb99657"
      ],
      "author": {
        "name": "Peter Foley",
        "email": "pefoley2@verizon.net",
        "time": "Tue Jul 05 19:42:18 2011 -0400"
      },
      "committer": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Fri Oct 07 10:46:08 2011 -0700"
      },
      "message": "kernel: prevent unnecessary rebuilding due to config_data.gz\n\nWhen IKCONFIG is built-in make oldconfig will cause the kernel to be\nrelinked even if .config didn\u0027t change. This happens because of a\nconfig_data.gz dependency on .config. This patch changes the if_changed\nto a filechk so that config_data.h is only rebuilt when the contents\nhave actually changed.\n\nChange-Id: I0c907b5312e1059352a0afff688d8e015dec6bed\nSigned-off-by: Peter Foley \u003cpefoley2@verizon.net\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    },
    {
      "commit": "2aba4e8b5e3aaac879ab2f0f88ee6396cdab30a7",
      "tree": "511c137881c1210ccae42569b381ef2754e0a034",
      "parents": [
        "cc969450f3754936608ba82b74af7f1f2828abc1"
      ],
      "author": {
        "name": "Maya Spivak",
        "email": "mspivak@codeaurora.org",
        "time": "Fri Jul 08 11:42:28 2011 -0700"
      },
      "committer": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Wed Oct 05 10:28:09 2011 -0700"
      },
      "message": "printk: Don\u0027t allow cpu to get console lock during hotplugging\n\nThe flush of the console takes unnecessary time during the cpu\nhotplug up operation.  It can delay the rcu synchronize_sched\noperation, which in turn delays the hotplug operation. The flush\ndelays rcu synchronize_sched during scheduling domain creation\nby up to 100 ms by interrupting the move to a quiescent state.\nThis change delays the flush of the console to later in the\nnotification chain of cpu_online. At the point in the cpu_up\noperation where the flush now occurs, other tasks can already\nbe scheduled on the cpu that just came up.\n\nSigned-off-by: Maya Spivak \u003cmspivak@codeaurora.org\u003e\n"
    },
    {
      "commit": "57b34bbdca587ed67ed3d6fc9a83cf3564ac770d",
      "tree": "99e71a3eb67d616be9d51b588cf3d077f17744a1",
      "parents": [
        "fdd3892444be6412bbeead90c13b5099a417e6bb"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Mon Sep 26 17:10:02 2011 -0700"
      },
      "committer": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Tue Oct 04 17:14:23 2011 -0700"
      },
      "message": "power: wakelock: BUG if wakelock is taken very late\n\nThere has been handful of corner cases where a driver would call\nwake_lock very late in the suspend sequence but the suspend proceeds\nanyways and causes issues.\n\nAdd code to BUG if a driver grabs a wakelock after suspend_noirq callbacks\nare called, this will aid in correct wakelock usage for new drivers and\ngive us callstacks for misbehaving drivers.\n\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n"
    },
    {
      "commit": "ef2293e7340a45c7d7f412c694b87dd0f19b267d",
      "tree": "2cec0f24232f78558e268fd4d405080ec92fe97f",
      "parents": [
        "c42862ab0b4149d6264b39d849aaf70b3de7a1fe"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Fri Sep 09 14:11:00 2011 -0700"
      },
      "committer": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Mon Oct 03 16:19:25 2011 -0700"
      },
      "message": "genirq: explicitly mask a freed irq\n\nWhen an interrupt is freed, the shutdown or the disable callback\nis called for that interrupt. These calls might not be implemented\nor even if they were, might not mask the interrupt.\n\nExplicitly mask the interrupt when it is freed. If not masked, the\ninterrupt could trigger, set the pending bit in the irq controller\nand cause unnecessary wakeup or exits from idle power collapse.\n\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n\nConflicts:\n\n\tkernel/irq/manage.c\n"
    },
    {
      "commit": "e0473b4aafe9013a27749518afd449594f158b04",
      "tree": "a1ce51e4e0fe7e4a615d09bdde13930d934bb615",
      "parents": [
        "38c0739f978cabe79afb6c75599ba8be347e8714"
      ],
      "author": {
        "name": "Maya Spivak",
        "email": "mspivak@codeaurora.org",
        "time": "Fri Jul 08 16:44:34 2011 -0700"
      },
      "committer": {
        "name": "Bryan Huntsman",
        "email": "bryanh@codeaurora.org",
        "time": "Mon Oct 03 16:18:46 2011 -0700"
      },
      "message": "partition_sched_domains: Do not destroy old sched domain on cpu_up\n\nThis is safe on a cpu_up only. Although a reader may still have\naccess to the old scheduling domain data, the data indicates that\nthe new CPU is not up, and therefore the only limitation is the\nnew CPU will not be schedulable by that reader until that reader\nreceives the new data.\n\nSigned-off-by: Maya Spivak \u003cmspivak@codeaurora.org\u003e\n"
    }
  ],
  "next": "3d321a35703d041a11f25f7abc27cc6c1ef8cd13"
}
