)]}'
{
  "log": [
    {
      "commit": "9f4646d28362bc424b8a4c7d09ea1c2f1759371a",
      "tree": "0ff9dc36f1ef598736725f3eb30e164128d39774",
      "parents": [
        "86c8ead593305915729a7b67f738832764fb4ba7",
        "84e345e4e209cbe796c88fa2ad1732d7121ec100"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 14 19:46:10 2013 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 14 19:46:10 2013 +0100"
      },
      "message": "Merge branch \u0027fortglx/3.9/time\u0027 of git://git.linaro.org/people/jstultz/linux into timers/core\n"
    },
    {
      "commit": "86c8ead593305915729a7b67f738832764fb4ba7",
      "tree": "eb33b75076c2b50dc8ae8ec0e240de876d31cd45",
      "parents": [
        "b22affe0aef429d657bc6505aacb1c569340ddd2",
        "5d1d9a29bc0772abee765f09513779a2ef0ebbfd"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 12 20:22:56 2013 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 12 20:22:56 2013 +0100"
      },
      "message": "Merge branch \u0027timers/for-arm\u0027 into timers/core\n"
    },
    {
      "commit": "5d1d9a29bc0772abee765f09513779a2ef0ebbfd",
      "tree": "7905268873812518cf4f6196f2100e5224733f22",
      "parents": [
        "12ad10004645d38356b14d1fbba379c523a61916"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Fri Feb 08 15:24:07 2013 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 12 20:22:28 2013 +0100"
      },
      "message": "clockevents: Fix generic broadcast for FEAT_C3STOP\n\nCommit 12ad100046: \"clockevents: Add generic timer broadcast function\"\nmade tick_device_uses_broadcast set up the generic broadcast function\nfor dummy devices (where !tick_device_is_functional(dev)), but neglected\nto set up the broadcast function for devices that stop in low power\nstates (with the CLOCK_EVT_FEAT_C3STOP flag).\n\nWhen these devices enter low power states they will not have the generic\nbroadcast function assigned, and will bring down the system when an\nattempt is made to broadcast to them.\n\nThis patch ensures that the broadcast function is also assigned for\ndevices which require broadcast in low power states.\n\nReported-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\nTested-by: Stephen Warren \u003cswarren@nvidia.com\u003e\nCc: linux-arm-kernel@lists.infradead.org\nCc: nico@linaro.org\nCc: Marc.Zyngier@arm.com\nCc: Will.Deacon@arm.com\nCc: santosh.shilimkar@ti.com\nCc: john.stultz@linaro.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "84e345e4e209cbe796c88fa2ad1732d7121ec100",
      "tree": "f73f35d0e72a6c6f3e4b3ef430608aca3a5e8d54",
      "parents": [
        "6f16eebe1ff82176339a0439c98ebec9768b0ee2"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Fri Feb 08 17:59:53 2013 -0500"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Feb 08 15:07:05 2013 -0800"
      },
      "message": "time, Fix setting of hardware clock in NTP code\n\nAt init time, if the system time is \"warped\" forward in warp_clock()\nit will differ from the hardware clock by sys_tz.tz_minuteswest.  This time\ndifference is not taken into account when ntp updates the hardware clock,\nand this causes the system time to jump forward by this offset every reboot.\n\nThe kernel must take this offset into account when writing the system time\nto the hardware clock in the ntp code.  This patch adds\npersistent_clock_is_local which indicates that an offset has been applied\nin warp_clock() and accounts for the \"warp\" before writing the hardware\nclock.\n\nx86 does not have this problem as rtc writes are software limited to a\n+/-15 minute window relative to the current rtc time.  Other arches, such\nas powerpc, however do a full synchronization of the system time to the\nrtc and will see this problem.\n\n[v2]: generated against tip/timers/core\n\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "b22affe0aef429d657bc6505aacb1c569340ddd2",
      "tree": "6cdb5271ab0f4d02ccca8130fb0c0de8f61fe37a",
      "parents": [
        "90889a635a9b5488624bccce3ff6b2eec68c007b"
      ],
      "author": {
        "name": "Leonid Shatz",
        "email": "leonid.shatz@ravellosystems.com",
        "time": "Mon Feb 04 14:33:37 2013 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 05 11:52:41 2013 +0100"
      },
      "message": "hrtimer: Prevent hrtimer_enqueue_reprogram race\n\nhrtimer_enqueue_reprogram contains a race which could result in\ntimer.base switch during unlock/lock sequence.\n\nhrtimer_enqueue_reprogram is releasing the lock protecting the timer\nbase for calling raise_softirq_irqsoff() due to a lock ordering issue\nversus rq-\u003elock.\n\nIf during that time another CPU calls __hrtimer_start_range_ns() on\nthe same hrtimer, the timer base might switch, before the current CPU\ncan lock base-\u003elock again and therefor the unlock_timer_base() call\nwill unlock the wrong lock.\n\n[ tglx: Added comment and massaged changelog ]\n\nSigned-off-by: Leonid Shatz \u003cleonid.shatz@ravellosystems.com\u003e\nSigned-off-by: Izik Eidus \u003cizik.eidus@ravellosystems.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/1359981217-389-1-git-send-email-izik.eidus@ravellosystems.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "90889a635a9b5488624bccce3ff6b2eec68c007b",
      "tree": "8ddde1e04060bd65ca2aafb09b38066cb7d69b4d",
      "parents": [
        "a9037430c6c784165a940a90bcd29f886834c8e7",
        "6f16eebe1ff82176339a0439c98ebec9768b0ee2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 04 11:03:03 2013 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 04 11:03:03 2013 +0100"
      },
      "message": "Merge branch \u0027fortglx/3.9/time\u0027 of git://git.linaro.org/people/jstultz/linux into timers/core\n\nTrivial conflict in arch/x86/Kconfig\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "12ad10004645d38356b14d1fbba379c523a61916",
      "tree": "fe8b798176191c681c6b2fa1c81aa55dc98568dc",
      "parents": [
        "12572dbb53638c6e454ef831c8fee7de3df24389"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Jan 14 17:05:22 2013 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 31 22:15:36 2013 +0100"
      },
      "message": "clockevents: Add generic timer broadcast function\n\nCurrently, the timer broadcast mechanism is defined by a function\npointer on struct clock_event_device. As the fundamental mechanism for\nbroadcast is architecture-specific, this means that clock_event_device\ndrivers cannot be shared across multiple architectures.\n\nThis patch adds an (optional) architecture-specific function for timer\ntick broadcast, allowing drivers which may require broadcast\nfunctionality to be shared across multiple architectures.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\nReviewed-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nCc: linux-arm-kernel@lists.infradead.org\nCc: nico@linaro.org\nCc: Will.Deacon@arm.com\nCc: Marc.Zyngier@arm.com\nCc: john.stultz@linaro.org\nLink: http://lkml.kernel.org/r/1358183124-28461-3-git-send-email-mark.rutland@arm.com\nTested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nReviewed-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "12572dbb53638c6e454ef831c8fee7de3df24389",
      "tree": "dac15b3d75adb3a33f3868b70a6dcf0b63c55b91",
      "parents": [
        "04c2eee5b9dfcb13f3cd07a5537fb8c785f2751a"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Jan 14 17:05:21 2013 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 31 22:15:35 2013 +0100"
      },
      "message": "clockevents: Add generic timer broadcast receiver\n\nCurrently the broadcast mechanism used for timers is abstracted by a\nfunction pointer on struct clock_event_device. As the fundamental\nmechanism for broadcast is architecture-specific, this ties each\nclock_event_device driver to a single architecture, even where the\ndriver is otherwise generic.\n\nThis patch adds a standard path for the receipt of timer broadcasts, so\ndrivers and/or architecture backends need not manage redundant lists of\ntimers for the purpose of routing broadcast timer ticks.\n\n[tglx: Made the implementation depend on the config switch as well ]\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\nReviewed-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nCc: linux-arm-kernel@lists.infradead.org\nCc: nico@linaro.org\nCc: Will.Deacon@arm.com\nCc: Marc.Zyngier@arm.com\nCc: john.stultz@linaro.org\nLink: http://lkml.kernel.org/r/1358183124-28461-2-git-send-email-mark.rutland@arm.com\nTested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nReviewed-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bdb0ae6a767ef2622eb282e06fc225e855341653",
      "tree": "34441e77a137fa349c48472bce2e12efceb18b21",
      "parents": [
        "0fe94b9e56da7ebffad4422415bdc2854934a389",
        "e0094244e41c4d0c7ad69920681972fc45d8ce34"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 31 17:08:43 2013 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 31 17:08:43 2013 +1100"
      },
      "message": "Merge branch \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 fixes from Peter Anvin:\n \"This is a collection of miscellaneous fixes, the most important one is\n  the fix for the Samsung laptop bricking issue (auto-blacklisting the\n  samsung-laptop driver); the efi_enabled() changes you see below are\n  prerequisites for that fix.\n\n  The other issues fixed are booting on OLPC XO-1.5, an UV fix, NMI\n  debugging, and requiring CAP_SYS_RAWIO for MSR references, just as\n  with I/O port references.\"\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  samsung-laptop: Disable on EFI hardware\n  efi: Make \u0027efi_enabled\u0027 a function to query EFI facilities\n  smp: Fix SMP function call empty cpu mask race\n  x86/msr: Add capabilities check\n  x86/dma-debug: Bump PREALLOC_DMA_DEBUG_ENTRIES\n  x86/olpc: Fix olpc-xo1-sci.c build errors\n  arch/x86/platform/uv: Fix incorrect tlb flush all issue\n  x86-64: Fix unwind annotations in recent NMI changes\n  x86-32: Start out cr0 clean, disable paging before modifying cr3/4\n"
    },
    {
      "commit": "ff0d05bf73620eb7dc8aee7423e992ef87870bdf",
      "tree": "c2a874bdaf2dc6487dae7be17790745ce29a8b9b",
      "parents": [
        "2e51b231a8d716ea5aacde0bd95ac789cea195b0"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@gmail.com",
        "time": "Thu Jan 31 14:27:03 2013 +1100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@gmail.com",
        "time": "Thu Jan 31 15:46:56 2013 +1100"
      },
      "message": "Revert \"console: implement lockdep support for console_lock\"\n\nThis reverts commit daee779718a319ff9f83e1ba3339334ac650bb22.\n\nI\u0027ll requeue this after the console locking fixes, so lockdep\nis useful again for people until fbcon is fixed.\n\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "6f16eebe1ff82176339a0439c98ebec9768b0ee2",
      "tree": "8d818d7299f205ebde374f753ac384b5d0ac1835",
      "parents": [
        "e90c83f757fffdacec8b3c5eee5617dcc038338f"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Jan 25 17:08:12 2013 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jan 29 14:40:12 2013 -0800"
      },
      "message": "timekeeping: Switch HAS_PERSISTENT_CLOCK to ALWAYS_USE_PERSISTENT_CLOCK\n\nJason pointed out the HAS_PERSISTENT_CLOCK name isn\u0027t\nquite accurate for the config, as some systems may have\nthe persistent_clock in some cases, but not always.\n\nSo change the config name to the more clear\nALWAYS_USE_PERSISTENT_CLOCK.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "f44310b98ddb7f0d06550d73ed67df5865e3eda5",
      "tree": "77696b4312a7450afcc24c478df4721eda2f777f",
      "parents": [
        "c903f0456bc69176912dee6dd25c6a66ee1aed00"
      ],
      "author": {
        "name": "Wang YanQing",
        "email": "udknight@gmail.com",
        "time": "Sat Jan 26 15:53:57 2013 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jan 28 11:21:57 2013 +0100"
      },
      "message": "smp: Fix SMP function call empty cpu mask race\n\nI get the following warning every day with v3.7, once or\ntwice a day:\n\n  [ 2235.186027] WARNING: at /mnt/sda7/kernel/linux/arch/x86/kernel/apic/ipi.c:109 default_send_IPI_mask_logical+0x2f/0xb8()\n\nAs explained by Linus as well:\n\n |\n | Once we\u0027ve done the \"list_add_rcu()\" to add it to the\n | queue, we can have (another) IPI to the target CPU that can\n | now see it and clear the mask.\n |\n | So by the time we get to actually send the IPI, the mask might\n | have been cleared by another IPI.\n |\n\nThis patch also fixes a system hang problem, if the data-\u003ecpumask\ngets cleared after passing this point:\n\n        if (WARN_ONCE(!mask, \"empty IPI mask\"))\n                return;\n\nthen the problem in commit 83d349f35e1a (\"x86: don\u0027t send an IPI to\nthe empty set of CPU\u0027s\") will happen again.\n\nSigned-off-by: Wang YanQing \u003cudknight@gmail.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nAcked-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: peterz@infradead.org\nCc: mina86@mina86.org\nCc: srivatsa.bhat@linux.vnet.ibm.com\nCc: \u003cstable@kernel.org\u003e\nLink: http://lkml.kernel.org/r/20130126075357.GA3205@udknight\n[ Tidied up the changelog and the comment in the code. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f56c3196f251012de9b3ebaff55732a9074fdaae",
      "tree": "65ce7316a1262f402a14c4299d881907e7d03b05",
      "parents": [
        "ed06ef318a7ddde3823966f808f39b515eae1862"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 22 16:15:15 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 22 16:21:24 2013 -0800"
      },
      "message": "async: fix __lowest_in_progress()\n\nCommit 083b804c4d3e (\"async: use workqueue for worker pool\") made it\npossible that async jobs are moved from pending to running out-of-order.\nWhile pending async jobs will be queued and dispatched for execution in\nthe same order, nothing guarantees they\u0027ll enter \"1) move self to the\nrunning queue\" of async_run_entry_fn() in the same order.\n\nBefore the conversion, async implemented its own worker pool.  An async\nworker, upon being woken up, fetches the first item from the pending\nlist, which kept the executing lists sorted.  The conversion to\nworkqueue was done by adding work_struct to each async_entry and async\njust schedules the work item.  The queueing and dispatching of such work\nitems are still in order but now each worker thread is associated with a\nspecific async_entry and moves that specific async_entry to the\nexecuting list.  So, depending on which worker reaches that point\nearlier, which is non-deterministic, we may end up moving an async_entry\nwith larger cookie before one with smaller one.\n\nThis broke __lowest_in_progress().  running-\u003edomain may not be properly\nsorted and is not guaranteed to contain lower cookies than pending list\nwhen not empty.  Fix it by ensuring sort-inserting to the running list\nand always looking at both pending and running when trying to determine\nthe lowest cookie.\n\nOver time, the async synchronization implementation became quite messy.\nWe better restructure it such that each async_entry is linked to two\nlists - one global and one per domain - and not move it when execution\nstarts.  There\u0027s no reason to distinguish pending and running.  They\nbehave the same for synchronization purposes.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d26d45253b78ec0a67003eea25bd08fceaa5b78c",
      "tree": "ed79c581aca93bec4122943111d411ce316f5596",
      "parents": [
        "0944c0a03465718909ba8e800a5230528aeabafb",
        "c1bf08ac26e92122faab9f6c32ea8aba94612dae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 22 10:30:49 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 22 10:30:49 2013 -0800"
      },
      "message": "Merge tag \u0027trace-3.8-rc4-fix\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace\n\nPull ftrace fix from Steven Rostedt:\n \"Kprobes now uses the function tracer if it can.  That is, if a probe\n  is placed on a function mcount/nop location, and the arch supports it,\n  instead of adding a breakpoint, kprobes will register a function\n  callback as that is much more efficient.\n\n  The function tracer requires to update modules before they run, and\n  uses the module notifier to do so.  But if something else in the\n  module notifiers registers a kprobe at one of these locations, before\n  ftrace can get to it, then the system could fail.\n\n  The function tracer must be initialized early, otherwise module\n  notifiers that probe will only work by chance.\"\n\n* tag \u0027trace-3.8-rc4-fix\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:\n  ftrace: Be first to run code modification on modules\n"
    },
    {
      "commit": "9067ac85d533651b98c2ff903182a20cbb361fcb",
      "tree": "30e741b4f1fa71b155c216d7e7212e3befa3cde3",
      "parents": [
        "9899d11f654474d2d54ea52ceaa2a1f4db3abd68"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Jan 21 20:48:17 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 22 10:08:17 2013 -0800"
      },
      "message": "wake_up_process() should be never used to wakeup a TASK_STOPPED/TRACED task\n\nwake_up_process() should never wakeup a TASK_STOPPED/TRACED task.\nChange it to use TASK_NORMAL and add the WARN_ON().\n\nTASK_ALL has no other users, probably can be killed.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9899d11f654474d2d54ea52ceaa2a1f4db3abd68",
      "tree": "4ac2411ec2d79335128afd0142a91c8cbaac251f",
      "parents": [
        "910ffdb18a6408e14febbb6e4b6840fd2c928c82"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Jan 21 20:48:00 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 22 10:08:00 2013 -0800"
      },
      "message": "ptrace: ensure arch_ptrace/ptrace_request can never race with SIGKILL\n\nputreg() assumes that the tracee is not running and pt_regs_access() can\nsafely play with its stack.  However a killed tracee can return from\nptrace_stop() to the low-level asm code and do RESTORE_REST, this means\nthat debugger can actually read/modify the kernel stack until the tracee\ndoes SAVE_REST again.\n\nset_task_blockstep() can race with SIGKILL too and in some sense this\nrace is even worse, the very fact the tracee can be woken up breaks the\nlogic.\n\nAs Linus suggested we can clear TASK_WAKEKILL around the arch_ptrace()\ncall, this ensures that nobody can ever wakeup the tracee while the\ndebugger looks at it.  Not only this fixes the mentioned problems, we\ncan do some cleanups/simplifications in arch_ptrace() paths.\n\nProbably ptrace_unfreeze_traced() needs more callers, for example it\nmakes sense to make the tracee killable for oom-killer before\naccess_process_vm().\n\nWhile at it, add the comment into may_ptrace_stop() to explain why\nptrace_stop() still can\u0027t rely on SIGKILL and signal_pending_state().\n\nReported-by: Salman Qazi \u003csqazi@google.com\u003e\nReported-by: Suleiman Souhlal \u003csuleiman@google.com\u003e\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "910ffdb18a6408e14febbb6e4b6840fd2c928c82",
      "tree": "258a215685f2ca2bb11dcd92582e0adafbd83f7b",
      "parents": [
        "9a9284153d965a57edc7162a8e57c14c97f3a935"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Jan 21 20:47:41 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 22 08:50:08 2013 -0800"
      },
      "message": "ptrace: introduce signal_wake_up_state() and ptrace_signal_wake_up()\n\nCleanup and preparation for the next change.\n\nsignal_wake_up(resume \u003d\u003e true) is overused. None of ptrace/jctl callers\nactually want to wakeup a TASK_WAKEKILL task, but they can\u0027t specify the\nnecessary mask.\n\nTurn signal_wake_up() into signal_wake_up_state(state), reintroduce\nsignal_wake_up() as a trivial helper, and add ptrace_signal_wake_up()\nwhich adds __TASK_TRACED.\n\nThis way ptrace_signal_wake_up() can work \"inside\" ptrace_request()\neven if the tracee doesn\u0027t have the TASK_WAKEKILL bit set.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1bf08ac26e92122faab9f6c32ea8aba94612dae",
      "tree": "3d950c0592ad2394d8e1230d463024cf2d18bebc",
      "parents": [
        "7d1f9aeff1ee4a20b1aeb377dd0f579fe9647619"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Dec 14 09:48:15 2012 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jan 21 13:21:50 2013 -0500"
      },
      "message": "ftrace: Be first to run code modification on modules\n\nIf some other kernel subsystem has a module notifier, and adds a kprobe\nto a ftrace mcount point (now that kprobes work on ftrace points),\nwhen the ftrace notifier runs it will fail and disable ftrace, as well\nas kprobes that are attached to ftrace points.\n\nHere\u0027s the error:\n\n WARNING: at kernel/trace/ftrace.c:1618 ftrace_bug+0x239/0x280()\n Hardware name: Bochs\n Modules linked in: fat(+) stap_56d28a51b3fe546293ca0700b10bcb29__8059(F) nfsv4 auth_rpcgss nfs dns_resolver fscache xt_nat iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack lockd sunrpc ppdev parport_pc parport microcode virtio_net i2c_piix4 drm_kms_helper ttm drm i2c_core [last unloaded: bid_shared]\n Pid: 8068, comm: modprobe Tainted: GF            3.7.0-0.rc8.git0.1.fc19.x86_64 #1\n Call Trace:\n  [\u003cffffffff8105e70f\u003e] warn_slowpath_common+0x7f/0xc0\n  [\u003cffffffff81134106\u003e] ? __probe_kernel_read+0x46/0x70\n  [\u003cffffffffa0180000\u003e] ? 0xffffffffa017ffff\n  [\u003cffffffffa0180000\u003e] ? 0xffffffffa017ffff\n  [\u003cffffffff8105e76a\u003e] warn_slowpath_null+0x1a/0x20\n  [\u003cffffffff810fd189\u003e] ftrace_bug+0x239/0x280\n  [\u003cffffffff810fd626\u003e] ftrace_process_locs+0x376/0x520\n  [\u003cffffffff810fefb7\u003e] ftrace_module_notify+0x47/0x50\n  [\u003cffffffff8163912d\u003e] notifier_call_chain+0x4d/0x70\n  [\u003cffffffff810882f8\u003e] __blocking_notifier_call_chain+0x58/0x80\n  [\u003cffffffff81088336\u003e] blocking_notifier_call_chain+0x16/0x20\n  [\u003cffffffff810c2a23\u003e] sys_init_module+0x73/0x220\n  [\u003cffffffff8163d719\u003e] system_call_fastpath+0x16/0x1b\n ---[ end trace 9ef46351e53bbf80 ]---\n ftrace failed to modify [\u003cffffffffa0180000\u003e] init_once+0x0/0x20 [fat]\n  actual: cc:bb:d2:4b:e1\n\nA kprobe was added to the init_once() function in the fat module on load.\nBut this happened before ftrace could have touched the code. As ftrace\ndidn\u0027t run yet, the kprobe system had no idea it was a ftrace point and\nsimply added a breakpoint to the code (0xcc in the cc:bb:d2:4b:e1).\n\nThen when ftrace went to modify the location from a call to mcount/fentry\ninto a nop, it didn\u0027t see a call op, but instead it saw the breakpoint op\nand not knowing what to do with it, ftrace shut itself down.\n\nThe solution is to simply give the ftrace module notifier the max priority.\nThis should have been done regardless, as the core code ftrace modification\nalso happens very early on in boot up. This makes the module modification\ncloser to core modification.\n\nLink: http://lkml.kernel.org/r/20130107140333.593683061@goodmis.org\n\nCc: stable@vger.kernel.org\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nReported-by: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ee61abb3223e28a1a14a8429c0319755d20d3e40",
      "tree": "4054f8726988c6a16264b34d6b630c6597077cda",
      "parents": [
        "226364766f936d249e408de03821468c1bf11dda"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 20:22:58 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 20:22:58 2013 -0800"
      },
      "message": "module: fix missing module_mutex unlock\n\nCommit 1fb9341ac348 (\"module: put modules in list much earlier\") moved\nsome of the module initialization code around, and in the process\nchanged the exit paths too.  But for the duplicate export symbol error\ncase the change made the ddebug_cleanup path jump to after the module\nmutex unlock, even though it happens with the mutex held.\n\nRusty has some patches to split this function up into some helper\nfunctions, hopefully the mess of complex goto targets will go away\neventually.\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "226364766f936d249e408de03821468c1bf11dda",
      "tree": "3b4feabb40a87f311ae92bb973c18293d05597e8",
      "parents": [
        "3a142ed962958d3063f648738a3384ab90017100",
        "1fb9341ac34825aa40354e74d9a2c69df7d2c304"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 16:44:28 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 16:44:28 2013 -0800"
      },
      "message": "Merge tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module fixes and a virtio block fix from Rusty Russell:\n \"Various minor fixes, but a slightly more complex one to fix the\n  per-cpu overload problem introduced recently by kvm id changes.\"\n\n* tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  module: put modules in list much earlier.\n  module: add new state MODULE_STATE_UNFORMED.\n  module: prevent warning when finit_module a 0 sized file\n  virtio-blk: Don\u0027t free ida when disk is in use\n"
    },
    {
      "commit": "3a142ed962958d3063f648738a3384ab90017100",
      "tree": "6e7e98108edf793ba012c4e2efa78deb8a2cc052",
      "parents": [
        "edea0d03ee5f0ae0051b6adb6681ebdf976b1ca4",
        "b1e0318b8cd4bdbb0fbc48967b0350483ad9bd69"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 13:58:48 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 13:58:48 2013 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull misc syscall fixes from Al Viro:\n\n - compat syscall fixes (discussed back in December)\n\n - a couple of \"make life easier for sigaltstack stuff by reducing\n   inter-tree dependencies\"\n\n - fix up compiler/asmlinkage calling convention disagreement of\n   sys_clone()\n\n - misc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  sys_clone() needs asmlinkage_protect\n  make sure that /linuxrc has std{in,out,err}\n  x32: fix sigtimedwait\n  x32: fix waitid()\n  switch compat_sys_wait4() and compat_sys_waitid() to COMPAT_SYSCALL_DEFINE\n  switch compat_sys_sigaltstack() to COMPAT_SYSCALL_DEFINE\n  CONFIG_GENERIC_SIGALTSTACK build breakage with asm-generic/syscalls.h\n  Ensure that kernel_init_freeable() is not inlined into non __init code\n"
    },
    {
      "commit": "edea0d03ee5f0ae0051b6adb6681ebdf976b1ca4",
      "tree": "5a2a5f44fcfc1d0246e48fd93d91c61fe157a987",
      "parents": [
        "5da1f88b8b727dc3a66c52d4513e871be6d43d19"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jan 20 20:25:47 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 12:26:05 2013 -0800"
      },
      "message": "ia64: kill thread_matches(), unexport ptrace_check_attach()\n\nThe ia64 function \"thread_matches()\" has no users since commit\ne868a55c2a8c (\"[IA64] remove find_thread_for_addr()\").  Remove it.\n\nThis allows us to make ptrace_check_attach() static to kernel/ptrace.c,\nwhich is good since we\u0027ll need to change the semantics of it and fix up\nall the callers.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b1e0318b8cd4bdbb0fbc48967b0350483ad9bd69",
      "tree": "c8c0eda42707c639c67c471abbc0bca6f64213d2",
      "parents": [
        "43b16820249396aea7eb57c747106e211e54bed5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 19 22:13:34 2013 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jan 19 22:13:34 2013 -0500"
      },
      "message": "sys_clone() needs asmlinkage_protect\n\nCc: stable@vger.kernel.org\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "774a1221e862b343388347bac9b318767336b20b",
      "tree": "ee02b2b71268d9478f709bea8636ddd5eafdc007",
      "parents": [
        "406089d01562f1e2bf9f089fd7637009ebaad589"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 15 18:52:51 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 16 09:05:33 2013 -0800"
      },
      "message": "module, async: async_synchronize_full() on module init iff async is used\n\nIf the default iosched is built as module, the kernel may deadlock\nwhile trying to load the iosched module on device probe if the probing\nwas running off async.  This is because async_synchronize_full() at\nthe end of module init ends up waiting for the async job which\ninitiated the module loading.\n\n async A\t\t\t\tmodprobe\n\n 1. finds a device\n 2. registers the block device\n 3. request_module(default iosched)\n\t\t\t\t\t4. modprobe in userland\n\t\t\t\t\t5. load and init module\n\t\t\t\t\t6. async_synchronize_full()\n\nAsync A waits for modprobe to finish in request_module() and modprobe\nwaits for async A to finish in async_synchronize_full().\n\nBecause there\u0027s no easy to track dependency once control goes out to\nuserland, implementing properly nested flushing is difficult.  For\nnow, make module init perform async_synchronize_full() iff module init\nhas queued async jobs as suggested by Linus.\n\nThis avoids the described deadlock because iosched module doesn\u0027t use\nasync and thus wouldn\u0027t invoke async_synchronize_full().  This is\nhacky and incomplete.  It will deadlock if async module loading nests;\nhowever, this works around the known problem case and seems to be the\nbest of bad options.\n\nFor more details, please refer to the following thread.\n\n  http://thread.gmane.org/gmane.linux.kernel/1420814\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Alex Riesen \u003craa.lkml@gmail.com\u003e\nTested-by: Ming Lei \u003cming.lei@canonical.com\u003e\nTested-by: Alex Riesen \u003craa.lkml@gmail.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "05ad717c77b1b8e98a1dd768c3700036d634629e",
      "tree": "c52d75ca925bcd9b4c7125aad4c1059d7d3a43ee",
      "parents": [
        "9ecf37eb7a81e3295a1b274eafb6f83d7d2cabf0"
      ],
      "author": {
        "name": "Feng Tang",
        "email": "feng.tang@intel.com",
        "time": "Wed Jan 16 00:09:49 2013 +0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jan 15 18:16:08 2013 -0800"
      },
      "message": "timekeeping: Add CONFIG_HAS_PERSISTENT_CLOCK option\n\nMake the persistent clock check a kernel config option, so that some\nplatform can explicitely select it, also make CONFIG_RTC_HCTOSYS and\nRTC_SYSTOHC depend on its non-existence, which could prevent the\npersistent clock and RTC code from doing similar thing twice during\nsystem\u0027s init/suspend/resume phases.\n\nIf the CONFIG_HAS_PERSISTENT_CLOCK\u003dn, then no change happens for kernel\nwhich still does the persistent clock check in timekeeping_init().\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSuggested-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Feng Tang \u003cfeng.tang@intel.com\u003e\n[jstultz: Added dependency for RTC_SYSTOHC as well]\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "31ade30692dc9680bfc95700d794818fa3f754ac",
      "tree": "cb436c839b890d04f589b49f75cb0df59315158e",
      "parents": [
        "f0dbe81f0e7c39783ad25d9084bbcda131508993"
      ],
      "author": {
        "name": "Feng Tang",
        "email": "feng.tang@intel.com",
        "time": "Wed Jan 16 00:09:47 2013 +0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jan 15 18:16:07 2013 -0800"
      },
      "message": "timekeeping: Add persistent_clock_exist flag\n\nIn current kernel, there are several places which need to check\nwhether there is a persistent clock for the platform. Current check\nis done by calling the read_persistent_clock() and validating its\nreturn value.\n\nSo one optimization is to do the check only once in timekeeping_init(),\nand use a flag persistent_clock_exist to record it.\n\nv2: Add a has_persistent_clock() helper function, as suggested by John.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Feng Tang \u003cfeng.tang@intel.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "f0dbe81f0e7c39783ad25d9084bbcda131508993",
      "tree": "c88ba1416dfb90fce3ed0a72c4bf5bfb42831988",
      "parents": [
        "2353b47bffe4e6ab39042f470c55d41bb3ff3846"
      ],
      "author": {
        "name": "Miroslav Lichvar",
        "email": "mlichvar@redhat.com",
        "time": "Fri Jan 11 11:58:58 2013 +0100"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jan 15 18:16:07 2013 -0800"
      },
      "message": "posix-timers: Fix clock_adjtime to always return timex data on success\n\nThe clock_adj call returns the clock state on success, which may be a\nnon-zero value (e.g. TIME_INS), but the modified timex data is copied\nback to the user only when zero value (TIME_OK) was returned. Fix the\ncondition to copy the data also with positive return values.\n\nSigned-off-by: Miroslav Lichvar \u003cmlichvar@redhat.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "023f333a99cee9b5cd3268ff87298eb01a31f78e",
      "tree": "bf1d316ac4f4ad6ccd9f98206debece6f24a7a4f",
      "parents": [
        "503637375269e33f368fd3484a199beace01f36e"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgunthorpe@obsidianresearch.com",
        "time": "Mon Dec 17 14:30:53 2012 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jan 15 18:16:06 2013 -0800"
      },
      "message": "NTP: Add a CONFIG_RTC_SYSTOHC configuration\n\nThe purpose of this option is to allow ARM/etc systems that rely on the\nclass RTC subsystem to have the same kind of automatic NTP based\nsynchronization that we have on PC platforms. Today ARM does not\nimplement update_persistent_clock and makes extensive use of the class\nRTC system.\n\nWhen enabled CONFIG_RTC_SYSTOHC will provide a generic\nrtc_update_persistent_clock that stores the current time in the RTC and\nis intended complement the existing CONFIG_RTC_HCTOSYS option that loads\nthe RTC at boot.\n\nLike with RTC_HCTOSYS the platform\u0027s update_persistent_clock is used\nfirst, if it works. Platforms with mixed class RTC and non-RTC drivers\nneed to return ENODEV when class RTC should be used. Such an update for\nPPC is included in this patch.\n\nLong term, implementations of update_persistent_clock should migrate to\nproper class RTC drivers and use CONFIG_RTC_SYSTOHC instead.\n\nTested on ARM kirkwood and PPC405\n\nSigned-off-by: Jason Gunthorpe \u003cjgunthorpe@obsidianresearch.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "1e817fb62cd185a2232ad4302579491805609489",
      "tree": "d4155fb65a9fb32cd9236405a8b7534f39c293b9",
      "parents": [
        "9c3f9e281697d02889c3b08922f3b30be75f56c2"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Nov 19 10:26:16 2012 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jan 15 18:16:02 2013 -0800"
      },
      "message": "time: create __getnstimeofday for WARNless calls\n\nThe pstore RAM backend can get called during resume, and must be defensive\nagainst a suspended time source. Expose getnstimeofday logic that returns\nan error instead of a WARN. This can be detected and the timestamp can\nbe zeroed out.\n\nReported-by: Doug Anderson \u003cdianders@chromium.org\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "406089d01562f1e2bf9f089fd7637009ebaad589",
      "tree": "1b8202a1b91354eb8abb7b35eef2cee02ef92a75",
      "parents": [
        "7dea1ff3b7b48356c02cb00d6a4e8d5aaf680830",
        "250bfd3d8e7e19cb649dd94689f0af2ce3474060"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 14 20:22:16 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 14 20:22:16 2013 -0800"
      },
      "message": "Merge tag \u0027trace-3.8-rc3-regression-fix\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace\n\nPull tracing regression fixes from Steven Rostedt:\n \"The clean up patch commit 0fb9656d957d \"tracing: Make tracing_enabled\n  be equal to tracing_on\" caused two regressions.\n\n   1) The irqs off latency tracer no longer starts if tracing_on is off\n      when the tracer is set, and then tracing_on is enabled.  The\n      tracing_on file needs the hook that tracing_enabled had to enable\n      tracers if they request it (call the tracer\u0027s start() method).\n\n   2) That commit had a separate change that really should have been a\n      separate patch, but it must have been added accidently with the -a\n      option of git commit.  But as the change is still related to the\n      commit it wasn\u0027t noticed in review.  That change, changed the way\n      blocking is done by the trace_pipe file with respect to the\n      tracing_on settings.  I\u0027ve been told that this change breaks\n      current userspace, and this specific change is being reverted.\"\n\n* tag \u0027trace-3.8-rc3-regression-fix\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:\n  tracing: Fix regression of trace_pipe\n  tracing: Fix regression with irqsoff tracer and tracing_on file\n"
    },
    {
      "commit": "250bfd3d8e7e19cb649dd94689f0af2ce3474060",
      "tree": "66d0a49e15d99b4dabcd80259cdd501952425663",
      "parents": [
        "2df8f8a6a897ebf4c5613b5be6103d33b2a21520"
      ],
      "author": {
        "name": "Liu Bo",
        "email": "bo.li.liu@oracle.com",
        "time": "Mon Jan 14 10:54:11 2013 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jan 14 13:13:32 2013 -0500"
      },
      "message": "tracing: Fix regression of trace_pipe\n\nCommit 0fb9656d \"tracing: Make tracing_enabled be equal to tracing_on\"\nchanges the behaviour of trace_pipe, ie. it makes trace_pipe return if\nwe\u0027ve read something and tracing is enabled, and this means that we have\nto \u0027cat trace_pipe\u0027 again and again while running tests.\n\nIMO the right way is if tracing is enabled, we always block and wait for\nring buffer, or we may lose what we want since ring buffer\u0027s size is limited.\n\nLink: http://lkml.kernel.org/r/1358132051-5410-1-git-send-email-bo.li.liu@oracle.com\n\nSigned-off-by: Liu Bo \u003cbo.li.liu@oracle.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1fb9341ac34825aa40354e74d9a2c69df7d2c304",
      "tree": "ebb2b836673d722845cd0a17c836799d800ae810",
      "parents": [
        "0d21b0e3477395e7ff2acc269f15df6e6a8d356d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 12 13:27:34 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 12 13:27:46 2013 +1030"
      },
      "message": "module: put modules in list much earlier.\n\nPrarit\u0027s excellent bug report:\n\u003e In recent Fedora releases (F17 \u0026 F18) some users have reported seeing\n\u003e messages similar to\n\u003e\n\u003e [   15.478160] kvm: Could not allocate 304 bytes percpu data\n\u003e [   15.478174] PERCPU: allocation failed, size\u003d304 align\u003d32, alloc from\n\u003e reserved chunk failed\n\u003e\n\u003e during system boot.  In some cases, users have also reported seeing this\n\u003e message along with a failed load of other modules.\n\u003e\n\u003e What is happening is systemd is loading an instance of the kvm module for\n\u003e each cpu found (see commit e9bda3b).  When the module load occurs the kernel\n\u003e currently allocates the modules percpu data area prior to checking to see\n\u003e if the module is already loaded or is in the process of being loaded.  If\n\u003e the module is already loaded, or finishes load, the module loading code\n\u003e releases the current instance\u0027s module\u0027s percpu data.\n\nNow we have a new state MODULE_STATE_UNFORMED, we can insert the\nmodule into the list (and thus guarantee its uniqueness) before we\nallocate the per-cpu region.\n\nReported-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\n"
    },
    {
      "commit": "0d21b0e3477395e7ff2acc269f15df6e6a8d356d",
      "tree": "116c1a198a36f7ec80cf39e8f307175344290612",
      "parents": [
        "52441fa8f2f1ccc9fa97607c6ccf8b46b9fd15ae"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 12 11:38:44 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 12 13:27:05 2013 +1030"
      },
      "message": "module: add new state MODULE_STATE_UNFORMED.\n\nYou should never look at such a module, so it\u0027s excised from all paths\nwhich traverse the modules list.\n\nWe add the state at the end, to avoid gratuitous ABI break (ksplice).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "829199197a430dade2519d54f5545c4a094393b8",
      "tree": "af50ca9af09b83fd2a5c76cad35bd0603eb33391",
      "parents": [
        "0644ec0cc8a33fb654e348897ad7684e22a4b5d8"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Jan 11 14:32:11 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 11 14:54:56 2013 -0800"
      },
      "message": "kernel/audit.c: avoid negative sleep durations\n\naudit_log_start() performs the same jiffies comparison in two places.\nIf sufficient time has elapsed between the two comparisons, the second\none produces a negative sleep duration:\n\n  schedule_timeout: wrong timeout value fffffffffffffff0\n  Pid: 6606, comm: trinity-child1 Not tainted 3.8.0-rc1+ #43\n  Call Trace:\n    schedule_timeout+0x305/0x340\n    audit_log_start+0x311/0x470\n    audit_log_exit+0x4b/0xfb0\n    __audit_syscall_exit+0x25f/0x2c0\n    sysret_audit+0x17/0x21\n\nFix it by performing the comparison a single time.\n\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nReviewed-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0644ec0cc8a33fb654e348897ad7684e22a4b5d8",
      "tree": "95a0532a89fdd148593c4bd52faa055d308e3380",
      "parents": [
        "7b9205bd775afc4439ed86d617f9042ee9e76a71"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Fri Jan 11 14:32:07 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 11 14:54:55 2013 -0800"
      },
      "message": "audit: catch possible NULL audit buffers\n\nIt\u0027s possible for audit_log_start() to return NULL.  Handle it in the\nvarious callers.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Julien Tinnes \u003cjln@google.com\u003e\nCc: Will Drewry \u003cwad@google.com\u003e\nCc: Steve Grubb \u003csgrubb@redhat.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b9205bd775afc4439ed86d617f9042ee9e76a71",
      "tree": "cfb91447f15301d7daccc73bda12a63fde6a229d",
      "parents": [
        "56ca9d98772c68368c929ab41d42108319a38da2"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Fri Jan 11 14:32:05 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 11 14:54:55 2013 -0800"
      },
      "message": "audit: create explicit AUDIT_SECCOMP event type\n\nThe seccomp path was using AUDIT_ANOM_ABEND from when seccomp mode 1\ncould only kill a process.  While we still want to make sure an audit\nrecord is forced on a kill, this should use a separate record type since\nseccomp mode 2 introduces other behaviors.\n\nIn the case of \"handled\" behaviors (process wasn\u0027t killed), only emit a\nrecord if the process is under inspection.  This change also fixes\nuserspace examination of seccomp audit events, since it was considered\nmalformed due to missing fields of the AUDIT_ANOM_ABEND event type.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: Jeff Layton \u003cjlayton@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Julien Tinnes \u003cjln@google.com\u003e\nAcked-by: Will Drewry \u003cwad@chromium.org\u003e\nAcked-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1b963c81b14509e330e0fe3218b645ece2738dc5",
      "tree": "5179a29d62e7283c8a1d764e7e320490c4352aeb",
      "parents": [
        "fef6c12e8874279ebebfa4cd58d735f6adce3ed1"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Jan 11 14:31:56 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 11 14:54:55 2013 -0800"
      },
      "message": "lockdep, rwsem: provide down_write_nest_lock()\n\ndown_write_nest_lock() provides a means to annotate locking scenario\nwhere an outer lock is guaranteed to serialize the order nested locks\nare being acquired.\n\nThis is analogoue to already existing mutex_lock_nest_lock() and\nspin_lock_nest_lock().\n\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nTested-by: Sedat Dilek \u003csedat.dilek@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2df8f8a6a897ebf4c5613b5be6103d33b2a21520",
      "tree": "a79d468ef6e2b41392dca68c9319f73a99a51770",
      "parents": [
        "a8dd2176a8e988e3744e863ac39647a6f59fa900"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Jan 11 16:14:10 2013 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Jan 11 16:14:10 2013 -0500"
      },
      "message": "tracing: Fix regression with irqsoff tracer and tracing_on file\n\nCommit 02404baf1b47 \"tracing: Remove deprecated tracing_enabled file\"\nremoved the tracing_enabled file as it never worked properly and\nthe tracing_on file should be used instead. But the tracing_on file\ndidn\u0027t call into the tracers start/stop routines like the\ntracing_enabled file did. This caused trace-cmd to break when it\nenabled the irqsoff tracer.\n\nIf you just did \"echo irqsoff \u003e current_tracer\" then it would work\nproperly. But the tool trace-cmd disables tracing first by writing\n\"0\" into the tracing_on file. Then it writes \"irqsoff\" into\ncurrent_tracer and then writes \"1\" into tracing_on. Unfortunately,\nthe above commit changed the irqsoff tracer to check the tracing_on\nstatus instead of the tracing_enabled status. If it\u0027s disabled then\nit does not start the tracer internals.\n\nThe problem is that writing \"1\" into tracing_on does not call the\ntracers \"start\" routine like writing \"1\" into tracing_enabled did.\nThis makes the irqsoff tracer not start when using the trace-cmd\ntool, and is a regression for userspace.\n\nSimple fix is to have the tracing_on file call the tracers start()\nmethod when being enabled (and the stop() method when disabled).\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "bfbbd96c51b441b7a9a08762aa9ab832f6655b2c",
      "tree": "ec27b53bd370898cb198846d5ff324e185987261",
      "parents": [
        "7144bca6814a79ac86800da9d7f05a8c07bc818c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@infradead.org",
        "time": "Wed Jan 09 17:12:45 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 10 14:35:23 2013 -0800"
      },
      "message": "audit: fix auditfilter.c kernel-doc warnings\n\nFix new kernel-doc warning in auditfilter.c:\n\n  Warning(kernel/auditfilter.c:1157): Excess function parameter \u0027uid\u0027 description in \u0027audit_receive_filter\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: linux-audit@redhat.com (subscribers-only)\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ffd4ebf9d19c07285ea8a26d30a17ff28767132",
      "tree": "d563023f1764aac5c5232315c356fa258f53dcce",
      "parents": [
        "7be72c39544e3973509f1c299d255a67177c7a33",
        "a8dd2176a8e988e3744e863ac39647a6f59fa900"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 10 09:03:16 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 10 09:03:16 2013 -0800"
      },
      "message": "Merge tag \u0027trace-3.8-rc2-regression-fix\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace\n\nPull tracing regression fix from Steven Rostedt:\n \"A change that came in this merge window broke the writing to the\n  trace_options file.  It causes garbage to be read during the compare\n  of option names, and breaks setting options via the trace_options\n  file, although options can still be set via the options/\u003coption\u003e\n  files.\"\n\n* tag \u0027trace-3.8-rc2-regression-fix\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:\n  tracing: Fix regression of trace_options file setting\n"
    },
    {
      "commit": "a8dd2176a8e988e3744e863ac39647a6f59fa900",
      "tree": "2f848f44ae3a614d9b7d13e156e5bc7429c40113",
      "parents": [
        "d1c3ed669a2d452cacfb48c2d171a1f364dae2ed"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 09 20:54:17 2013 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 09 20:54:17 2013 -0500"
      },
      "message": "tracing: Fix regression of trace_options file setting\n\nThe latest change to allow trace options to be set on the command\nline also broke the trace_options file.\n\nThe zeroing of the last byte of the option name that is echoed into\nthe trace_option file was removed with the consolidation of some\nof the code. The compare between the option and what was written to\nthe trace_options file fails because the string holding the data\nwritten doesn\u0027t terminate with a null character.\n\nA zero needs to be added to the end of the string copied from\nuser space.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d0631c6e09f51e094ae5aec1eabe81cc63d78178",
      "tree": "69d8dc6fa37d2e440f37cda06c40f1800edb8a08",
      "parents": [
        "de9ac5cea33098143edd26d10ece7fe215e66623",
        "35dac27cedd14c3b6fcd4ba7bc3c31738cfd1831"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 07 07:42:38 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 07 07:42:38 2013 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (fixes from Andrew)\n\nMerge emailed fixes from Andrew Morton:\n \"Bunch of fixes:\n\n   - delayed IPC updates.  I held back on this because of some possible\n     outstanding bug reports, but they appear to have been addressed in\n     later versions\n\n   - A bunch of MAINTAINERS updates\n\n   - Yet Another RTC driver.  I\u0027d held this back while a couple of\n     little issues were being worked out.\n\n  I\u0027m expecting an intrusive-but-simple patchset from Joe Perches which\n  splits up printk.c into kernel/printk/*.  That will be a pig to\n  maintain for two months so if it passes testing I\u0027d like to get it\n  upstream after a week or so.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (35 commits)\n  printk: fix incorrect length from print_time() when seconds \u003e 99999\n  drivers/rtc/rtc-vt8500.c: fix handling of data passed in struct rtc_time\n  drivers/rtc/rtc-vt8500.c: correct handling of CR_24H bitfield\n  rtc: add RTC driver for TPS6586x\n  MAINTAINERS: fix drivers/staging/sm7xx/\n  MAINTAINERS: remove include/linux/of_pwm.h\n  MAINTAINERS: remove arch/*/lib/perf_event*.c\n  MAINTAINERS: remove drivers/mmc/host/imxmmc.*\n  MAINTAINERS: fix Documentation/mei/\n  MAINTAINERS: remove arch/x86/platform/mrst/pmu.*\n  MAINTAINERS: remove firmware/isci/\n  MAINTAINERS: fix drivers/ieee802154/\n  MAINTAINERS: fix .../plat-mxc/include/mach/imxfb.h\n  MAINTAINERS: remove drivers/video/epson1355fb.c\n  MAINTAINERS: fix drivers/media/usb/dvb-usb/cxusb*\n  MAINTAINERS: adjust for UAPI\n  MAINTAINERS: fix drivers/media/platform/atmel-isi.c\n  MAINTAINERS: fix arch/arm/mach-at91/include/mach/at_hdmac.h\n  MAINTAINERS: fix drivers/rtc/rtc-vt8500.c\n  MAINTAINERS: remove arch/arm/plat-s5p/\n  ...\n"
    },
    {
      "commit": "0c4a842349b27d361f1503f6437df303e1b541c9",
      "tree": "6f52ce9adce2db7cdb03adf60dc0723cd2a5cc44",
      "parents": [
        "5ba53ff648e785445a32ba39112ed07e4cf588d0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sat Jan 05 19:13:29 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 05 19:34:54 2013 -0800"
      },
      "message": "signals: set_current_blocked() can use __set_current_blocked()\n\nCleanup.  And I think we need more cleanups, in particular\n__set_current_blocked() and sigprocmask() should die.  Nobody should\never block SIGKILL or SIGSTOP.\n\n - Change set_current_blocked() to use __set_current_blocked()\n\n - Change sys_sigprocmask() to use set_current_blocked(), this way it\n   should not worry about SIGKILL/SIGSTOP.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ba53ff648e785445a32ba39112ed07e4cf588d0",
      "tree": "ce8657276d09d639a4c069b9d39f8459542c29f3",
      "parents": [
        "5f243b9b46a22e5790dbbc36f574c2417af49a41"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sat Jan 05 19:13:13 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 05 19:34:54 2013 -0800"
      },
      "message": "signals: sys_ssetmask() uses uninitialized newmask\n\nCommit 77097ae503b1 (\"most of set_current_blocked() callers want\nSIGKILL/SIGSTOP removed from set\") removed the initialization of newmask\nby accident, causing ltp to complain like this:\n\n  ssetmask01    1  TFAIL  :  sgetmask() failed: TEST_ERRNO\u003d???(0): Success\n\nRestore the proper initialization.\n\nReported-and-tested-by: CAI Qian \u003ccaiqian@redhat.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: stable@kernel.org\t# v3.5+\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "35dac27cedd14c3b6fcd4ba7bc3c31738cfd1831",
      "tree": "22defb106f9c4081a14bb0fd54a6740b0460fc36",
      "parents": [
        "2f90b68309683f2c5765a1b04ca23d71e51f1494"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jan 04 15:35:50 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 04 16:11:48 2013 -0800"
      },
      "message": "printk: fix incorrect length from print_time() when seconds \u003e 99999\n\nprint_prefix() passes a NULL buf to print_time() to get the length of\nthe time prefix; when printk times are enabled, the current code just\nreturns the constant 15, which matches the format \"[%5lu.%06lu] \" used\nto print the time value.  However, this is obviously incorrect when the\nwhole seconds part of the time gets beyond 5 digits (100000 seconds is a\nbit more than a day of uptime).\n\nThe simple fix is to use snprintf(NULL, 0, ...) to calculate the actual\nlength of the time prefix.  This could be micro-optimized but it seems\nbetter to have simpler, more readable code here.\n\nThe bug leads to the syslog system call miscomputing which messages fit\ninto the userspace buffer.  If there are enough messages to fill\nlog_buf_len and some have a timestamp \u003e\u003d 100000, dmesg may fail with:\n\n    # dmesg\n    klogctl: Bad address\n\nWhen this happens, strace shows that the failure is indeed EFAULT due to\nthe kernel mistakenly accessing past the end of dmesg\u0027s buffer, since\ndmesg asks the kernel how big a buffer it needs, allocates a bit more,\nand then gets an error when it asks the kernel to fill it:\n\n    syslog(0xa, 0, 0)                       \u003d 1048576\n    mmap(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) \u003d 0x7fa4d25d2000\n    syslog(0x3, 0x7fa4d25d2010, 0x100008)   \u003d -1 EFAULT (Bad address)\n\nAs far as I can see, the bug has been there as long as print_time(),\nwhich comes from commit 084681d14e42 (\"printk: flush continuation lines\nimmediately to console\") in 3.5-rc5.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Sylvain Munaut \u003cs.munaut@whatever-company.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52441fa8f2f1ccc9fa97607c6ccf8b46b9fd15ae",
      "tree": "5a5d4536de0898ed4ae4a012979e0ce17fdfb2ff",
      "parents": [
        "f4953fe6c4aeada2d5cafd78aa97587a46d2d8f9"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "sasha.levin@oracle.com",
        "time": "Thu Jan 03 11:09:53 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 03 11:10:32 2013 +1030"
      },
      "message": "module: prevent warning when finit_module a 0 sized file\n\nIf we try to finit_module on a file sized 0 bytes vmalloc will\nscream and spit out a warning.\n\nSince modules have to be bigger than 0 bytes anyways we can just\ncheck that beforehand and avoid the warning.\n\nSigned-off-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "b2ddedcd21f44a5873ee3d6ff6118a2318e01e18",
      "tree": "8ebc45893c633d451819ae6d2046cc8a4ae14446",
      "parents": [
        "a566c288826ad4502e43b59570214f18173d7744"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 24 12:31:00 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 26 01:15:03 2012 -0500"
      },
      "message": "x32: fix sigtimedwait\n\nIt needs 64bit timespec.  As it is, we end up truncating the timeout\nto whole seconds; usually it doesn\u0027t matter, but for having all\nsub-second timeouts truncated to one jiffy is visibly wrong.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a566c288826ad4502e43b59570214f18173d7744",
      "tree": "f95245e6aa2d4ba9edf7d065645254e19eefd693",
      "parents": [
        "8d9807b109497ca41d363dc7b6ff2bb6c0d52524"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 23 23:14:49 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 26 01:15:03 2012 -0500"
      },
      "message": "x32: fix waitid()\n\nIt needs 64bit rusage and 32bit siginfo.  glibc never calls it with\nnon-NULL rusage pointer, or we would\u0027ve seen breakage already...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8d9807b109497ca41d363dc7b6ff2bb6c0d52524",
      "tree": "3f6768b1ab6ee104c7e41253474e358291bc0537",
      "parents": [
        "90228fc110303549aa1d4d86083bf585df8624c3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 23 14:56:40 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 26 01:15:02 2012 -0500"
      },
      "message": "switch compat_sys_wait4() and compat_sys_waitid() to COMPAT_SYSCALL_DEFINE\n\nStrictly speaking, ppc64 needs it for C ABI compliance.  Realistically\nI would be very surprised if e.g. passing 0xffffffff as \u0027options\u0027\nargument to waitid() from 32bit task would cause problems, but yes,\nit puts us into undefined behaviour territory.  ppc64 expects int\nargument to be passed in 64bit register with bits 31..63 containing\nthe same value.  SYSCALL_DEFINE on ppc provides a wrapper that normalizes\nthe value passed from userland; so does COMPAT_SYSCALL_DEFINE.  Plain\ndeclaration of compat_sys_something() with an int argument obviously\ndoesn\u0027t.  Again, for wait4 and waitid I would be extremely surprised\nif gcc started to produce code depending on that value having been\nproperly sign-extended - the argument(s) in question end up passed\nblindly to sys_wait4 and sys_waitid resp. and normalization for native\nsyscalls takes care of their use there.  Still, better to use\nCOMPAT_SYSCALL_DEFINE here than worry about nasal daemons...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "90228fc110303549aa1d4d86083bf585df8624c3",
      "tree": "5e696392110eb20c67d2ffc9c35eae781e4f5821",
      "parents": [
        "f13a3664e4d1de8adc1fc82b981ba4699a731fa1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Dec 23 03:33:38 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 26 01:15:02 2012 -0500"
      },
      "message": "switch compat_sys_sigaltstack() to COMPAT_SYSCALL_DEFINE\n\nMakes sigaltstack conversion easier to split into per-architecture\nparts.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c876ad7682155958d0c9c27afe9017925c230d64",
      "tree": "926064bd7909f60daed3b6b963555e57cab7b520",
      "parents": [
        "8382fcac1b813ad0a4e68a838fc7ae93fa39eda0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 21 20:27:12 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Dec 25 16:10:05 2012 -0800"
      },
      "message": "pidns: Stop pid allocation when init dies\n\nOleg pointed out that in a pid namespace the sequence.\n- pid 1 becomes a zombie\n- setns(thepidns), fork,...\n- reaping pid 1.\n- The injected processes exiting.\n\nCan lead to processes attempting access their child reaper and\ninstead following a stale pointer.\n\nThat waitpid for init can return before all of the processes in\nthe pid namespace have exited is also unfortunate.\n\nAvoid these problems by disabling the allocation of new pids in a pid\nnamespace when init dies, instead of when the last process in a pid\nnamespace is reaped.\n\nPointed-out-by:  Oleg Nesterov \u003coleg@redhat.com\u003e\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "8382fcac1b813ad0a4e68a838fc7ae93fa39eda0",
      "tree": "a484c6a712a7361a07d9514ea86f835b70ad3414",
      "parents": [
        "a49f0d1ea3ec94fc7cf33a7c36a16343b74bd565"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Dec 20 19:26:06 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Dec 24 22:53:14 2012 -0800"
      },
      "message": "pidns: Outlaw thread creation after unshare(CLONE_NEWPID)\n\nThe sequence:\nunshare(CLONE_NEWPID)\nclone(CLONE_THREAD|CLONE_SIGHAND|CLONE_VM)\n\nCreates a new process in the new pid namespace without setting\npid_ns-\u003echild_reaper.  After forking this results in a NULL\npointer dereference.\n\nAvoid this and other nonsense scenarios that can show up after\ncreating a new pid namespace with unshare by adding a new\ncheck in copy_prodcess.\n\nPointed-out-by:  Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by:  Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "96680d2b9174668100824d763382240c71baa811",
      "tree": "ec84c2347df47913cc98e3cfc1d43f427d51fa1f",
      "parents": [
        "4c9a44aebeaef35570a67aed17b72a2cf8d0b219",
        "1ca39ab9d21ac93f94b9e3eb364ea9a5cf2aba06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 20:11:52 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 20:11:52 2012 -0800"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.infradead.org/users/eparis/notify\n\nPull filesystem notification updates from Eric Paris:\n \"This pull mostly is about locking changes in the fsnotify system.  By\n  switching the group lock from a spin_lock() to a mutex() we can now\n  hold the lock across things like iput().  This fixes a problem\n  involving unmounting a fs and having inodes be busy, first pointed out\n  by FAT, but reproducible with tmpfs.\n\n  This also restores signal driven I/O for inotify, which has been\n  broken since about 2.6.32.\"\n\nUgh.  I *hate* the timing of this.  It was rebased after the merge\nwindow opened, and then left to sit with the pull request coming the day\nbefore the merge window closes.  That\u0027s just crap.  But apparently the\npatches themselves have been around for over a year, just gathering\ndust, so now it\u0027s suddenly critical.\n\nFixed up semantic conflict in fs/notify/fdinfo.c as per Stephen\nRothwell\u0027s fixes from -next.\n\n* \u0027for-next\u0027 of git://git.infradead.org/users/eparis/notify:\n  inotify: automatically restart syscalls\n  inotify: dont skip removal of watch descriptor if creation of ignored event failed\n  fanotify: dont merge permission events\n  fsnotify: make fasync generic for both inotify and fanotify\n  fsnotify: change locking order\n  fsnotify: dont put marks on temporary list when clearing marks by group\n  fsnotify: introduce locked versions of fsnotify_add_mark() and fsnotify_remove_mark()\n  fsnotify: pass group to fsnotify_destroy_mark()\n  fsnotify: use a mutex instead of a spinlock to protect a groups mark list\n  fanotify: add an extra flag to mark_remove_from_mask that indicates wheather a mark should be destroyed\n  fsnotify: take groups mark_lock before mark lock\n  fsnotify: use reference counting for groups\n  fsnotify: introduce fsnotify_get_group()\n  inotify, fanotify: replace fsnotify_put_group() with fsnotify_destroy_group()\n"
    },
    {
      "commit": "4c9a44aebeaef35570a67aed17b72a2cf8d0b219",
      "tree": "abb874fe7f50671627b282f6c7fb58db5e75a2e3",
      "parents": [
        "1f0377ff088ed2971c57debc9b0c3b846ec431fd",
        "cfde819088422503b5c69e03ab7bb90f87121d4d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 20:00:43 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 20:00:43 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge the rest of Andrew\u0027s patches for -rc1:\n \"A bunch of fixes and misc missed-out-on things.\n\n  That\u0027ll do for -rc1.  I still have a batch of IPC patches which still\n  have a possible bug report which I\u0027m chasing down.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (25 commits)\n  keys: use keyring_alloc() to create module signing keyring\n  keys: fix unreachable code\n  sendfile: allows bypassing of notifier events\n  SGI-XP: handle non-fatal traps\n  fat: fix incorrect function comment\n  Documentation: ABI: remove testing/sysfs-devices-node\n  proc: fix inconsistent lock state\n  linux/kernel.h: fix DIV_ROUND_CLOSEST with unsigned divisors\n  memcg: don\u0027t register hotcpu notifier from -\u003ecss_alloc()\n  checkpatch: warn on uapi #includes that #include \u003cuapi/...\n  revert \"rtc: recycle id when unloading a rtc driver\"\n  mm: clean up transparent hugepage sysfs error messages\n  hfsplus: add error message for the case of failure of sync fs in delayed_sync_fs() method\n  hfsplus: rework processing of hfs_btree_write() returned error\n  hfsplus: rework processing errors in hfsplus_free_extents()\n  hfsplus: avoid crash on failed block map free\n  kcmp: include linux/ptrace.h\n  drivers/rtc/rtc-imxdi.c: must include \u003clinux/spinlock.h\u003e\n  mm: cma: WARN if freed memory is still in use\n  exec: do not leave bprm-\u003einterp on stack\n  ...\n"
    },
    {
      "commit": "54d46ea993744c5408e39ce0cb4851e13cbea716",
      "tree": "8e38fa92cc2ae72e0353c44e1e68be9bf5a7a058",
      "parents": [
        "f59dc2bb5a50b26ea751f9eac1c81e4cc7de5257",
        "50ececcfa7d1acee085b2c518cad495062db6379"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 18:05:28 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 18:05:28 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull signal handling cleanups from Al Viro:\n \"sigaltstack infrastructure + conversion for x86, alpha and um,\n  COMPAT_SYSCALL_DEFINE infrastructure.\n\n  Note that there are several conflicts between \"unify\n  SS_ONSTACK/SS_DISABLE definitions\" and UAPI patches in mainline;\n  resolution is trivial - just remove definitions of SS_ONSTACK and\n  SS_DISABLED from arch/*/uapi/asm/signal.h; they are all identical and\n  include/uapi/linux/signal.h contains the unified variant.\"\n\nFixed up conflicts as per Al.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  alpha: switch to generic sigaltstack\n  new helpers: __save_altstack/__compat_save_altstack, switch x86 and um to those\n  generic compat_sys_sigaltstack()\n  introduce generic sys_sigaltstack(), switch x86 and um to it\n  new helper: compat_user_stack_pointer()\n  new helper: restore_altstack()\n  unify SS_ONSTACK/SS_DISABLE definitions\n  new helper: current_user_stack_pointer()\n  missing user_stack_pointer() instances\n  Bury the conditionals from kernel_thread/kernel_execve series\n  COMPAT_SYSCALL_DEFINE: infrastructure\n"
    },
    {
      "commit": "cfde819088422503b5c69e03ab7bb90f87121d4d",
      "tree": "338100ef53d4736c73be67e2ea3bd29428ecf866",
      "parents": [
        "e67eab39bee26f509d38d00ca1a8f24b63f46a31"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Dec 20 15:05:56 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 17:40:21 2012 -0800"
      },
      "message": "keys: use keyring_alloc() to create module signing keyring\n\nUse keyring_alloc() to create special keyrings now that it has\na permissions parameter rather than using key_alloc() +\nkey_instantiate_and_link().\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "44fd07e989a9a27476d8963296688127a4fd4df4",
      "tree": "becbc4b9e1f5c11d9441689376d555ed0a5eafcb",
      "parents": [
        "ba3f7a1765dc4095c757ac82eb14d6824c45e87d"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu Dec 20 15:05:21 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 17:40:19 2012 -0800"
      },
      "message": "kcmp: include linux/ptrace.h\n\nThis makes it compile on s390. After all the ptrace_may_access\n(which we use this file) is declared exactly in linux/ptrace.h.\n\nThis is preparatory work to wire this syscall up on all archs.\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nSigned-off-by: Alexander Kartashov \u003calekskartashov@parallels.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2832bc19f6668fd00116f61f821105040599ef8b",
      "tree": "9839b9321ab7c3dc86f003d69cae522a78d02f20",
      "parents": [
        "cda73a10eb3f493871ed39f468db50a65ebeddce"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Wed Dec 19 17:42:16 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 07:06:56 2012 -0800"
      },
      "message": "sched: numa: ksm: fix oops in task_numa_placment()\n\ntask_numa_placement() oopsed on NULL p-\u003emm when task_numa_fault() got\ncalled in the handling of break_ksm() for ksmd.  That might be a\npeculiar case, which perhaps KSM could takes steps to avoid? but it\u0027s\nmore robust if task_numa_placement() allows for such a possibility.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7005cd39707ba59b5b1d3e70da2c448d3235eb3e",
      "tree": "89ed68e2cfd68f038d58f86a0eb5fe7eea279103",
      "parents": [
        "2f0bf92513be58d2d65c0a4cc05c5779a7cd81e1",
        "6133705494bb02953e1e2cc3018a4373981b3c97"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 20:23:37 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 20:23:37 2012 -0800"
      },
      "message": "Merge tag \u0027random_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random\n\nPull random updates from Ted Ts\u0027o:\n \"A few /dev/random improvements for the v3.8 merge window.\"\n\n* tag \u0027random_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:\n  random: Mix cputime from each thread that exits to the pool\n  random: prime last_data value per fips requirements\n  random: fix debug format strings\n  random: make it possible to enable debugging without rebuild\n"
    },
    {
      "commit": "c40702c49faef05ae324f121d8b3e215244ee152",
      "tree": "b0b2a51b07e944497da5cb48fb461963a3762cad",
      "parents": [
        "9026843952adac5b123c7b8dc961e5c15828d9e1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 20 14:24:26 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 19 18:07:41 2012 -0500"
      },
      "message": "new helpers: __save_altstack/__compat_save_altstack, switch x86 and um to those\n\nnote that they are relying on access_ok() already checked by caller.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9026843952adac5b123c7b8dc961e5c15828d9e1",
      "tree": "4ef89cf05cf97427ceb2587fed94a6a12833d527",
      "parents": [
        "6bf9adfc90370b695cb111116e15fdc0e1906270"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 14 14:47:53 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 19 18:07:41 2012 -0500"
      },
      "message": "generic compat_sys_sigaltstack()\n\nAgain, conditional on CONFIG_GENERIC_SIGALTSTACK\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6bf9adfc90370b695cb111116e15fdc0e1906270",
      "tree": "b8e4d369cadad21f33b7a5f7f69d43665f821ddc",
      "parents": [
        "9b064fc3f95a8e44e929fdf4d6037334ea03d15b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 14 14:09:47 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 19 18:07:40 2012 -0500"
      },
      "message": "introduce generic sys_sigaltstack(), switch x86 and um to it\n\nConditional on CONFIG_GENERIC_SIGALTSTACK; architectures that do not\nselect it are completely unaffected\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5c49574ffd7ac07eae8c3b065d19e6ebc7e4760f",
      "tree": "10c25476b152eca9917eea82fbecff28718eb2fc",
      "parents": [
        "031b6566983ad9c0247087f039af22b3f87596a3"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Nov 18 15:29:16 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 19 18:07:40 2012 -0500"
      },
      "message": "new helper: restore_altstack()\n\nto be used by rt_sigreturn instances\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ae903caae267154de7cf8576b130ff474630596b",
      "tree": "a39d238d7fd1742f7f20cacbd24a4d1b4957176e",
      "parents": [
        "468366138850f20543f1d4878028900672b23dae"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Dec 14 12:44:11 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Dec 19 18:07:38 2012 -0500"
      },
      "message": "Bury the conditionals from kernel_thread/kernel_execve series\n\nAll architectures have\n\tCONFIG_GENERIC_KERNEL_THREAD\n\tCONFIG_GENERIC_KERNEL_EXECVE\n\t__ARCH_WANT_SYS_EXECVE\nNone of them have __ARCH_WANT_KERNEL_EXECVE and there are only two callers\nof kernel_execve() (which is a trivial wrapper for do_execve() now) left.\nKill the conditionals and make both callers use do_execve().\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3935e89505a1c3ab3f3b0c7ef0eae54124f48905",
      "tree": "8cfa921612d9596b2baf98f23f7e797092bcaf11",
      "parents": [
        "74779e22261172ea728b989310f6ecc991b57d62"
      ],
      "author": {
        "name": "Bjørn Mork",
        "email": "bjorn@mork.no",
        "time": "Wed Dec 19 20:51:31 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 12:10:33 2012 -0800"
      },
      "message": "watchdog: Fix disable/enable regression\n\nCommit 8d4516904b39 (\"watchdog: Fix CPU hotplug regression\") causes an\noops or hard lockup when doing\n\n echo 0 \u003e /proc/sys/kernel/nmi_watchdog\n echo 1 \u003e /proc/sys/kernel/nmi_watchdog\n\nand the kernel is booted with nmi_watchdog\u003d1 (default)\n\nRunning laptop-mode-tools and disconnecting/connecting AC power will\ncause this to trigger, making it a common failure scenario on laptops.\n\nInstead of bailing out of watchdog_disable() when !watchdog_enabled we\ncan initialize the hrtimer regardless of watchdog_enabled status.  This\nmakes it safe to call watchdog_disable() in the nmi_watchdog\u003d0 case,\nwithout the negative effect on the enabled \u003d\u003e disabled \u003d\u003e enabled case.\n\nAll these tests pass with this patch:\n- nmi_watchdog\u003d1\n  echo 0 \u003e /proc/sys/kernel/nmi_watchdog\n  echo 1 \u003e /proc/sys/kernel/nmi_watchdog\n\n- nmi_watchdog\u003d0\n  echo 0 \u003e /sys/devices/system/cpu/cpu1/online\n\n- nmi_watchdog\u003d0\n  echo mem \u003e /sys/power/state\n\nBugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\u003d51661\n\nCc: \u003cstable@vger.kernel.org\u003e # v3.7\nCc: Norbert Warmuth \u003cnwarmuth@t-online.de\u003e\nCc: Joseph Salisbury \u003cjoseph.salisbury@canonical.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Bjørn Mork \u003cbjorn@mork.no\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a684c452e2589f3ddd7e2d466b4f747d3715ad9",
      "tree": "fed803e7450770993575b37807ba2195eafd5b0e",
      "parents": [
        "7f2de8171ddf28fdb2ca7f9a683ee1207849f718",
        "e10e1774efbdaec54698454200619a03a01e1d64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:55:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:55:08 2012 -0800"
      },
      "message": "Merge tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module update from Rusty Russell:\n \"Nothing all that exciting; a new module-from-fd syscall for those who\n  want to verify the source of the module (ChromeOS) and/or use standard\n  IMA on it or other security hooks.\"\n\n* tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  MODSIGN: Fix kbuild output when using default extra_certificates\n  MODSIGN: Avoid using .incbin in C source\n  modules: don\u0027t hand 0 to vmalloc.\n  module: Remove a extra null character at the top of module-\u003estrtab.\n  ASN.1: Use the ASN1_LONG_TAG and ASN1_INDEFINITE_LENGTH constants\n  ASN.1: Define indefinite length marker constant\n  moduleparam: use __UNIQUE_ID()\n  __UNIQUE_ID()\n  MODSIGN: Add modules_sign make target\n  powerpc: add finit_module syscall.\n  ima: support new kernel module syscall\n  add finit_module syscall to asm-generic\n  ARM: add finit_module syscall to ARM\n  security: introduce kernel_module_from_file hook\n  module: add flags arg to sys_finit_module()\n  module: add syscall to load module from fd\n"
    },
    {
      "commit": "673ab8783b596cda5b616b317b1a1b47480c66fd",
      "tree": "d3fc9bb4279720c53d0dc69c2a34c40635cf05f3",
      "parents": [
        "d7b96ca5d08a8f2f836feb2b3b3bd721d2837a8e",
        "3cf23841b4b76eb94d3f8d0fb3627690e4431413"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:08:12 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:08:12 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (more patches from Andrew)\n\nMerge patches from Andrew Morton:\n \"Most of the rest of MM, plus a few dribs and drabs.\n\n  I still have quite a few irritating patches left around: ones with\n  dubious testing results, lack of review, ones which should have gone\n  via maintainer trees but the maintainers are slack, etc.\n\n  I need to be more activist in getting these things wrapped up outside\n  the merge window, but they\u0027re such a PITA.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (48 commits)\n  mm/vmscan.c: avoid possible deadlock caused by too_many_isolated()\n  vmscan: comment too_many_isolated()\n  mm/kmemleak.c: remove obsolete simple_strtoul\n  mm/memory_hotplug.c: improve comments\n  mm/hugetlb: create hugetlb cgroup file in hugetlb_init\n  mm/mprotect.c: coding-style cleanups\n  Documentation: ABI: /sys/devices/system/node/\n  slub: drop mutex before deleting sysfs entry\n  memcg: add comments clarifying aspects of cache attribute propagation\n  kmem: add slab-specific documentation about the kmem controller\n  slub: slub-specific propagation changes\n  slab: propagate tunable values\n  memcg: aggregate memcg cache values in slabinfo\n  memcg/sl[au]b: shrink dead caches\n  memcg/sl[au]b: track all the memcg children of a kmem_cache\n  memcg: destroy memcg caches\n  sl[au]b: allocate objects from memcg cache\n  sl[au]b: always get the cache from its page in kmem_cache_free()\n  memcg: skip memcg kmem allocations in specified code regions\n  memcg: infrastructure to match an allocation to the right cache\n  ...\n"
    },
    {
      "commit": "2ad306b17c0ac5a1b1f250d5f772aeb87fdf1eba",
      "tree": "743e6092019959dd455091d75b3fab2aa7f0a2aa",
      "parents": [
        "c8b2a36fb1597e9390cf4c1a7f2dd394dc7d7b17"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:13 2012 -0800"
      },
      "message": "fork: protect architectures where THREAD_SIZE \u003e\u003d PAGE_SIZE against fork bombs\n\nBecause those architectures will draw their stacks directly from the page\nallocator, rather than the slab cache, we can directly pass __GFP_KMEMCG\nflag, and issue the corresponding free_pages.\n\nThis code path is taken when the architecture doesn\u0027t define\nCONFIG_ARCH_THREAD_INFO_ALLOCATOR (only ia64 seems to), and has\nTHREAD_SIZE \u003e\u003d PAGE_SIZE.  Luckily, most - if not all - of the remaining\narchitectures fall in this category.\n\nThis will guarantee that every stack page is accounted to the memcg the\nprocess currently lives on, and will have the allocations to fail if they\ngo over limit.\n\nFor the time being, I am defining a new variant of THREADINFO_GFP, not to\nmess with the other path.  Once the slab is also tracked by memcg, we can\nget rid of that flag.\n\nTested to successfully protect against :(){ :|:\u0026 };:\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "50bdd430c20566b13d8bc59946184b08f5875de6",
      "tree": "15ccc558002367c3d2c6b092ccc1d49e6d14acf1",
      "parents": [
        "6a1a0d3b625a4091e7a0eb249aefc6a644385149"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:12 2012 -0800"
      },
      "message": "res_counter: return amount of charges after res_counter_uncharge()\n\nIt is useful to know how many charges are still left after a call to\nres_counter_uncharge.  While it is possible to issue a res_counter_read\nafter uncharge, this can be racy.\n\nIf we need, for instance, to take some action when the counters drop down\nto 0, only one of the callers should see it.  This is the same semantics\nas the atomic variables in the kernel.\n\nSince the current return value is void, we don\u0027t need to worry about\nanything breaking due to this change: nobody relied on that, and only\nusers appearing from now on will be checking this value.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19af395d7c0daaafdebd441a162128aaac575912",
      "tree": "1101927675dd8fc7e19da64b28c8eed4370f6ca4",
      "parents": [
        "f6af75dac3978d0b4d83939cb5d244b2a844820e"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Tue Dec 18 14:21:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:11 2012 -0800"
      },
      "message": "irq: tsk-\u003ecomm is an array\n\nThe array check is useless so remove it.\n\n[akpm@linux-foundation.org: remove comment, per David]\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "758338e960ebe8ac3bef7ae11ff830bc2f9c655c",
      "tree": "dbaea6140ada681baa462a2818095bcea0160108",
      "parents": [
        "224394ad75711042c6d362c9dbc9874b476edbc0",
        "bf3071f5a054db9e5bab873355d27a7330ce5187"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 12:28:39 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 12:28:39 2012 -0800"
      },
      "message": "Merge branch \u0027tip/perf/core-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace\n\nPull minor tracing updates and fixes from Steven Rostedt:\n \"It seems that one of my old pull requests have slipped through.\n\n  The changes are contained to just the files that I maintain, and are\n  changes from others that I told I would get into this merge window.\n\n  They have already been in linux-next for several weeks, and should be\n  well tested.\"\n\n* \u0027tip/perf/core-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:\n  tracing: Remove unnecessary WARN_ONCE\u0027s from tracing_buffers_splice_read\n  tracing: Remove unneeded checks from the stack tracer\n  tracing: Add a resize function to make one buffer equivalent to another buffer\n"
    },
    {
      "commit": "a2faf2fc534f57ba26bc4d613795236ed4f5fb1c",
      "tree": "d75c4daadb469c8f08c498532fbf1fff68879e69",
      "parents": [
        "4351654e3ddf86a04966163dce4def586303e5cc",
        "5155040ed349950e16c093ba8e65ad534994df2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 10:55:28 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 10:55:28 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace\n\nPull (again) user namespace infrastructure changes from Eric Biederman:\n \"Those bugs, those darn embarrasing bugs just want don\u0027t want to get\n  fixed.\n\n  Linus I just updated my mirror of your kernel.org tree and it appears\n  you successfully pulled everything except the last 4 commits that fix\n  those embarrasing bugs.\n\n  When you get a chance can you please repull my branch\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:\n  userns: Fix typo in description of the limitation of userns_install\n  userns: Add a more complete capability subset test to commit_creds\n  userns: Require CAP_SYS_ADMIN for most uses of setns.\n  Fix cap_capable to only allow owners in the parent user namespace to have caps.\n"
    },
    {
      "commit": "848b81415c42ff3dc9a4204749087b015c37ef66",
      "tree": "391da3a73aea48632248220d2d6b8d45a88f7eae",
      "parents": [
        "992956189de58cae9f2be40585bc25105cd7c5ad",
        "6fd59a83b9261fa53eaf98fb5514abba504a3ea3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 20:58:12 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 20:58:12 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge misc patches from Andrew Morton:\n \"Incoming:\n\n   - lots of misc stuff\n\n   - backlight tree updates\n\n   - lib/ updates\n\n   - Oleg\u0027s percpu-rwsem changes\n\n   - checkpatch\n\n   - rtc\n\n   - aoe\n\n   - more checkpoint/restart support\n\n  I still have a pile of MM stuff pending - Pekka should be merging\n  later today after which that is good to go.  A number of other things\n  are twiddling thumbs awaiting maintainer merges.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (180 commits)\n  scatterlist: don\u0027t BUG when we can trivially return a proper error.\n  docs: update documentation about /proc/\u003cpid\u003e/fdinfo/\u003cfd\u003e fanotify output\n  fs, fanotify: add @mflags field to fanotify output\n  docs: add documentation about /proc/\u003cpid\u003e/fdinfo/\u003cfd\u003e output\n  fs, notify: add procfs fdinfo helper\n  fs, exportfs: add exportfs_encode_inode_fh() helper\n  fs, exportfs: escape nil dereference if no s_export_op present\n  fs, epoll: add procfs fdinfo helper\n  fs, eventfd: add procfs fdinfo helper\n  procfs: add ability to plug in auxiliary fdinfo providers\n  tools/testing/selftests/kcmp/kcmp_test.c: print reason for failure in kcmp_test\n  breakpoint selftests: print failure status instead of cause make error\n  kcmp selftests: print fail status instead of cause make error\n  kcmp selftests: make run_tests fix\n  mem-hotplug selftests: print failure status instead of cause make error\n  cpu-hotplug selftests: print failure status instead of cause make error\n  mqueue selftests: print failure status instead of cause make error\n  vm selftests: print failure status instead of cause make error\n  ubifs: use prandom_bytes\n  mtd: nandsim: use prandom_bytes\n  ...\n"
    },
    {
      "commit": "a5ba911ec3792168530d35e16a8ec3b6fc60bcb5",
      "tree": "1dbffcb920aabeb12dc166aa11299bbddba8a245",
      "parents": [
        "d740269867021faf4ce38a449353d2b986c34a67"
      ],
      "author": {
        "name": "Gao feng",
        "email": "gaofeng@cn.fujitsu.com",
        "time": "Mon Dec 17 16:03:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:23 2012 -0800"
      },
      "message": "pidns: remove unused is_container_init()\n\nSince commit 1cdcbec1a337 (\"CRED: Neuter sys_capset()\")\nis_container_init() has no callers.\n\nSigned-off-by: Gao feng \u003cgaofeng@cn.fujitsu.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "992fb6e170639b0849bace8e49bf31bd37c4123c",
      "tree": "29f54e489ea095aba284fd4b1feb7201347eb70c",
      "parents": [
        "462e471107624fe9bd8b6353ac13e06305c3f3fd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Dec 17 16:03:07 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:22 2012 -0800"
      },
      "message": "ptrace: introduce PTRACE_O_EXITKILL\n\nPtrace jailers want to be sure that the tracee can never escape\nfrom the control. However if the tracer dies unexpectedly the\ntracee continues to run in potentially unsafe mode.\n\nAdd the new ptrace option PTRACE_O_EXITKILL. If the tracer exits\nit sends SIGKILL to every tracee which has this bit set.\n\nNote that the new option is not equal to the last-option \u003c\u003c 1.  Because\ncurrently all options have an event, and the new one starts the eventless\ngroup.  It uses the random 20 bit, so we have the room for 12 more events,\nbut we can also add the new eventless options below this one.\n\nSuggested by Amnon Shiloh.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nTested-by: Amnon Shiloh \u003cu3557@miso.sublimeip.com\u003e\nCc: Denys Vlasenko \u003cdvlasenk@redhat.com\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: Chris Evans \u003cscarybeasts@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ad50c3896afbb3c103409a18260e601b87a744c",
      "tree": "3a59c1e90b3ee62daf18bc9689cf454a31f164be",
      "parents": [
        "918854a65e856574523d94763ef2a2b48ad55a25"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Dec 17 16:01:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:18 2012 -0800"
      },
      "message": "compat: generic compat_sys_sched_rr_get_interval() implementation\n\nThis function is used by sparc, powerpc tile and arm64 for compat support.\n The patch adds a generic implementation with a wrapper for PowerPC to do\nthe u32-\u003eint sign extension.\n\nThe reason for a single patch covering powerpc, tile, sparc and arm64 is\nto keep it bisectable, otherwise kernel building may fail with mismatched\nfunction declarations.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e  [for tile]\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2e902f024fa6f6f27b335c478d81bab0cb2c768",
      "tree": "dea9ad4bb8ce9cb51864817a1b39293c65f9c9e4",
      "parents": [
        "f9a00e8738c209d95493cf97d3a82ab2655892e5"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Mon Dec 17 16:01:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:17 2012 -0800"
      },
      "message": "trace: use kbasename()\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2fa72c8fa5d03c4e07894ccb9f0be72e8687a455",
      "tree": "d71a2c684e931d187901dbb8ddd926ebd93a46ba",
      "parents": [
        "afde3be121efcc658e26f8cc71ead04af96d38f9"
      ],
      "author": {
        "name": "Andrew Cooks",
        "email": "acooks@gmail.com",
        "time": "Mon Dec 17 15:59:56 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:13 2012 -0800"
      },
      "message": "printk: boot_delay should only affect output\n\nThe boot_delay parameter affects all printk(), even if the log level\nprevents visible output from the call.  It results in delays greater than\nthe user intended without purpose.\n\nThis patch changes the behaviour of boot_delay to only delay output.\n\nSigned-off-by: Andrew Cooks \u003cacooks@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0f34c400914f165b7b3812459be2d77b8aa1f1e4",
      "tree": "b45e4acaadd16362d08d107f24ac63b6e61e142c",
      "parents": [
        "2bf0a8f67fae9906c6497886203f6e5cb7168df6"
      ],
      "author": {
        "name": "Chuansheng Liu",
        "email": "chuansheng.liu@intel.com",
        "time": "Mon Dec 17 15:59:50 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:13 2012 -0800"
      },
      "message": "watchdog: store the watchdog sample period as a variable\n\nCurrently getting the sample period is always thru a complex\ncalculation: get_softlockup_thresh() * ((u64)NSEC_PER_SEC / 5).\n\nWe can store the sample period as a variable, and set it as __read_mostly\ntype.\n\nSigned-off-by: liu chuansheng \u003cchuansheng.liu@intel.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "965c8e59cfcf845ecde2265a1d1bfee5f011d302",
      "tree": "22758a99b4ecb475750966d5202200dc0e89876c",
      "parents": [
        "c0f041602c33bae10b8e321c49024490d03ced3d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Dec 17 15:59:39 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:12 2012 -0800"
      },
      "message": "lseek: the \"whence\" argument is called \"whence\"\n\nBut the kernel decided to call it \"origin\" instead.  Fix most of the\nsites.\n\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ec7d50f1ed2b072d23ce810f86df09ee0568d4b",
      "tree": "913675a8d7d167a29e5d9dac4f16b6dfa0746bb8",
      "parents": [
        "66d93341b507185d6934756fb6f6b69b42ff43e4"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "boyu.mt@taobao.com",
        "time": "Mon Dec 17 15:59:36 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:12 2012 -0800"
      },
      "message": "kernel: remove reference to feature-removal-schedule.txt\n\nIn commit 9c0ece069b32 (\"Get rid of Documentation/feature-removal.txt\"),\nLinus removed feature-removal-schedule.txt from Documentation, but there\nis still some reference to this file.  So remove them.\n\nSigned-off-by: Tao Ma \u003cboyu.mt@taobao.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a2b60b17b3e48a418695a94bd2420f6ab32e519",
      "tree": "54b7792fa68b8890f710fa6398b6ba8626a039a8",
      "parents": [
        "9228ff90387e276ad67b10c0eb525c9d6a57d5e9",
        "98f842e675f96ffac96e6c50315790912b2812be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 15:44:47 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 15:44:47 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace\n\nPull user namespace changes from Eric Biederman:\n \"While small this set of changes is very significant with respect to\n  containers in general and user namespaces in particular.  The user\n  space interface is now complete.\n\n  This set of changes adds support for unprivileged users to create user\n  namespaces and as a user namespace root to create other namespaces.\n  The tyranny of supporting suid root preventing unprivileged users from\n  using cool new kernel features is broken.\n\n  This set of changes completes the work on setns, adding support for\n  the pid, user, mount namespaces.\n\n  This set of changes includes a bunch of basic pid namespace\n  cleanups/simplifications.  Of particular significance is the rework of\n  the pid namespace cleanup so it no longer requires sending out\n  tendrils into all kinds of unexpected cleanup paths for operation.  At\n  least one case of broken error handling is fixed by this cleanup.\n\n  The files under /proc/\u003cpid\u003e/ns/ have been converted from regular files\n  to magic symlinks which prevents incorrect caching by the VFS,\n  ensuring the files always refer to the namespace the process is\n  currently using and ensuring that the ptrace_mayaccess permission\n  checks are always applied.\n\n  The files under /proc/\u003cpid\u003e/ns/ have been given stable inode numbers\n  so it is now possible to see if different processes share the same\n  namespaces.\n\n  Through the David Miller\u0027s net tree are changes to relax many of the\n  permission checks in the networking stack to allowing the user\n  namespace root to usefully use the networking stack.  Similar changes\n  for the mount namespace and the pid namespace are coming through my\n  tree.\n\n  Two small changes to add user namespace support were commited here adn\n  in David Miller\u0027s -net tree so that I could complete the work on the\n  /proc/\u003cpid\u003e/ns/ files in this tree.\n\n  Work remains to make it safe to build user namespaces and 9p, afs,\n  ceph, cifs, coda, gfs2, ncpfs, nfs, nfsd, ocfs2, and xfs so the\n  Kconfig guard remains in place preventing that user namespaces from\n  being built when any of those filesystems are enabled.\n\n  Future design work remains to allow root users outside of the initial\n  user namespace to mount more than just /proc and /sys.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (38 commits)\n  proc: Usable inode numbers for the namespace file descriptors.\n  proc: Fix the namespace inode permission checks.\n  proc: Generalize proc inode allocation\n  userns: Allow unprivilged mounts of proc and sysfs\n  userns: For /proc/self/{uid,gid}_map derive the lower userns from the struct file\n  procfs: Print task uids and gids in the userns that opened the proc file\n  userns: Implement unshare of the user namespace\n  userns: Implent proc namespace operations\n  userns: Kill task_user_ns\n  userns: Make create_new_namespaces take a user_ns parameter\n  userns: Allow unprivileged use of setns.\n  userns: Allow unprivileged users to create new namespaces\n  userns: Allow setting a userns mapping to your current uid.\n  userns: Allow chown and setgid preservation\n  userns: Allow unprivileged users to create user namespaces.\n  userns: Ignore suid and sgid on binaries if the uid or gid can not be mapped\n  userns: fix return value on mntns_install() failure\n  vfs: Allow unprivileged manipulation of the mount namespace.\n  vfs: Only support slave subtrees across different user namespaces\n  vfs: Add a user namespace reference from struct mnt_namespace\n  ...\n"
    },
    {
      "commit": "221392c3ad0432e39fd74a349364f66cb0ed78f6",
      "tree": "cc47a75ade22ee1e32da36c67f3dea2bb9a42393",
      "parents": [
        "a4f1de176614f634c367e5994a7bcc428c940df0"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Mon Dec 17 14:05:53 2012 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 08:25:50 2012 -0800"
      },
      "message": "sched: numa: Fix build error if CONFIG_NUMA_BALANCING \u0026\u0026 !CONFIG_TRANSPARENT_HUGEPAGE\n\nMichal Hocko reported that the following build error occurs if\nCONFIG_NUMA_BALANCING is set without THP support\n\n  kernel/sched/fair.c: In function ‘task_numa_work’:\n  kernel/sched/fair.c:932:55: error: call to ‘__build_bug_failed’ declared with attribute error: BUILD_BUG failed\n\nThe problem is that HPAGE_PMD_SHIFT triggers a BUILD_BUG() on\n!CONFIG_TRANSPARENT_HUGEPAGE. This patch addresses the problem.\n\nReported-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6133705494bb02953e1e2cc3018a4373981b3c97",
      "tree": "4c46ef0c3b1c6a3b07a7f98fda0873c4f201934c",
      "parents": [
        "ec8f02da9ea500474417d1d31fa3d46a562ab366"
      ],
      "author": {
        "name": "Nick Kossifidis",
        "email": "mickflemm@gmail.com",
        "time": "Sun Dec 16 22:18:11 2012 -0500"
      },
      "committer": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Sun Dec 16 22:18:11 2012 -0500"
      },
      "message": "random: Mix cputime from each thread that exits to the pool\n\nWhen a thread exits mix it\u0027s cputime (userspace + kernelspace) to the entropy pool.\n\nWe don\u0027t know how \"random\" this is, so we use add_device_randomness that doesn\u0027t mess\nwith entropy count.\n\nSigned-off-by: Nick Kossifidis \u003cmickflemm@gmail.com\u003e\nSigned-off-by: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\n"
    },
    {
      "commit": "2a74dbb9a86e8102dcd07d284135b4530a84826e",
      "tree": "a54403e312b6062dfb57bd904ba8b8ce3b11e720",
      "parents": [
        "770b6cb4d21fb3e3df2a7a51e186a3c14db1ec30",
        "e93072374112db9dc86635934ee761249be28370"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 15:40:50 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 15:40:50 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates from James Morris:\n \"A quiet cycle for the security subsystem with just a few maintenance\n  updates.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:\n  Smack: create a sysfs mount point for smackfs\n  Smack: use select not depends in Kconfig\n  Yama: remove locking from delete path\n  Yama: add RCU to drop read locking\n  drivers/char/tpm: remove tasklet and cleanup\n  KEYS: Use keyring_alloc() to create special keyrings\n  KEYS: Reduce initial permissions on keys\n  KEYS: Make the session and process keyrings per-thread\n  seccomp: Make syscall skipping and nr changes more consistent\n  key: Fix resource leak\n  keys: Fix unreachable code\n  KEYS: Add payload preparsing opportunity prior to key instantiate or update\n"
    },
    {
      "commit": "3d59eebc5e137bd89c6351e4c70e90ba1d0dc234",
      "tree": "b4ddfd0b057454a7437a3b4e3074a3b8b4b03817",
      "parents": [
        "11520e5e7c1855fc3bf202bb3be35a39d9efa034",
        "4fc3f1d66b1ef0d7b8dc11f4ff1cc510f78b37d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 14:33:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 15:18:08 2012 -0800"
      },
      "message": "Merge tag \u0027balancenuma-v11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mel/linux-balancenuma\n\nPull Automatic NUMA Balancing bare-bones from Mel Gorman:\n \"There are three implementations for NUMA balancing, this tree\n  (balancenuma), numacore which has been developed in tip/master and\n  autonuma which is in aa.git.\n\n  In almost all respects balancenuma is the dumbest of the three because\n  its main impact is on the VM side with no attempt to be smart about\n  scheduling.  In the interest of getting the ball rolling, it would be\n  desirable to see this much merged for 3.8 with the view to building\n  scheduler smarts on top and adapting the VM where required for 3.9.\n\n  The most recent set of comparisons available from different people are\n\n    mel:    https://lkml.org/lkml/2012/12/9/108\n    mingo:  https://lkml.org/lkml/2012/12/7/331\n    tglx:   https://lkml.org/lkml/2012/12/10/437\n    srikar: https://lkml.org/lkml/2012/12/10/397\n\n  The results are a mixed bag.  In my own tests, balancenuma does\n  reasonably well.  It\u0027s dumb as rocks and does not regress against\n  mainline.  On the other hand, Ingo\u0027s tests shows that balancenuma is\n  incapable of converging for this workloads driven by perf which is bad\n  but is potentially explained by the lack of scheduler smarts.  Thomas\u0027\n  results show balancenuma improves on mainline but falls far short of\n  numacore or autonuma.  Srikar\u0027s results indicate we all suffer on a\n  large machine with imbalanced node sizes.\n\n  My own testing showed that recent numacore results have improved\n  dramatically, particularly in the last week but not universally.\n  We\u0027ve butted heads heavily on system CPU usage and high levels of\n  migration even when it shows that overall performance is better.\n  There are also cases where it regresses.  Of interest is that for\n  specjbb in some configurations it will regress for lower numbers of\n  warehouses and show gains for higher numbers which is not reported by\n  the tool by default and sometimes missed in treports.  Recently I\n  reported for numacore that the JVM was crashing with\n  NullPointerExceptions but currently it\u0027s unclear what the source of\n  this problem is.  Initially I thought it was in how numacore batch\n  handles PTEs but I\u0027m no longer think this is the case.  It\u0027s possible\n  numacore is just able to trigger it due to higher rates of migration.\n\n  These reports were quite late in the cycle so I/we would like to start\n  with this tree as it contains much of the code we can agree on and has\n  not changed significantly over the last 2-3 weeks.\"\n\n* tag \u0027balancenuma-v11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mel/linux-balancenuma: (50 commits)\n  mm/rmap, migration: Make rmap_walk_anon() and try_to_unmap_anon() more scalable\n  mm/rmap: Convert the struct anon_vma::mutex to an rwsem\n  mm: migrate: Account a transhuge page properly when rate limiting\n  mm: numa: Account for failed allocations and isolations as migration failures\n  mm: numa: Add THP migration for the NUMA working set scanning fault case build fix\n  mm: numa: Add THP migration for the NUMA working set scanning fault case.\n  mm: sched: numa: Delay PTE scanning until a task is scheduled on a new node\n  mm: sched: numa: Control enabling and disabling of NUMA balancing if !SCHED_DEBUG\n  mm: sched: numa: Control enabling and disabling of NUMA balancing\n  mm: sched: Adapt the scanning rate if a NUMA hinting fault does not migrate\n  mm: numa: Use a two-stage filter to restrict pages being migrated for unlikely task\u003c-\u003enode relationships\n  mm: numa: migrate: Set last_nid on newly allocated page\n  mm: numa: split_huge_page: Transfer last_nid on tail page\n  mm: numa: Introduce last_nid to the page frame\n  sched: numa: Slowly increase the scanning period as NUMA faults are handled\n  mm: numa: Rate limit setting of pte_numa if node is saturated\n  mm: numa: Rate limit the amount of memory that is migrated between nodes\n  mm: numa: Structures for Migrate On Fault per NUMA migration rate limiting\n  mm: numa: Migrate pages handled during a pmd_numa hinting fault\n  mm: numa: Migrate on reference policy\n  ...\n"
    },
    {
      "commit": "1ed55eac3b1fc30b29cdb52251e0f13b24fc344c",
      "tree": "b7a4c67f2e29f8aa418708c5da871e64c511f3ff",
      "parents": [
        "08242bc2210938761230f79c5288dbcf72e94808",
        "a2c0911c09190125f52c9941b9d187f601c2f7be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 12:35:19 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 12:35:19 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto update from Herbert Xu:\n\n - Added aesni/avx/x86_64 implementations for camellia.\n\n - Optimised AVX code for cast5/serpent/twofish/cast6.\n\n - Fixed vmac bug with unaligned input.\n\n - Allow compression algorithms in FIPS mode.\n\n - Optimised crc32c implementation for Intel.\n\n - Misc fixes.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (32 commits)\n  crypto: caam - Updated SEC-4.0 device tree binding for ERA information.\n  crypto: testmgr - remove superfluous initializers for xts(aes)\n  crypto: testmgr - allow compression algs in fips mode\n  crypto: testmgr - add larger crc32c test vector to test FPU path in crc32c_intel\n  crypto: testmgr - clean alg_test_null entries in alg_test_descs[]\n  crypto: testmgr - remove fips_allowed flag from camellia-aesni null-tests\n  crypto: cast5/cast6 - move lookup tables to shared module\n  padata: use __this_cpu_read per-cpu helper\n  crypto: s5p-sss - Fix compilation error\n  crypto: picoxcell - Add terminating entry for platform_device_id table\n  crypto: omap-aes - select BLKCIPHER2\n  crypto: camellia - add AES-NI/AVX/x86_64 assembler implementation of camellia cipher\n  crypto: camellia-x86_64 - share common functions and move structures and function definitions to header file\n  crypto: tcrypt - add async speed test for camellia cipher\n  crypto: tegra-aes - fix error-valued pointer dereference\n  crypto: tegra - fix missing unlock on error case\n  crypto: cast5/avx - avoid using temporary stack buffers\n  crypto: serpent/avx - avoid using temporary stack buffers\n  crypto: twofish/avx - avoid using temporary stack buffers\n  crypto: cast6/avx - avoid using temporary stack buffers\n  ...\n"
    },
    {
      "commit": "5155040ed349950e16c093ba8e65ad534994df2a",
      "tree": "2b58aab3a6c1a6f42c0716e0c4bb60e86188bb80",
      "parents": [
        "aa6d054e5ce94720797ca260392a74dbced56412"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Dec 09 17:19:52 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 14 18:36:36 2012 -0800"
      },
      "message": "userns: Fix typo in description of the limitation of userns_install\n\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "aa6d054e5ce94720797ca260392a74dbced56412",
      "tree": "4e7093d4e288238f0514187e87b13738504a21df",
      "parents": [
        "5e4a08476b50fa39210fca82e03325cc46b9c235"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 14 08:50:54 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 14 18:36:26 2012 -0800"
      },
      "message": "userns: Add a more complete capability subset test to commit_creds\n\nWhen unsharing a user namespace we reduce our credentials to just what\ncan be done in that user namespace.  This is a subset of the credentials\nwe previously had.  Teach commit_creds to recognize this is a subset\nof the credentials we have had before and don\u0027t clear the dumpability flag.\n\nThis allows an unprivileged  program to do:\nunshare(CLONE_NEWUSER);\nfd \u003d open(\"/proc/self/uid_map\", O_RDWR);\n\nWhere previously opening the uid_map writable would fail because\nthe the task had been made non-dumpable.\n\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "5e4a08476b50fa39210fca82e03325cc46b9c235",
      "tree": "fb3a3c6b4c3f613abf354adefcff8a74051acdce",
      "parents": [
        "520d9eabce18edfef76a60b7b839d54facafe1f9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 14 07:55:36 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 14 16:12:03 2012 -0800"
      },
      "message": "userns: Require CAP_SYS_ADMIN for most uses of setns.\n\nAndy Lutomirski \u003cluto@amacapital.net\u003e found a nasty little bug in\nthe permissions of setns.  With unprivileged user namespaces it\nbecame possible to create new namespaces without privilege.\n\nHowever the setns calls were relaxed to only require CAP_SYS_ADMIN in\nthe user nameapce of the targed namespace.\n\nWhich made the following nasty sequence possible.\n\npid \u003d clone(CLONE_NEWUSER | CLONE_NEWNS);\nif (pid \u003d\u003d 0) { /* child */\n\tsystem(\"mount --bind /home/me/passwd /etc/passwd\");\n}\nelse if (pid !\u003d 0) { /* parent */\n\tchar path[PATH_MAX];\n\tsnprintf(path, sizeof(path), \"/proc/%u/ns/mnt\");\n\tfd \u003d open(path, O_RDONLY);\n\tsetns(fd, 0);\n\tsystem(\"su -\");\n}\n\nPrevent this possibility by requiring CAP_SYS_ADMIN\nin the current user namespace when joing all but the user namespace.\n\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "17bc14b767cf0692420c43dbe5310ae98a5a7836",
      "tree": "9b0f339e5d9769a51acdeb7a246f6e7522efa966",
      "parents": [
        "7313264b899bbf3988841296265a6e0e8a7b6521"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 07:20:43 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 07:20:43 2012 -0800"
      },
      "message": "Revert \"sched: Update_cfs_shares at period edge\"\n\nThis reverts commit f269ae0469fc882332bdfb5db15d3c1315fe2a10.\n\nIt turns out it causes a very noticeable interactivity regression with\nCONFIG_SCHED_AUTOGROUP (test-case: \"make -j32\" of the kernel in a\nterminal window, while scrolling in a browser - the autogrouping means\nthat the two end up in separate cgroups, and the browser should be\nsmooth as silk despite the high load).\n\nSays Paul Turner:\n \"It seems that the update-throttling on the wake-side is reducing the\n  interactive tasks\u0027 ability to preempt.  While I suspect the right\n  longer term answer here is force these updates only in the\n  cross-cgroup case; this is less trivial.  For this release I believe\n  the right answer is either going to be a revert or restore the updates\n  on the enqueue-side.\"\n\nReported-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nBisected-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Paul Turner \u003cpjt@google.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e10e1774efbdaec54698454200619a03a01e1d64",
      "tree": "1c2261c2dda60b6d0e3b279e0f317d7b61f93849",
      "parents": [
        "919aa45e43a84d40c27c83f6117cfa6542cee14e"
      ],
      "author": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Dec 11 12:26:22 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:06:45 2012 +1030"
      },
      "message": "MODSIGN: Fix kbuild output when using default extra_certificates\n\nReported-by: Peter Foley \u003cpefoley2@verizon.net\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\nAcked-by: Peter Foley \u003cpefoley2@verizon.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "919aa45e43a84d40c27c83f6117cfa6542cee14e",
      "tree": "5da5152ca40016670a066abd948b0960da2c0d4b",
      "parents": [
        "82fab442f5322b016f72891c0db2436c6a6c20b7"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Dec 11 11:37:13 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:06:44 2012 +1030"
      },
      "message": "MODSIGN: Avoid using .incbin in C source\n\nUsing the asm .incbin statement in C sources breaks any gcc wrapper which\nassumes that preprocessed C source is self-contained. Use a separate .S\nfile to include the siging key and certificate.\n\n[ This means we no longer need SYMBOL_PREFIX which is defined in kernel.h\n  from cbdbf2abb7844548a7d7a6a2ae7af6b6fbcea401, so I removed it -- RR ]\n\nTested-by: Michal Marek \u003cmmarek@suse.cz\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\n"
    },
    {
      "commit": "82fab442f5322b016f72891c0db2436c6a6c20b7",
      "tree": "1b55bbf22569cf721c4bc13dc8f96652bad50a26",
      "parents": [
        "54523ec71f8ce99accae97c74152f14f261f7e18"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 11 09:38:33 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:06:43 2012 +1030"
      },
      "message": "modules: don\u0027t hand 0 to vmalloc.\n\nIn commit d0a21265dfb5fa8a David Rientjes unified various archs\u0027\nmodule_alloc implementation (including x86) and removed the graduitous\nshortcut for size \u003d\u003d 0.\n\nThen, in commit de7d2b567d040e3b, Joe Perches added a warning for\nzero-length vmallocs, which can happen without kallsyms on modules\nwith no init sections (eg. zlib_deflate).\n\nFix this once and for all; the module code has to handle zero length\nanyway, so get it right at the caller and remove the now-gratuitous\nchecks within the arch-specific module_alloc implementations.\n\nBugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\u003d42608\nReported-by: Conrad Kostecki \u003cConiKost@gmx.de\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "54523ec71f8ce99accae97c74152f14f261f7e18",
      "tree": "0bd21d6d928da01bff4dac47ae6fe057a7541d7d",
      "parents": [
        "99cca91e370ab9224755365dda98b78eb5a5417f"
      ],
      "author": {
        "name": "Satoru Takeuchi",
        "email": "takeuchi_satoru@jp.fujitsu.com",
        "time": "Wed Dec 05 12:29:04 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:06:43 2012 +1030"
      },
      "message": "module: Remove a extra null character at the top of module-\u003estrtab.\n\nThere is a extra null character(\u0027\\0\u0027) at the top of module-\u003estrtab for\neach module. Commit 59ef28b introduced this bug and this patch fixes it.\n\nLive dump log of the current linus git kernel(HEAD is 2844a4870):\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\ncrash\u003e mod | grep loop\nffffffffa01db0a0  loop             16689  (not loaded)  [CONFIG_KALLSYMS]\ncrash\u003e module.core_symtab ffffffffa01db0a0\n  core_symtab \u003d 0xffffffffa01db320crash\u003e rd 0xffffffffa01db320 12\nffffffffa01db320:  0000005500000001 0000000000000000   ....U...........\nffffffffa01db330:  0000000000000000 0002007400000002   ............t...\nffffffffa01db340:  ffffffffa01d8000 0000000000000038   ........8.......\nffffffffa01db350:  001a00640000000e ffffffffa01daeb0   ....d...........\nffffffffa01db360:  00000000000000a0 0002007400000019   ............t...\nffffffffa01db370:  ffffffffa01d8068 000000000000001b   h...............\ncrash\u003e module.core_strtab ffffffffa01db0a0\n  core_strtab \u003d 0xffffffffa01dbb30 \"\"\ncrash\u003e rd 0xffffffffa01dbb30 4\nffffffffa01dbb30:  615f70616d6b0000 66780063696d6f74   ..kmap_atomic.xf\nffffffffa01dbb40:  73636e75665f7265 72665f646e696600   er_funcs.find_fr\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nWe expect Just first one byte of \u0027\\0\u0027, but actually first two bytes\nare \u0027\\0\u0027. Here is The relationship between symtab and strtab.\n\n\tsymtab_idx\tstrtab_idx\tsymbol\n\t-----------------------------------------------\n\t0\t\t0x1\t\t\"\\0\" # startab_idx should be 0\n\t1\t\t0x2\t\t\"kmap_atomic\"\n\t2\t\t0xe\t\t\"xfer_funcs\"\n\t3\t\t0x19\t\t\"find_fr...\"\n\nBy applying this patch, it becomes as follows.\n\n\tsymtab_idx\tstrtab_idx\tsymbol\n\t-----------------------------------------------\n\t0\t\t0x0\t\t\"\\0\"\t# extra byte is removed\n\t1\t\t0x1\t\t\"kmap_atomic\"\n\t2\t\t0xd\t\t\"xfer_funcs\"\n\t3\t\t0x18\t\t\"find_fr...\"\n\nSigned-off-by: Satoru Takeuchi \u003ctakeuchi_satoru@jp.fujitsu.com\u003e\nCc: Masaki Kimura \u003cmasaki.kimura.kz@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "2e72d51b4ac32989496870cd8171b3682fea1839",
      "tree": "b8190d17aa5d59508f8c979ce0160f21bef89500",
      "parents": [
        "2f3238aebedb243804f58d62d57244edec4149b2"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Tue Oct 16 07:32:07 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:05:24 2012 +1030"
      },
      "message": "security: introduce kernel_module_from_file hook\n\nNow that kernel module origins can be reasoned about, provide a hook to\nthe LSMs to make policy decisions about the module file. This will let\nChrome OS enforce that loadable kernel modules can only come from its\nread-only hash-verified root filesystem. Other LSMs can, for example,\nread extended attributes for signatures, etc.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Mimi Zohar \u003czohar@us.ibm.com\u003e\nAcked-by: James Morris \u003cjames.l.morris@oracle.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "2f3238aebedb243804f58d62d57244edec4149b2",
      "tree": "984f7f4a6b2225649120c55a7b89e65e9de55ee2",
      "parents": [
        "34e1169d996ab148490c01b65b4ee371cf8ffba2"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Oct 22 18:09:41 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:05:23 2012 +1030"
      },
      "message": "module: add flags arg to sys_finit_module()\n\nThanks to Michael Kerrisk for keeping us honest.  These flags are actually\nuseful for eliminating the only case where kmod has to mangle a module\u0027s\ninternals: for overriding module versioning.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\n"
    },
    {
      "commit": "34e1169d996ab148490c01b65b4ee371cf8ffba2",
      "tree": "3380af46682ce4396c1524bdba8badcab8a51046",
      "parents": [
        "84ecfd15f5547c992c901df6ec14b4d507eb2c6e"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Tue Oct 16 07:31:07 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:05:22 2012 +1030"
      },
      "message": "module: add syscall to load module from fd\n\nAs part of the effort to create a stronger boundary between root and\nkernel, Chrome OS wants to be able to enforce that kernel modules are\nbeing loaded only from our read-only crypto-hash verified (dm_verity)\nroot filesystem. Since the init_module syscall hands the kernel a module\nas a memory blob, no reasoning about the origin of the blob can be made.\n\nEarlier proposals for appending signatures to kernel modules would not be\nuseful in Chrome OS, since it would involve adding an additional set of\nkeys to our kernel and builds for no good reason: we already trust the\ncontents of our root filesystem. We don\u0027t need to verify those kernel\nmodules a second time. Having to do signature checking on module loading\nwould slow us down and be redundant. All we need to know is where a\nmodule is coming from so we can say yes/no to loading it.\n\nIf a file descriptor is used as the source of a kernel module, many more\nthings can be reasoned about. In Chrome OS\u0027s case, we could enforce that\nthe module lives on the filesystem we expect it to live on.  In the case\nof IMA (or other LSMs), it would be possible, for example, to examine\nextended attributes that may contain signatures over the contents of\nthe module.\n\nThis introduces a new syscall (on x86), similar to init_module, that has\nonly two arguments. The first argument is used as a file descriptor to\nthe module and the second argument is a pointer to the NULL terminated\nstring of module arguments.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (merge fixes)\n"
    },
    {
      "commit": "66cdd0ceaf65a18996f561b770eedde1d123b019",
      "tree": "4892eaa422d366fce5d1e866ff1fe0988af95569",
      "parents": [
        "896ea17d3da5f44b2625c9cda9874d7dfe447393",
        "58b7825bc324da55415034a9f6ca5d716b8fd898"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 15:31:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 15:31:08 2012 -0800"
      },
      "message": "Merge tag \u0027kvm-3.8-1\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\nPull KVM updates from Marcelo Tosatti:\n \"Considerable KVM/PPC work, x86 kvmclock vsyscall support,\n  IA32_TSC_ADJUST MSR emulation, amongst others.\"\n\nFix up trivial conflict in kernel/sched/core.c due to cross-cpu\nmigration notifier added next to rq migration call-back.\n\n* tag \u0027kvm-3.8-1\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (156 commits)\n  KVM: emulator: fix real mode segment checks in address linearization\n  VMX: remove unneeded enable_unrestricted_guest check\n  KVM: VMX: fix DPL during entry to protected mode\n  x86/kexec: crash_vmclear_local_vmcss needs __rcu\n  kvm: Fix irqfd resampler list walk\n  KVM: VMX: provide the vmclear function and a bitmap to support VMCLEAR in kdump\n  x86/kexec: VMCLEAR VMCSs loaded on all cpus if necessary\n  KVM: MMU: optimize for set_spte\n  KVM: PPC: booke: Get/set guest EPCR register using ONE_REG interface\n  KVM: PPC: bookehv: Add EPCR support in mtspr/mfspr emulation\n  KVM: PPC: bookehv: Add guest computation mode for irq delivery\n  KVM: PPC: Make EPCR a valid field for booke64 and bookehv\n  KVM: PPC: booke: Extend MAS2 EPN mask for 64-bit\n  KVM: PPC: e500: Mask MAS2 EPN high 32-bits in 32/64 tlbwe emulation\n  KVM: PPC: Mask ea\u0027s high 32-bits in 32/64 instr emulation\n  KVM: PPC: e500: Add emulation helper for getting instruction ea\n  KVM: PPC: bookehv64: Add support for interrupt handling\n  KVM: PPC: bookehv: Remove GET_VCPU macro from exception handler\n  KVM: PPC: booke: Fix get_tb() compile error on 64-bit\n  KVM: PPC: e500: Silence bogus GCC warning in tlb code\n  ...\n"
    },
    {
      "commit": "f6e858a00af788bab0fd4c0b7f5cd788000edc18",
      "tree": "f9403ca3671be9821dbf83e726e61dbe75fbca6b",
      "parents": [
        "193c0d682525987db59ac3a24531a77e4947aa95",
        "98870901cce098bbe94d90d2c41d8d1fa8d94392"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 13:11:15 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 13:11:15 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge misc VM changes from Andrew Morton:\n \"The rest of most-of-MM.  The other MM bits await a slab merge.\n\n  This patch includes the addition of a huge zero_page.  Not a\n  performance boost but it an save large amounts of physical memory in\n  some situations.\n\n  Also a bunch of Fujitsu engineers are working on memory hotplug.\n  Which, as it turns out, was badly broken.  About half of their patches\n  are included here; the remainder are 3.8 material.\"\n\nHowever, this merge disables CONFIG_MOVABLE_NODE, which was totally\nbroken.  We don\u0027t add new features with \"default y\", nor do we add\nKconfig questions that are incomprehensible to most people without any\nhelp text.  Does the feature even make sense without compaction or\nmemory hotplug?\n\n* akpm: (54 commits)\n  mm/bootmem.c: remove unused wrapper function reserve_bootmem_generic()\n  mm/memory.c: remove unused code from do_wp_page()\n  asm-generic, mm: pgtable: consolidate zero page helpers\n  mm/hugetlb.c: fix warning on freeing hwpoisoned hugepage\n  hwpoison, hugetlbfs: fix RSS-counter warning\n  hwpoison, hugetlbfs: fix \"bad pmd\" warning in unmapping hwpoisoned hugepage\n  mm: protect against concurrent vma expansion\n  memcg: do not check for mm in __mem_cgroup_count_vm_event\n  tmpfs: support SEEK_DATA and SEEK_HOLE (reprise)\n  mm: provide more accurate estimation of pages occupied by memmap\n  fs/buffer.c: remove redundant initialization in alloc_page_buffers()\n  fs/buffer.c: do not inline exported function\n  writeback: fix a typo in comment\n  mm: introduce new field \"managed_pages\" to struct zone\n  mm, oom: remove statically defined arch functions of same name\n  mm, oom: remove redundant sleep in pagefault oom handler\n  mm, oom: cleanup pagefault oom handler\n  memory_hotplug: allow online/offline memory to result movable node\n  numa: add CONFIG_MOVABLE_NODE for movable-dedicated node\n  mm, memcg: avoid unnecessary function call when memcg is disabled\n  ...\n"
    }
  ],
  "next": "a2013a13e68354e0c8f3696b69701803e13fb737"
}
