)]}'
{
  "log": [
    {
      "commit": "2ab3f29dddfb444c9fcc0a2f3a56ed4bdba41969",
      "tree": "b1999129c781fbd524c921c4ebfde029a48cca17",
      "parents": [
        "b1e4279e4ef5549bf6ebf8f6f17dd26f0af8e8a2",
        "12176503366885edd542389eed3aaf94be163fdb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 25 16:05:57 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 25 16:05:57 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s fixes)\n\nMerge misc fixes from Andrew Morton:\n \"18 total.  15 fixes and some updates to a device_cgroup patchset which\n  bring it up to date with the version which I should have merged in the\n  first place.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (18 patches)\n  fs/compat_ioctl.c: VIDEO_SET_SPU_PALETTE missing error check\n  gen_init_cpio: avoid stack overflow when expanding\n  drivers/rtc/rtc-imxdi.c: add missing spin lock initialization\n  mm, numa: avoid setting zone_reclaim_mode unless a node is sufficiently distant\n  pidns: limit the nesting depth of pid namespaces\n  drivers/dma/dw_dmac: make driver\u0027s endianness configurable\n  mm/mmu_notifier: allocate mmu_notifier in advance\n  tools/testing/selftests/epoll/test_epoll.c: fix build\n  UAPI: fix tools/vm/page-types.c\n  mm/page_alloc.c:alloc_contig_range(): return early for err path\n  rbtree: include linux/compiler.h for definition of __always_inline\n  genalloc: stop crashing the system when destroying a pool\n  backlight: ili9320: add missing SPI dependency\n  device_cgroup: add proper checking when changing default behavior\n  device_cgroup: stop using simple_strtoul()\n  device_cgroup: rename deny_all to behavior\n  cgroup: fix invalid rcu dereference\n  mm: fix XFS oops due to dirty pages without buffers on s390\n"
    },
    {
      "commit": "2008713c7174e5c0f207bac684c6df0939047009",
      "tree": "0442715e0de7522c33e9f4bc413e32b9fc6202a5",
      "parents": [
        "6bb1e3819c08d640bc7e64fc522d7d8b1bc4d0b9"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Oct 24 14:11:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 25 16:00:53 2012 -0700"
      },
      "message": "Makefile: Documentation for external tool should be correct\n\nIf one includes documentation for an external tool, it should be\ncorrect.  This is not:\n\n1. Overriding the input to rngd should typically be neither\n   necessary nor desired.  This is especially so since newer\n   versions of rngd support a number of different *types* of sources.\n2. The default kernel-exported device is called /dev/hwrng not\n   /dev/hwrandom nor /dev/hw_random (both of which were used in the\n   past; however, kernel and udev seem to have converged on\n   /dev/hwrng.)\n\nOverall it is better if the documentation for rngd is kept with rngd\nrather than in a kernel Makefile.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f2302505775fd13ba93f034206f1e2a587017929",
      "tree": "0397e3cbf7556e93618ed7ad7316578049707ca1",
      "parents": [
        "d5ea7b5ec1ee4dac868143806c0bd94855754677"
      ],
      "author": {
        "name": "Andrew Vagin",
        "email": "avagin@openvz.org",
        "time": "Thu Oct 25 13:38:07 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 25 14:37:53 2012 -0700"
      },
      "message": "pidns: limit the nesting depth of pid namespaces\n\n\u0027struct pid\u0027 is a \"variable sized struct\" - a header with an array of\nupids at the end.\n\nThe size of the array depends on a level (depth) of pid namespaces.  Now a\nlevel of pidns is not limited, so \u0027struct pid\u0027 can be more than one page.\n\nLooks reasonable, that it should be less than a page.  MAX_PIS_NS_LEVEL is\nnot calculated from PAGE_SIZE, because in this case it depends on\narchitectures, config options and it will be reduced, if someone adds a\nnew fields in struct pid or struct upid.\n\nI suggest to set MAX_PIS_NS_LEVEL \u003d 32, because it saves ability to expand\n\"struct pid\" and it\u0027s more than enough for all known for me use-cases.\nWhen someone finds a reasonable use case, we can add a config option or a\nsysctl parameter.\n\nIn addition it will reduce the effect of another problem, when we have\nmany nested namespaces and the oldest one starts dying.\nzap_pid_ns_processe will be called for each namespace and find_vpid will\nbe called for each process in a namespace.  find_vpid will be called\nminimum max_level^2 / 2 times.  The reason of that is that when we found a\nbit in pidmap, we can\u0027t determine this pidns is top for this process or it\nisn\u0027t.\n\nvpid is a heavy operation, so a fork bomb, which create many nested\nnamespace, can make a system inaccessible for a long time.  For example my\nsystem becomes inaccessible for a few minutes with 4000 processes.\n\n[akpm@linux-foundation.org: return -EINVAL in response to excessive nesting, not -ENOMEM]\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cbb525b447996f5d5702f7f2d7073f395fadcfe1",
      "tree": "a4a8db1a3223b7410a25c52535ceaa4c52d443c1",
      "parents": [
        "d579a35d0e488770ec6fbe0ce5efe8a797cada2f",
        "d87838321124061f6c935069d97f37010fa417e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 24 16:35:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 24 16:35:13 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.7-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup fixes from Tejun Heo:\n \"This pull request contains three fixes.\n\n  Two are reverts of task_lock() removal in cgroup fork path.  The\n  optimizations incorrectly assumed that threadgroup_lock can protect\n  process forks (as opposed to thread creations) too.  Further cleanup\n  of cgroup fork path is scheduled.\n\n  The third fixes cgroup emptiness notification loss.\"\n\n* \u0027for-3.7-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  Revert \"cgroup: Remove task_lock() from cgroup_post_fork()\"\n  Revert \"cgroup: Drop task_lock(parent) on cgroup_fork()\"\n  cgroup: notify_on_release may not be triggered in some cases\n"
    },
    {
      "commit": "d579a35d0e488770ec6fbe0ce5efe8a797cada2f",
      "tree": "f556217c23857ed111240f03e599ff9c7d6e74f0",
      "parents": [
        "0e9e3e306c7e472bdcffa34c4c4584301eda03b3",
        "c0158ca64da5732dfb86a3f28944e9626776692f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 24 16:33:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 24 16:33:22 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.7-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\nPull workqueue fix from Tejun Heo:\n \"This pull request contains one patch from Dan Magenheimer to fix\n  cancel_delayed_work() regression introduced by its reimplementation\n  using try_to_grab_pending().  The reimplementation made it incorrectly\n  return %true when the work item is idle.\n\n  There aren\u0027t too many consumers of the return value but it broke at\n  least ramster.\"\n\n* \u0027for-3.7-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: cancel_delayed_work() should return %false if work item is idle\n"
    },
    {
      "commit": "c0158ca64da5732dfb86a3f28944e9626776692f",
      "tree": "2ce9ff8057b9273905424b2932b35a080cfdbf38",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Dan Magenheimer",
        "email": "dan.magenheimer@oracle.com",
        "time": "Thu Oct 18 16:31:37 2012 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Oct 24 12:38:16 2012 -0700"
      },
      "message": "workqueue: cancel_delayed_work() should return %false if work item is idle\n\n57b30ae77b (\"workqueue: reimplement cancel_delayed_work() using\ntry_to_grab_pending()\") made cancel_delayed_work() always return %true\nunless someone else is also trying to cancel the work item, which is\nbroken - if the target work item is idle, the return value should be\n%false.\n\ntry_to_grab_pending() indicates that the target work item was idle by\nzero return value.  Use it for return.  Note that this brings\ncancel_delayed_work() in line with __cancel_work_timer() in return\nvalue handling.\n\nSigned-off-by: Dan Magenheimer \u003cdan.magenheimer@oracle.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nLKML-Reference: \u003c444a6439-b1a4-4740-9e7e-bc37267cfe73@default\u003e\n"
    },
    {
      "commit": "e17b1315832b97700502200f0a3dde3ac0fbc839",
      "tree": "e5a9bf48b596f327f303539b264584c7fd5ebca4",
      "parents": [
        "684baeb1d78ac478a8e5f00aa9ab0ce0837f2a91",
        "ef8ff74ed8dd9d4b3ba8cb9f2fc927a27c697a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 24 04:07:51 2012 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 24 04:07:51 2012 +0300"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf fixes from Ingo Molnar:\n \"Most of these are uprobes race fixes from Oleg, and their preparatory\n  cleanups.  (It\u0027s larger than what I\u0027d normally send for an -rc kernel,\n  but they looked significant enough to not delay them.)\n\n  There\u0027s also an oprofile fix and an uncore PMU fix.\"\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (22 commits)\n  perf/x86: Disable uncore on virtualized CPUs\n  oprofile, x86: Fix wrapping bug in op_x86_get_ctrl()\n  ring-buffer: Check for uninitialized cpu buffer before resizing\n  uprobes: Fix the racy uprobe-\u003eflags manipulation\n  uprobes: Fix prepare_uprobe() race with itself\n  uprobes: Introduce prepare_uprobe()\n  uprobes: Fix handle_swbp() vs unregister() + register() race\n  uprobes: Do not delete uprobe if uprobe_unregister() fails\n  uprobes: Don\u0027t return success if alloc_uprobe() fails\n  uprobes/x86: Only rep+nop can be emulated correctly\n  uprobes: Simplify is_swbp_at_addr(), remove stale comments\n  uprobes: Kill set_orig_insn()-\u003eis_swbp_at_addr()\n  uprobes: Introduce copy_opcode(), kill read_opcode()\n  uprobes: Kill set_swbp()-\u003eis_swbp_at_addr()\n  uprobes: Restrict valid_vma(false) to skip VM_SHARED vmas\n  uprobes: Change valid_vma() to demand VM_MAYEXEC rather than VM_EXEC\n  uprobes: Change write_opcode() to use FOLL_FORCE\n  uprobes: Move clear_thread_flag(TIF_UPROBE) to uprobe_notify_resume()\n  uprobes: Kill UTASK_BP_HIT state\n  uprobes: Fix UPROBE_SKIP_SSTEP checks in handle_swbp()\n  ...\n"
    },
    {
      "commit": "0390c8835690506802fd5d54ea5444f0b9b1708b",
      "tree": "189107b966d635ff78a652a860bacde25a3f8503",
      "parents": [
        "4fe7e866a7d43479ac8d8a610023a9c9275f488f"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Oct 20 18:59:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 22 08:56:34 2012 +0300"
      },
      "message": "module_signing: fix printk format warning\n\nFix the warning:\n\n  kernel/module_signing.c:195:2: warning: format \u0027%lu\u0027 expects type \u0027long unsigned int\u0027, but argument 3 has type \u0027size_t\u0027\n\nby using the proper \u0027z\u0027 modifier for printing a size_t.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ef8ff74ed8dd9d4b3ba8cb9f2fc927a27c697a8b",
      "tree": "0c000fb23d1c40545093a8042b7a98ea11b0e0e0",
      "parents": [
        "f38787f4f921222d080d976ef59210ce3c6c6cb4",
        "8e49f418c9632790bf456634742d34d97120a784"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sun Oct 21 19:53:34 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sun Oct 21 19:53:34 2012 +0200"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace into perf/urgent\n\nPull ftrace ring-buffer resizing fix from Steve Rostedt.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f38787f4f921222d080d976ef59210ce3c6c6cb4",
      "tree": "55e643bc1e5b066f04323a4054fdc814726221be",
      "parents": [
        "957b9095ed296311b36d26e4316d7f637351ac57",
        "71434f2fcba5c22d6e0d51878ba8e241a5dea5fb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sun Oct 21 18:18:17 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sun Oct 21 18:18:17 2012 +0200"
      },
      "message": "Merge branch \u0027uprobes/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc into perf/urgent\n\nPull various uprobes bugfixes from Oleg Nesterov - mostly race and\nfailure path fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "31fd84b95eb211d5db460a1dda85e004800a7b52",
      "tree": "ff1a3c181f16696c4b2d1059bd9f70b6d5cbda13",
      "parents": [
        "8c1bee685e6e9e18ed28cba32f0cec0d2e4effee"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Fri Oct 19 18:45:53 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 19 18:51:17 2012 -0700"
      },
      "message": "use clamp_t in UNAME26 fix\n\nThe min/max call needed to have explicit types on some architectures\n(e.g. mn10300). Use clamp_t instead to avoid the warning:\n\n  kernel/sys.c: In function \u0027override_release\u0027:\n  kernel/sys.c:1287:10: warning: comparison of distinct pointer types lacks a cast [enabled by default]\n\nReported-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "caabe240574aec05b2f5667414ce80f9075c2ba1",
      "tree": "d92bf96b009bd0b0caec44c21348812b06805909",
      "parents": [
        "b6bb324dbddd704b4b9a85971e1f7ae79abb2e1d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat Oct 20 01:19:29 2012 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 19 17:30:40 2012 -0700"
      },
      "message": "MODSIGN: Move the magic string to the end of a module and eliminate the search\n\nEmit the magic string that indicates a module has a signature after the\nsignature data instead of before it.  This allows module_sig_check() to\nbe made simpler and faster by the elimination of the search for the\nmagic string.  Instead we just need to do a single memcmp().\n\nThis works because at the end of the signature data there is the\nfixed-length signature information block.  This block then falls\nimmediately prior to the magic number.\n\nFrom the contents of the information block, it is trivial to calculate\nthe size of the signature data and thus the size of the actual module\ndata.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d87838321124061f6c935069d97f37010fa417e6",
      "tree": "825e291d0ad7bdc7e7eb68e4bb829121de2586bc",
      "parents": [
        "9bb71308b8133d643648776243e4d5599b1c193d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Oct 18 17:40:30 2012 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Oct 19 14:09:35 2012 -0700"
      },
      "message": "Revert \"cgroup: Remove task_lock() from cgroup_post_fork()\"\n\nThis reverts commit 7e3aa30ac8c904a706518b725c451bb486daaae9.\n\nThe commit incorrectly assumed that fork path always performed\nthreadgroup_change_begin/end() and depended on that for\nsynchronization against task exit and cgroup migration paths instead\nof explicitly grabbing task_lock().\n\nthreadgroup_change is not locked when forking a new process (as\nopposed to a new thread in the same process) and even if it were it\nwouldn\u0027t be effective as different processes use different threadgroup\nlocks.\n\nRevert the incorrect optimization.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nLKML-Reference: \u003c20121008020000.GB2575@localhost\u003e\nAcked-by: Li Zefan \u003clizefan@huawei.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "9bb71308b8133d643648776243e4d5599b1c193d",
      "tree": "f975fb2ffcd3d9b2ae222705836a9a142b97d350",
      "parents": [
        "1f5320d5972aa50d3e8d2b227b636b370e608359"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Oct 18 17:52:07 2012 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Oct 19 14:08:49 2012 -0700"
      },
      "message": "Revert \"cgroup: Drop task_lock(parent) on cgroup_fork()\"\n\nThis reverts commit 7e381b0eb1e1a9805c37335562e8dc02e7d7848c.\n\nThe commit incorrectly assumed that fork path always performed\nthreadgroup_change_begin/end() and depended on that for\nsynchronization against task exit and cgroup migration paths instead\nof explicitly grabbing task_lock().\n\nthreadgroup_change is not locked when forking a new process (as\nopposed to a new thread in the same process) and even if it were it\nwouldn\u0027t be effective as different processes use different threadgroup\nlocks.\n\nRevert the incorrect optimization.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nLKML-Reference: \u003c20121008020000.GB2575@localhost\u003e\nAcked-by: Li Zefan \u003clizefan@huawei.com\u003e\nBitterly-Acked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "bbc2e3ef87851bc5430b2b4cf4ca3a2f29baeda6",
      "tree": "d9cef396c8370184f23e99480725aa8fde4bea08",
      "parents": [
        "dc36d7e7cd422d69b15e7ec7cc1f021f581a6b6d"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Fri Oct 19 13:56:53 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 19 14:07:47 2012 -0700"
      },
      "message": "pidns: remove recursion from free_pid_ns()\n\nfree_pid_ns() operates in a recursive fashion:\n\nfree_pid_ns(parent)\n  put_pid_ns(parent)\n    kref_put(\u0026ns-\u003ekref, free_pid_ns);\n      free_pid_ns\n\nthus if there was a huge nesting of namespaces the userspace may trigger\navalanche calling of free_pid_ns leading to kernel stack exhausting and a\npanic eventually.\n\nThis patch turns the recursion into an iterative loop.\n\nBased on a patch by Andrew Vagin.\n\n[akpm@linux-foundation.org: export put_pid_ns() to modules]\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2702b1526c7278c4d65d78de209a465d4de2885e",
      "tree": "a41af3d56a6e37af19bc7ed392f2580750ba86cb",
      "parents": [
        "1d46e232f8637f31f8df2e50b27fd20d8135bd93"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Fri Oct 19 13:56:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 19 14:07:47 2012 -0700"
      },
      "message": "kernel/sys.c: fix stack memory content leak via UNAME26\n\nCalling uname() with the UNAME26 personality set allows a leak of kernel\nstack contents.  This fixes it by defensively calculating the length of\ncopy_to_user() call, making the len argument unsigned, and initializing\nthe stack buffer to zero (now technically unneeded, but hey, overkill).\n\nCVE-2012-0957\n\nReported-by: PaX Team \u003cpageexec@freemail.hu\u003e\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: PaX Team \u003cpageexec@freemail.hu\u003e\nCc: Brad Spengler \u003cspender@grsecurity.net\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": "85eae82a0855d49852b87deac8653e4ebc8b291f",
      "tree": "c7b6a9334bf9f56c361537c8273a12f4b0549e0b",
      "parents": [
        "75fa29c7000924060677e0591368045576daad93"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Oct 15 21:35:59 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 16 18:17:44 2012 -0700"
      },
      "message": "printk: Fix scheduling-while-atomic problem in console_cpu_notify()\n\nThe console_cpu_notify() function runs with interrupts disabled in the\nCPU_DYING case.  It therefore cannot block, for example, as will happen\nwhen it calls console_lock().  Therefore, remove the CPU_DYING leg of\nthe switch statement to avoid this problem.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f5320d5972aa50d3e8d2b227b636b370e608359",
      "tree": "a36f1ef6a2f2f72d81e5aef43c0089bb62056bf5",
      "parents": [
        "ddffeb8c4d0331609ef2581d84de4d763607bd37"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Oct 04 16:37:16 2012 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Oct 16 17:09:36 2012 -0700"
      },
      "message": "cgroup: notify_on_release may not be triggered in some cases\n\nnotify_on_release must be triggered when the last process in a cgroup is\nmove to another. But if the first(and only) process in a cgroup is moved to\nanother, notify_on_release is not triggered.\n\n\t# mkdir /cgroup/cpu/SRC\n\t# mkdir /cgroup/cpu/DST\n\t#\n\t# echo 1 \u003e/cgroup/cpu/SRC/notify_on_release\n\t# echo 1 \u003e/cgroup/cpu/DST/notify_on_release\n\t#\n\t# sleep 300 \u0026\n\t[1] 8629\n\t#\n\t# echo 8629 \u003e/cgroup/cpu/SRC/tasks\n\t# echo 8629 \u003e/cgroup/cpu/DST/tasks\n\t-\u003e notify_on_release for /SRC must be triggered at this point,\n\t   but it isn\u0027t.\n\nThis is because put_css_set() is called before setting CGRP_RELEASABLE\nin cgroup_task_migrate(), and is a regression introduce by the\ncommit:74a1166d(cgroups: make procs file writable), which was merged\ninto v3.0.\n\nCc: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: \u003cstable@vger.kernel.org\u003e # v3.0.x and later\nAcked-by: Li Zefan \u003clizefan@huawei.com\u003e\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "d25282d1c9b9bc4cda7f9d3c0205108e99aa7a9d",
      "tree": "f414482d768b015a609924293b779b4ad0b8f764",
      "parents": [
        "b6eea87fc6850d3531a64a27d2323a4498cd4e43",
        "dbadc17683e6c673a69b236c0f041b931cc55c42"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 14 13:39:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 14 13:39:34 2012 -0700"
      },
      "message": "Merge branch \u0027modules-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module signing support from Rusty Russell:\n \"module signing is the highlight, but it\u0027s an all-over David Howells frenzy...\"\n\nHmm \"Magrathea: Glacier signing key\". Somebody has been reading too much HHGTTG.\n\n* \u0027modules-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (37 commits)\n  X.509: Fix indefinite length element skip error handling\n  X.509: Convert some printk calls to pr_devel\n  asymmetric keys: fix printk format warning\n  MODSIGN: Fix 32-bit overflow in X.509 certificate validity date checking\n  MODSIGN: Make mrproper should remove generated files.\n  MODSIGN: Use utf8 strings in signer\u0027s name in autogenerated X.509 certs\n  MODSIGN: Use the same digest for the autogen key sig as for the module sig\n  MODSIGN: Sign modules during the build process\n  MODSIGN: Provide a script for generating a key ID from an X.509 cert\n  MODSIGN: Implement module signature checking\n  MODSIGN: Provide module signing public keys to the kernel\n  MODSIGN: Automatically generate module signing keys if missing\n  MODSIGN: Provide Kconfig options\n  MODSIGN: Provide gitignore and make clean rules for extra files\n  MODSIGN: Add FIPS policy\n  module: signature checking hook\n  X.509: Add a crypto key parser for binary (DER) X.509 certificates\n  MPILIB: Provide a function to read raw data into an MPI\n  X.509: Add an ASN.1 decoder\n  X.509: Add simple ASN.1 grammar compiler\n  ...\n"
    },
    {
      "commit": "6c536a17fa049d0fb690c1a947b97dbfd304a916",
      "tree": "ed86fed39ac0952b2f21afee04d9d1494e9b904b",
      "parents": [
        "ba8a3d6c7c1956c6ff54a96e23007beccaa95640",
        "f2f0945e356daef87cdb01c0302801fb11cf382a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 11:16:58 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 11:16:58 2012 +0900"
      },
      "message": "Merge tag \u0027for_linus-3.7\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb\n\nPull KGDB/KDB fixes and cleanups from Jason Wessel:\n \"Cleanups\n   - Clean up compile warnings in kgdboc.c and x86/kernel/kgdb.c\n   - Add module event hooks for simplified debugging with gdb\n Fixes\n   - Fix kdb to stop paging with \u0027q\u0027 on bta and dmesg\n   - Fix for data that scrolls off the vga console due to line wrapping\n     when using the kdb pager\n New\n   - The debug core registers for kernel module events which allows a\n     kernel aware gdb to automatically load symbols and break on entry\n     to a kernel module\n   - Allow kgdboc\u003dkdb to setup kdb on the vga console\"\n\n* tag \u0027for_linus-3.7\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb:\n  tty/console: fix warnings in drivers/tty/serial/kgdboc.c\n  kdb,vt_console: Fix missed data due to pager overruns\n  kdb: Fix dmesg/bta scroll to quit with \u0027q\u0027\n  kgdboc: Accept either kbd or kdb to activate the vga + keyboard kdb shell\n  kgdb,x86: fix warning about unused variable\n  mips,kgdb: fix recursive page fault with CONFIG_KPROBES\n  kgdb: Add module event hooks\n"
    },
    {
      "commit": "ade0899b298ba2c43bfd6abd8cbc2545944cde0c",
      "tree": "a448dfb440b3b958b6306bb43620cd5d76f504bf",
      "parents": [
        "871a0596cb2f51b57dc583d1a7c4be0186582fe7",
        "95cf59ea72331d0093010543b8951bb43f262cac"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:20:11 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:20:11 2012 +0900"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf updates from Ingo Molnar:\n \"This tree includes some late late perf items that missed the first\n  round:\n\n  tools:\n\n   - Bash auto completion improvements, now we can auto complete the\n     tools long options, tracepoint event names, etc, from Namhyung Kim.\n\n   - Look up thread using tid instead of pid in \u0027perf sched\u0027.\n\n   - Move global variables into a perf_kvm struct, from David Ahern.\n\n   - Hists refactorings, preparatory for improved \u0027diff\u0027 command, from\n     Jiri Olsa.\n\n   - Hists refactorings, preparatory for event group viewieng work, from\n     Namhyung Kim.\n\n   - Remove double negation on optional feature macro definitions, from\n     Namhyung Kim.\n\n   - Remove several cases of needless global variables, on most\n     builtins.\n\n   - misc fixes\n\n  kernel:\n\n   - sysfs support for IBS on AMD CPUs, from Robert Richter.\n\n   - Support for an upcoming Intel CPU, the Xeon-Phi / Knights Corner\n     HPC blade PMU, from Vince Weaver.\n\n   - misc fixes\"\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (46 commits)\n  perf: Fix perf_cgroup_switch for sw-events\n  perf: Clarify perf_cpu_context::active_pmu usage by renaming it to ::unique_pmu\n  perf/AMD/IBS: Add sysfs support\n  perf hists: Add more helpers for hist entry stat\n  perf hists: Move he-\u003estat.nr_events initialization to a template\n  perf hists: Introduce struct he_stat\n  perf diff: Removing the total_period argument from output code\n  perf tool: Add hpp interface to enable/disable hpp column\n  perf tools: Removing hists pair argument from output path\n  perf hists: Separate overhead and baseline columns\n  perf diff: Refactor diff displacement possition info\n  perf hists: Add struct hists pointer to struct hist_entry\n  perf tools: Complete tracepoint event names\n  perf/x86: Add support for Intel Xeon-Phi Knights Corner PMU\n  perf evlist: Remove some unused methods\n  perf evlist: Introduce add_newtp method\n  perf kvm: Move global variables into a perf_kvm struct\n  perf tools: Convert to BACKTRACE_SUPPORT\n  perf tools: Long option completion support for each subcommands\n  perf tools: Complete long option names of perf command\n  ...\n"
    },
    {
      "commit": "4e21fc138bfd7fe625ff5dc81541399aaf9d429b",
      "tree": "43bedf14d2eee7711b8241dcfd6bd7b8737d9bd5",
      "parents": [
        "8418263e3547ed3816475e4c55a77004f0426ee6",
        "5522be6a4624a5f505555569e4d9cee946630686"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:05:52 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:05:52 2012 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull third pile of kernel_execve() patches from Al Viro:\n \"The last bits of infrastructure for kernel_thread() et.al., with\n  alpha/arm/x86 use of those.  Plus sanitizing the asm glue and\n  do_notify_resume() on alpha, fixing the \"disabled irq while running\n  task_work stuff\" breakage there.\n\n  At that point the rest of kernel_thread/kernel_execve/sys_execve work\n  can be done independently for different architectures.  The only\n  pending bits that do depend on having all architectures converted are\n  restrictred to fs/* and kernel/* - that\u0027ll obviously have to wait for\n  the next cycle.\n\n  I thought we\u0027d have to wait for all of them done before we start\n  eliminating the longjump-style insanity in kernel_execve(), but it\n  turned out there\u0027s a very simple way to do that without flagday-style\n  changes.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  alpha: switch to saner kernel_execve() semantics\n  arm: switch to saner kernel_execve() semantics\n  x86, um: convert to saner kernel_execve() semantics\n  infrastructure for saner ret_from_kernel_thread semantics\n  make sure that kernel_thread() callbacks call do_exit() themselves\n  make sure that we always have a return path from kernel_execve()\n  ppc: eeh_event should just use kthread_run()\n  don\u0027t bother with kernel_thread/kernel_execve for launching linuxrc\n  alpha: get rid of switch_stack argument of do_work_pending()\n  alpha: don\u0027t bother passing switch_stack separately from regs\n  alpha: take SIGPENDING/NOTIFY_RESUME loop into signal.c\n  alpha: simplify TIF_NEED_RESCHED handling\n"
    },
    {
      "commit": "8418263e3547ed3816475e4c55a77004f0426ee6",
      "tree": "97c548b16e6753e1911870d824a07b7e726b6229",
      "parents": [
        "ccff9b1db693062b0a9c9070f4304deb47ef215c",
        "f81700bd831efcd12eb7f0e66b24b16c2ad00a32"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:04:42 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 13 10:04:42 2012 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull third pile of VFS updates from Al Viro:\n \"Stuff from Jeff Layton, mostly.  Sanitizing interplay between audit\n  and namei, removing a lot of insanity from audit_inode() mess and\n  getting things ready for his ESTALE patchset.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:\n  procfs: don\u0027t need a PATH_MAX allocation to hold a string representation of an int\n  vfs: embed struct filename inside of names_cache allocation if possible\n  audit: make audit_inode take struct filename\n  vfs: make path_openat take a struct filename pointer\n  vfs: turn do_path_lookup into wrapper around struct filename variant\n  audit: allow audit code to satisfy getname requests from its names_list\n  vfs: define struct filename and have getname() return it\n  vfs: unexport getname and putname symbols\n  acct: constify the name arg to acct_on\n  vfs: allocate page instead of names_cache buffer in mount_block_root\n  audit: overhaul __audit_inode_child to accomodate retrying\n  audit: optimize audit_compare_dname_path\n  audit: make audit_compare_dname_path use parent_len helper\n  audit: remove dirlen argument to audit_compare_dname_path\n  audit: set the name_len in audit_inode for parent lookups\n  audit: add a new \"type\" field to audit_names struct\n  audit: reverse arguments to audit_inode_child\n  audit: no need to walk list in audit_inode if name is NULL\n  audit: pass in dentry to audit_copy_inode wherever possible\n  audit: remove unnecessary NULL ptr checks from do_path_lookup\n"
    },
    {
      "commit": "adb5c2473d3f91526c79db972aafb20a56d3fbb3",
      "tree": "f0427a11a91af2f5a5d0037ce52c32633019120b",
      "parents": [
        "669abf4e5539c8aa48bf28c965be05c0a7b58a27"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 16:43:13 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 20:15:09 2012 -0400"
      },
      "message": "audit: make audit_inode take struct filename\n\nKeep a pointer to the audit_names \"slot\" in struct filename.\n\nHave all of the audit_inode callers pass a struct filename ponter to\naudit_inode instead of a string pointer. If the aname field is already\npopulated, then we can skip walking the list altogether and just use it\ndirectly.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "669abf4e5539c8aa48bf28c965be05c0a7b58a27",
      "tree": "5b8e9e17c4f03ddd719c9c2089d829e2a040854a",
      "parents": [
        "873f1eedc1b983d772283279192c4ca2f60e8482"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 16:43:10 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 20:15:09 2012 -0400"
      },
      "message": "vfs: make path_openat take a struct filename pointer\n\n...and fix up the callers. For do_file_open_root, just declare a\nstruct filename on the stack and fill out the .name field. For\ndo_filp_open, make it also take a struct filename pointer, and fix up its\ncallers to call it appropriately.\n\nFor filp_open, add a variant that takes a struct filename pointer and turn\nfilp_open into a wrapper around it.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7ac86265dc8f665cc49d6e60a125e608cd2fca14",
      "tree": "9e7941e2d8dfb2106c5fb28504531dafc72e14e6",
      "parents": [
        "91a27b2a756784714e924e5e854b919273082d26"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:28 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 20:15:08 2012 -0400"
      },
      "message": "audit: allow audit code to satisfy getname requests from its names_list\n\nCurrently, if we call getname() on a userland string more than once,\nwe\u0027ll get multiple copies of the string and multiple audit_names\nrecords.\n\nAdd a function that will allow the audit_names code to satisfy getname\nrequests using info from the audit_names list, avoiding a new allocation\nand audit_names records.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "91a27b2a756784714e924e5e854b919273082d26",
      "tree": "3913246b7d6e62703ec915f481e3a7159393f0f0",
      "parents": [
        "8e377d15078a501c4da98471f56396343c407d92"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:28 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 20:14:55 2012 -0400"
      },
      "message": "vfs: define struct filename and have getname() return it\n\ngetname() is intended to copy pathname strings from userspace into a\nkernel buffer. The result is just a string in kernel space. It would\nhowever be quite helpful to be able to attach some ancillary info to\nthe string.\n\nFor instance, we could attach some audit-related info to reduce the\namount of audit-related processing needed. When auditing is enabled,\nwe could also call getname() on the string more than once and not\nneed to recopy it from userspace.\n\nThis patchset converts the getname()/putname() interfaces to return\na struct instead of a string. For now, the struct just tracks the\nstring in kernel space and the original userland pointer for it.\n\nLater, we\u0027ll add other information to the struct as it becomes\nconvenient.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "a74fb73c12398b250fdc5e333a11e15a9e3a84fc",
      "tree": "2bec2f6e20320f5a4bc01d1e19d7190842ef1c37",
      "parents": [
        "fb45550d76bb584857cf0ea3be79fa78207a3cff"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Oct 10 21:28:25 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 13:35:07 2012 -0400"
      },
      "message": "infrastructure for saner ret_from_kernel_thread semantics\n\n* allow kernel_execve() leave the actual return to userland to\ncaller (selected by CONFIG_GENERIC_KERNEL_EXECVE).  Callers\nupdated accordingly.\n* architecture that does select GENERIC_KERNEL_EXECVE in its\nKconfig should have its ret_from_kernel_thread() do this:\n\tcall schedule_tail\n\tcall the callback left for it by copy_thread(); if it ever\nreturns, that\u0027s because it has just done successful kernel_execve()\n\tjump to return from syscall\nIOW, its only difference from ret_from_fork() is that it does call the\ncallback.\n* such an architecture should also get rid of ret_from_kernel_execve()\nand __ARCH_WANT_KERNEL_EXECVE\n\nThis is the last part of infrastructure patches in that area - from\nthat point on work on different architectures can live independently.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "03d3602a833715f83ea53b9feb078b9c4c5f6c1a",
      "tree": "7b63ec6753dd65e61392017e1aba2ee1e6b4bcd1",
      "parents": [
        "0588f1f934791b79d0a1e9b327be9b6eb361d2b8",
        "5b3900cd409466c0070b234d941650685ad0c791"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 22:17:48 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 22:17:48 2012 +0900"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer core update from Thomas Gleixner:\n - Bug fixes (one for a longstanding dead loop issue)\n - Rework of time related vsyscalls\n - Alarm timer updates\n - Jiffies updates to remove compile time dependencies\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  timekeeping: Cast raw_interval to u64 to avoid shift overflow\n  timers: Fix endless looping between cascade() and internal_add_timer()\n  time/jiffies: bring back unconditional LATCH definition\n  time: Convert x86_64 to using new update_vsyscall\n  time: Only do nanosecond rounding on GENERIC_TIME_VSYSCALL_OLD systems\n  time: Introduce new GENERIC_TIME_VSYSCALL\n  time: Convert CONFIG_GENERIC_TIME_VSYSCALL to CONFIG_GENERIC_TIME_VSYSCALL_OLD\n  time: Move update_vsyscall definitions to timekeeper_internal.h\n  time: Move timekeeper structure to timekeeper_internal.h for vsyscall changes\n  jiffies: Remove compile time assumptions about CLOCK_TICK_RATE\n  jiffies: Kill unused TICK_USEC_TO_NSEC\n  alarmtimer: Rename alarmtimer_remove to alarmtimer_dequeue\n  alarmtimer: Remove unused helpers \u0026 defines\n  alarmtimer: Use hrtimer per-alarm instead of per-base\n  alarmtimer: Implement minimum alarm interval for allowing suspend\n"
    },
    {
      "commit": "0588f1f934791b79d0a1e9b327be9b6eb361d2b8",
      "tree": "c0b305c494ed32df711c576d9dbd78c8cb394654",
      "parents": [
        "9d55ab71b735621a63c8923ba934d87879847cef",
        "301a5cba2887d1f640e6d5184b05a6d7132017d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 22:13:05 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 22:13:05 2012 +0900"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar:\n \"A CPU hotplug related crash fix and a nohz accounting fixlet.\"\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Update sched_domains_numa_masks[][] when new cpus are onlined\n  sched: Ensure \u0027sched_domains_numa_levels\u0027 is safe to use in other functions\n  nohz: Fix one jiffy count too far in idle cputime\n"
    },
    {
      "commit": "9d55ab71b735621a63c8923ba934d87879847cef",
      "tree": "53bc24c37b4366e2b372a59a501be934e404b143",
      "parents": [
        "4f1cd91497774488ed16119ec3f54b3daf1561de",
        "c1f8d901d828da1df6d384780829952e7912aeba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 22:12:07 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 22:12:07 2012 +0900"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU fixes from Ingo Molnar:\n \"This tree includes a shutdown/cpu-hotplug deadlock fix and a\n  documentation fix.\"\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  rcu: Advise most users not to enable RCU user mode\n  rcu: Grace-period initialization excludes only RCU notifier\n"
    },
    {
      "commit": "17b572e82032bc246324ce136696656b66d4e3f1",
      "tree": "ff54f0141d8d9d60c9d8ea1f49842474aa882912",
      "parents": [
        "d1871b38fccdc4b6575b0cabdea9e06bc70167eb"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Sun Aug 26 22:37:03 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Oct 12 06:37:35 2012 -0500"
      },
      "message": "kdb,vt_console: Fix missed data due to pager overruns\n\nIt is possible to miss data when using the kdb pager.  The kdb pager\ndoes not pay attention to the maximum column constraint of the screen\nor serial terminal.  This result is not incrementing the shown lines\ncorrectly and the pager will print more lines that fit on the screen.\nObviously that is less than useful when using a VGA console where you\ncannot scroll back.\n\nThe pager will now look at the kdb_buffer string to see how many\ncharacters are printed.  It might not be perfect considering you can\noutput ASCII that might move the cursor position, but it is a\nsubstantially better approximation for viewing dmesg and trace logs.\n\nThis also means that the vt screen needs to set the kdb COLUMNS\nvariable.\n\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "d1871b38fccdc4b6575b0cabdea9e06bc70167eb",
      "tree": "b750732307696a074df2d71be6b034ba96557d8b",
      "parents": [
        "24b8592ec021c433e73e6d8000e71f5c341fdde0"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Sun Aug 26 21:43:12 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Oct 12 06:37:35 2012 -0500"
      },
      "message": "kdb: Fix dmesg/bta scroll to quit with \u0027q\u0027\n\nIf you press \u0027q\u0027 the pager should exit instead of printing everything\nfrom dmesg which can really bog down a 9600 baud serial link.\n\nThe same is true for the bta command.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "f30fed10c440a25937e509860fa207399b26efe5",
      "tree": "7697f5e044f1a870d0ddd1e5953d494cb3d9643e",
      "parents": [
        "a0d271cbfed1dd50278c6b06bead3d00ba0a88f9"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Oct 12 06:37:33 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Oct 12 06:37:33 2012 -0500"
      },
      "message": "kgdb: Add module event hooks\n\nAllow gdb to auto load kernel modules when it is attached,\nwhich makes it trivially easy to debug module init functions\nor pre-set breakpoints in a kernel module that has not loaded yet.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "cfd4da175599938f21a81cdd80df02fa4151dcba",
      "tree": "fa4cf90f56ff4113689348c70e72426c98515d2c",
      "parents": [
        "a608ca21f58ee44df5a71ba140e98498f3ebc2cd"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:27 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:03 2012 -0400"
      },
      "message": "acct: constify the name arg to acct_on\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4fa6b5ecbf092c6ee752ece8a55d71f663d23254",
      "tree": "6143912dc73b457a3be72faf31d46d855d3f87c3",
      "parents": [
        "e3d6b07b8ba161f638b026feba0c3c97875d7f1c"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:25 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:03 2012 -0400"
      },
      "message": "audit: overhaul __audit_inode_child to accomodate retrying\n\nIn order to accomodate retrying path-based syscalls, we need to add a\nnew \"type\" argument to audit_inode_child. This will tell us whether\nwe\u0027re looking for a child entry that represents a create or a delete.\n\nIf we find a parent, don\u0027t automatically assume that we need to create a\nnew entry. Instead, use the information we have to try to find an\nexisting entry first. Update it if one is found and create a new one if\nnot.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e3d6b07b8ba161f638b026feba0c3c97875d7f1c",
      "tree": "d40cea06665f9092820d76948d38e329c178011b",
      "parents": [
        "29e9a3467c1367549568d7d411d5f30209ae181b"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:25 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:02 2012 -0400"
      },
      "message": "audit: optimize audit_compare_dname_path\n\nIn the cases where we already know the length of the parent, pass it as\na parm so we don\u0027t need to recompute it. In the cases where we don\u0027t\nknow the length, pass in AUDIT_NAME_FULL (-1) to indicate that it should\nbe determined.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "29e9a3467c1367549568d7d411d5f30209ae181b",
      "tree": "9da23e302f9dcff070f9187f2882ee76262be601",
      "parents": [
        "563a0d1236c2c58d584ef122a5cdc9930e5860b3"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Oct 10 15:25:24 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:02 2012 -0400"
      },
      "message": "audit: make audit_compare_dname_path use parent_len helper\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "563a0d1236c2c58d584ef122a5cdc9930e5860b3",
      "tree": "4432b3b2f6ef6c19e9bded14ae31942e2b58bd84",
      "parents": [
        "bfcec7087458812f575d9022b2d151641f34ee84"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:24 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:01 2012 -0400"
      },
      "message": "audit: remove dirlen argument to audit_compare_dname_path\n\nAll the callers set this to NULL now.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "bfcec7087458812f575d9022b2d151641f34ee84",
      "tree": "6c0f7dd3b016992da8d113ceeaae404c6abc03a1",
      "parents": [
        "78e2e802a8519031e5858595070b39713e26340d"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:23 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:01 2012 -0400"
      },
      "message": "audit: set the name_len in audit_inode for parent lookups\n\nCurrently, this gets set mostly by happenstance when we call into\naudit_inode_child. While that might be a little more efficient, it seems\nwrong. If the syscall ends up failing before audit_inode_child ever gets\ncalled, then you\u0027ll have an audit_names record that shows the full path\nbut has the parent inode info attached.\n\nFix this by passing in a parent flag when we call audit_inode that gets\nset to the value of LOOKUP_PARENT. We can then fix up the pathname for\nthe audit entry correctly from the get-go.\n\nWhile we\u0027re at it, clean up the no-op macro for audit_inode in the\n!CONFIG_AUDITSYSCALL case.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "78e2e802a8519031e5858595070b39713e26340d",
      "tree": "92f79d2039f4119a127ab59e31a2d1c9dfb892fe",
      "parents": [
        "c43a25abba97c7d87131e71db6be24b24d7791a5"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:22 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:00 2012 -0400"
      },
      "message": "audit: add a new \"type\" field to audit_names struct\n\nFor now, we just have two possibilities:\n\nUNKNOWN: for a new audit_names record that we don\u0027t know anything about yet\nNORMAL: for everything else\n\nIn later patches, we\u0027ll add other types so we can distinguish and update\nrecords created under different circumstances.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c43a25abba97c7d87131e71db6be24b24d7791a5",
      "tree": "0fe959853254064e17805ca111838e7869720e43",
      "parents": [
        "9cec9d68ae53aae60b4a1fca4505c75a1d026392"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:21 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:32:00 2012 -0400"
      },
      "message": "audit: reverse arguments to audit_inode_child\n\nMost of the callers get called with an inode and dentry in the reverse\norder. The compiler then has to reshuffle the arg registers and/or\nstack in order to pass them on to audit_inode_child.\n\nReverse those arguments for a micro-optimization.\n\nReported-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9cec9d68ae53aae60b4a1fca4505c75a1d026392",
      "tree": "da913dbacdb569b382182beb70c660ac93a39e5a",
      "parents": [
        "1c2e51e8c162417d2831007ec256ede06c3a0201"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:21 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:31:59 2012 -0400"
      },
      "message": "audit: no need to walk list in audit_inode if name is NULL\n\nIf name is NULL then the condition in the loop will never be true. Also,\nwith this change, we can eliminate the check for n-\u003ename \u003d\u003d NULL since\nthe equivalence check will never be true if it is.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1c2e51e8c162417d2831007ec256ede06c3a0201",
      "tree": "c21a641405f7de220f16be4d2e74fec387ec92a9",
      "parents": [
        "f78570dd6ad9563fffd24cc5e1808e1a1242f16e"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Wed Oct 10 15:25:20 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 12 00:31:59 2012 -0400"
      },
      "message": "audit: pass in dentry to audit_copy_inode wherever possible\n\nIn some cases, we were passing in NULL even when we have a dentry.\n\nReported-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "759e00b8a8883be28357426206d2f1752827e38a",
      "tree": "96e09daf0bcb7fc49e4c384e8b20b92c223568bd",
      "parents": [
        "5cea24c5899a81abf59706d69580dd5c734effa8",
        "6054b9cae24f7ff09e502cea408dad140210681a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 12:35:05 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 12:35:05 2012 +0900"
      },
      "message": "Merge tag \u0027pinctrl-for-3.7-late\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl\n\nPull second set of pinctrl patches from Linus Walleij:\n \"Here is a late pinctrl pull request with stuff that wasn\u0027t quite\n  tested at the first pull request.\n\n  The main reason to not hold off is that the modifications to\n  irq_domain_add_simple() as reviewed by Rob Herring introduce new\n  infrastructure for irqdomains that will be useful for the next cycle:\n  instead of sprinkling irq descriptor allocation all over the kernel\n  wherever a \"legacy\" domain is registered, which is necessary for any\n  platform using sparse IRQs, and many irq chips are say GPIO\n  controllers which may be used with several systems, some with sparse\n  IRQs some not, we push this into the irq_domain_add_simple() so we can\n  atleast do mistakes in one place.\n\n  The irq_domain_add_simple() is currently unused in the kernel, so I\n  need to provide a user.  The Nomadik stuff that goes with are changes\n  to the driver I use day-to-day to make use of this facility (and a\n  dependency), so see it as a way to eat my own dogfood: if this blows\n  up the egg hits my face.\n\n  A second round of pinctrl patches for v3.7:\n   - Complement the Nomadik pinctrl driver with alternate Cx functions\n     so it handles all oddities.\n   - A patch to the IRQdomain to reform the simple irqdomain to handle\n     IRQ descriptor allocation dynamically.\n   - Use the above feature in the Nomadik pin controller.\"\n\n* tag \u0027pinctrl-for-3.7-late\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:\n  pinctrl/nomadik: use simple or linear IRQ domain\n  irqdomain: augment add_simple() to allocate descs\n  pinctrl/nomadik: support other alternate-C functions\n"
    },
    {
      "commit": "79360ddd73dfe9a26f49ef4e27b8c26612929b0e",
      "tree": "a8b0d226e0d83ea4e3a8c27b091a7121dbb9638b",
      "parents": [
        "8213a2f3eeafdecf06dd718cb4130372263f6067",
        "98f6ef64b15a48f15062aff5d143b5d9a6ae7711"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 10:52:03 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 10:52:03 2012 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull pile 2 of vfs updates from Al Viro:\n \"Stuff in this one - assorted fixes, lglock tidy-up, death to\n  lock_super().\n\n  There\u0027ll be a VFS pile tomorrow (with patches from Jeff Layton,\n  sanitizing getname() and related parts of audit and preparing for\n  ESTALE fixes), but I\u0027d rather push the stuff in this one ASAP - some\n  of the bugs closed here are quite unpleasant.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:\n  vfs: bogus warnings in fs/namei.c\n  consitify do_mount() arguments\n  lglock: add DEFINE_STATIC_LGLOCK()\n  lglock: make the per_cpu locks static\n  lglock: remove unused DEFINE_LGLOCK_LOCKDEP()\n  MAX_LFS_FILESIZE definition for 64bit needs LL...\n  tmpfs,ceph,gfs2,isofs,reiserfs,xfs: fix fh_len checking\n  vfs: drop lock/unlock super\n  ufs: drop lock/unlock super\n  sysv: drop lock/unlock super\n  hpfs: drop lock/unlock super\n  fat: drop lock/unlock super\n  ext3: drop lock/unlock super\n  exofs: drop lock/unlock super\n  dup3: Return an error when oldfd \u003d\u003d newfd.\n  fs: handle failed audit_log_start properly\n  fs: prevent use after free in auditing when symlink following was denied\n"
    },
    {
      "commit": "8213a2f3eeafdecf06dd718cb4130372263f6067",
      "tree": "0d02e3201dac64d1429f8552ee1163d4a1ef1646",
      "parents": [
        "40924754f2cabd5d9af4bcd4dcecc362b5e0baa1",
        "12f79be93d94698778ff2b3f921073fc5f6780d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 10:49:08 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 12 10:49:08 2012 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull pile 2 of execve and kernel_thread unification work from Al Viro:\n \"Stuff in there: kernel_thread/kernel_execve/sys_execve conversions for\n  several more architectures plus assorted signal fixes and cleanups.\n\n  There\u0027ll be more (in particular, real fixes for the alpha\n  do_notify_resume() irq mess)...\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (43 commits)\n  alpha: don\u0027t open-code trace_report_syscall_{enter,exit}\n  Uninclude linux/freezer.h\n  m32r: trim masks\n  avr32: trim masks\n  tile: don\u0027t bother with SIGTRAP in setup_frame\n  microblaze: don\u0027t bother with SIGTRAP in setup_rt_frame()\n  mn10300: don\u0027t bother with SIGTRAP in setup_frame()\n  frv: no need to raise SIGTRAP in setup_frame()\n  x86: get rid of duplicate code in case of CONFIG_VM86\n  unicore32: remove pointless test\n  h8300: trim _TIF_WORK_MASK\n  parisc: decide whether to go to slow path (tracesys) based on thread flags\n  parisc: don\u0027t bother looping in do_signal()\n  parisc: fix double restarts\n  bury the rest of TIF_IRET\n  sanitize tsk_is_polling()\n  bury _TIF_RESTORE_SIGMASK\n  unicore32: unobfuscate _TIF_WORK_MASK\n  mips: NOTIFY_RESUME is not needed in TIF masks\n  mips: merge the identical \"return from syscall\" per-ABI code\n  ...\n\nConflicts:\n\tarch/arm/include/asm/thread_info.h\n"
    },
    {
      "commit": "fb45550d76bb584857cf0ea3be79fa78207a3cff",
      "tree": "c141122f0aa7f1b5cea4ad52d36228a40b79b2fc",
      "parents": [
        "d6b2123802d2b7eee8c62cd0ebd73e8636cbb068"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Oct 10 20:09:44 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 11 21:42:36 2012 -0400"
      },
      "message": "make sure that kernel_thread() callbacks call do_exit() themselves\n\nMost of them never returned anyway - only two functions had to be\nchanged.  That allows to simplify their callers a whole lot.\n\nNote that this does *not* apply to kthread_run() callbacks - all of\nthose had been called from the same kernel_thread() callback, which\ndid do_exit() already.  This is strictly about very few low-level\nkernel_thread() callbacks (there are only 6 of those, mostly as part\nof kthread.h and kmod.h exported mechanisms, plus kernel_init()\nitself).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8e49f418c9632790bf456634742d34d97120a784",
      "tree": "dfe1caca880206a3cfb38c923e49a5af74071d87",
      "parents": [
        "95cf59ea72331d0093010543b8951bb43f262cac"
      ],
      "author": {
        "name": "Vaibhav Nagarnaik",
        "email": "vnagarnaik@google.com",
        "time": "Wed Oct 10 16:40:27 2012 -0700"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Oct 11 12:21:48 2012 -0400"
      },
      "message": "ring-buffer: Check for uninitialized cpu buffer before resizing\n\nWith a system where, num_present_cpus \u003c num_possible_cpus, even if all\nCPUs are online, non-present CPUs don\u0027t have per_cpu buffers allocated.\nIf per_cpu/\u003ccpu\u003e/buffer_size_kb is modified for such a CPU, it can cause\na panic due to NULL dereference in ring_buffer_resize().\n\nTo fix this, resize operation is allowed only if the per-cpu buffer has\nbeen initialized.\n\nLink: http://lkml.kernel.org/r/1349912427-6486-1-git-send-email-vnagarnaik@google.com\n\nCc: stable@vger.kernel.org # 3.5+\nSigned-off-by: Vaibhav Nagarnaik \u003cvnagarnaik@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "d5b719365ec13ef825f2548ba54903b9d029238c",
      "tree": "c22d21c4351cb065f2f049a04223dd27fcbf5b6e",
      "parents": [
        "e7d113bcf243a838ba1c32025172ab214349dfad"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Oct 02 14:35:24 2012 +0930"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:36 2012 +1030"
      },
      "message": "MODSIGN: Make mrproper should remove generated files.\n\nIt doesn\u0027t, because the clean targets don\u0027t include kernel/Makefile, and\nbecause two files were missing from the list.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "e7d113bcf243a838ba1c32025172ab214349dfad",
      "tree": "1a8830155cc2273388546ba85dba1f0a7f5e6d40",
      "parents": [
        "5e8cb1e441dd74723898cd28fe64af5651023af0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Sep 28 11:16:57 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:35 2012 +1030"
      },
      "message": "MODSIGN: Use utf8 strings in signer\u0027s name in autogenerated X.509 certs\n\nPlace an indication that the certificate should use utf8 strings into the\nx509.genkey template generated by kernel/Makefile.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "5e8cb1e441dd74723898cd28fe64af5651023af0",
      "tree": "75d771910d536f9a10cf1eab682d1655ec4adcd3",
      "parents": [
        "80d65e58e93ffdabf58202653a0435bd3cf2d82e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Sep 28 11:16:57 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:34 2012 +1030"
      },
      "message": "MODSIGN: Use the same digest for the autogen key sig as for the module sig\n\nUse the same digest type for the autogenerated key signature as for the module\nsignature so that the hash algorithm is guaranteed to be present in the kernel.\n\nWithout this, the X.509 certificate loader may reject the X.509 certificate so\ngenerated because it was self-signed and the signature will be checked against\nitself - but this won\u0027t work if the digest algorithm must be loaded as a\nmodule.\n\nThe symptom is that the key fails to load with the following message emitted\ninto the kernel log:\n\n\tMODSIGN: Problem loading in-kernel X.509 certificate (-65)\n\nthe error in brackets being -ENOPKG.  What you should see is something like:\n\n\tMODSIGN: Loaded cert \u0027Magarathea: Glacier signing key: 9588321144239a119d3406d4c4cf1fbae1836fa0\u0027\n\nNote that this doesn\u0027t apply to certificates that are not self-signed as we\ndon\u0027t check those currently as they require the parent CA certificate to be\navailable.\n\nReported-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "48ba2462ace6072741fd8d0058207d630ce93bf1",
      "tree": "3cea7661a3bd5d03631e01171c19f2123346cf01",
      "parents": [
        "631cc66eb9eaa7296e303197ff1eb0f55e32b61d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 26 10:11:03 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:10 2012 +1030"
      },
      "message": "MODSIGN: Implement module signature checking\n\nCheck the signature on the module against the keys compiled into the kernel or\navailable in a hardware key store.\n\nCurrently, only RSA keys are supported - though that\u0027s easy enough to change,\nand the signature is expected to contain raw components (so not a PGP or\nPKCS#7 formatted blob).\n\nThe signature blob is expected to consist of the following pieces in order:\n\n (1) The binary identifier for the key.  This is expected to match the\n     SubjectKeyIdentifier from an X.509 certificate.  Only X.509 type\n     identifiers are currently supported.\n\n (2) The signature data, consisting of a series of MPIs in which each is in\n     the format of a 2-byte BE word sizes followed by the content data.\n\n (3) A 12 byte information block of the form:\n\n\tstruct module_signature {\n\t\tenum pkey_algo\t\talgo : 8;\n\t\tenum pkey_hash_algo\thash : 8;\n\t\tenum pkey_id_type\tid_type : 8;\n\t\tu8\t\t\t__pad;\n\t\t__be32\t\t\tid_length;\n\t\t__be32\t\t\tsig_length;\n\t};\n\n     The three enums are defined in crypto/public_key.h.\n\n     \u0027algo\u0027 contains the public-key algorithm identifier (0-\u003eDSA, 1-\u003eRSA).\n\n     \u0027hash\u0027 contains the digest algorithm identifier (0-\u003eMD4, 1-\u003eMD5, 2-\u003eSHA1,\n      etc.).\n\n     \u0027id_type\u0027 contains the public-key identifier type (0-\u003ePGP, 1-\u003eX.509).\n\n     \u0027__pad\u0027 should be 0.\n\n     \u0027id_length\u0027 should contain in the binary identifier length in BE form.\n\n     \u0027sig_length\u0027 should contain in the signature data length in BE form.\n\n     The lengths are in BE order rather than CPU order to make dealing with\n     cross-compilation easier.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e (minor Kconfig fix)\n"
    },
    {
      "commit": "631cc66eb9eaa7296e303197ff1eb0f55e32b61d",
      "tree": "631c962060a776a16ec35c477e99d4ef87c8db24",
      "parents": [
        "d441108c6f77541bb66fcd5b3389415b4c232008"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 26 10:09:51 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:01:22 2012 +1030"
      },
      "message": "MODSIGN: Provide module signing public keys to the kernel\n\nInclude a PGP keyring containing the public keys required to perform module\nverification in the kernel image during build and create a special keyring\nduring boot which is then populated with keys of crypto type holding the public\nkeys found in the PGP keyring.\n\nThese can be seen by root:\n\n[root@andromeda ~]# cat /proc/keys\n07ad4ee0 I-----     1 perm 3f010000     0     0 crypto    modsign.0: RSA 87b9b3bd []\n15c7f8c3 I-----     1 perm 1f030000     0     0 keyring   .module_sign: 1/4\n...\n\nIt is probably worth permitting root to invalidate these keys, resulting in\ntheir removal and preventing further modules from being loaded with that key.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d441108c6f77541bb66fcd5b3389415b4c232008",
      "tree": "eda7f0ed11d134b992bcb085a4543d63f38def4b",
      "parents": [
        "ea0b6dcf71d216dc11733ac19b26df0f5d0fd6c2"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 26 10:09:51 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:01:21 2012 +1030"
      },
      "message": "MODSIGN: Automatically generate module signing keys if missing\n\nAutomatically generate keys for module signing if they\u0027re absent so that\nallyesconfig doesn\u0027t break.  The builder should consider generating their own\nkey and certificate, however, so that the keys are appropriately named.\n\nThe private key for the module signer should be placed in signing_key.priv\n(unencrypted!) and the public key in an X.509 certificate as signing_key.x509.\n\nIf a transient key is desired for signing the modules, a config file for\n\u0027openssl req\u0027 can be placed in x509.genkey, looking something like the\nfollowing:\n\n\t[ req ]\n\tdefault_bits \u003d 4096\n\tdistinguished_name \u003d req_distinguished_name\n\tprompt \u003d no\n\tx509_extensions \u003d myexts\n\n\t[ req_distinguished_name ]\n\tO \u003d Magarathea\n\tCN \u003d Glacier signing key\n\temailAddress \u003d slartibartfast@magrathea.h2g2\n\n\t[ myexts ]\n\tbasicConstraints\u003dcritical,CA:FALSE\n\tkeyUsage\u003ddigitalSignature\n\tsubjectKeyIdentifier\u003dhash\n\tauthorityKeyIdentifier\u003dhash\n\nThe build process will use this to configure:\n\n\topenssl req -new -nodes -utf8 -sha1 -days 36500 -batch \\\n\t\t-x509 -config x509.genkey \\\n\t\t-outform DER -out signing_key.x509 \\\n\t\t-keyout signing_key.priv\n\nto generate the key.\n\nNote that it is required that the X.509 certificate have a subjectKeyIdentifier\nand an authorityKeyIdentifier.  Without those, the certificate will be\nrejected.  These can be used to check the validity of a certificate.\n\nNote that \u0027make distclean\u0027 will remove signing_key.{priv,x509} and x509.genkey,\nwhether or not they were generated automatically.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1d0059f3a468825b5fc5405c636a2f6e02707ffa",
      "tree": "0eef1243a093410f39564051d8904c8041e1e717",
      "parents": [
        "106a4ee258d14818467829bf0e12aeae14c16cd7"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 26 10:09:50 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:01:19 2012 +1030"
      },
      "message": "MODSIGN: Add FIPS policy\n\nIf we\u0027re in FIPS mode, we should panic if we fail to verify the signature on a\nmodule or we\u0027re asked to load an unsigned module in signature enforcing mode.\nPossibly FIPS mode should automatically enable enforcing mode.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "106a4ee258d14818467829bf0e12aeae14c16cd7",
      "tree": "4a5d002eceff4a028ebc8d88223b1ed735bee224",
      "parents": [
        "c26fd69fa00916a31a47f5f096fd7be924106df8"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Sep 26 10:09:40 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:00:55 2012 +1030"
      },
      "message": "module: signature checking hook\n\nWe do a very simple search for a particular string appended to the module\n(which is cache-hot and about to be SHA\u0027d anyway).  There\u0027s both a config\noption and a boot parameter which control whether we accept or fail with\nunsigned modules and modules that are signed with an unknown key.\n\nIf module signing is enabled, the kernel will be tainted if a module is\nloaded that is unsigned or has a signature for which we don\u0027t have the\nkey.\n\n(Useful feedback and tweaks by David Howells \u003cdhowells@redhat.com\u003e)\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "2854d167cc545d0642277bf8b77f972a91146fc6",
      "tree": "a8b8a2083bdd6569093af1613adea259064a1bcb",
      "parents": [
        "c22df08c7ffbfb281b0e5dff3fff4e192d1a7863"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Thu Sep 27 14:59:39 2012 +0200"
      },
      "committer": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Wed Oct 10 08:57:26 2012 +0200"
      },
      "message": "irqdomain: augment add_simple() to allocate descs\n\nCurrently we rely on all IRQ chip instances to dynamically\nallocate their IRQ descriptors unless they use the linear\nIRQ domain. So for irqdomain_add_legacy() and\nirqdomain_add_simple() the caller need to make sure that\ndescriptors are allocated.\n\nLet\u0027s slightly augment the yet unused irqdomain_add_simple()\nto also allocate descriptors as a means to simplify usage\nand avoid code duplication throughout the kernel.\n\nWe warn if descriptors cannot be allocated, e.g. if a\nplatform has the bad habit of hogging descriptors at boot\ntime.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Lee Jones \u003clee.jones@linaro.org\u003e\nReviewed-by: Rob Herring \u003crob.herring@calxeda.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\n"
    },
    {
      "commit": "d1c7d97ad58836affde6e39980b96527510b572e",
      "tree": "4020ac7f88154d5dd919fdf371472ea9153a656e",
      "parents": [
        "ffd8d101a3a7d3f2e79deee1e342801703b6dc70"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "sasha.levin@oracle.com",
        "time": "Thu Oct 04 19:57:31 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 09 23:33:37 2012 -0400"
      },
      "message": "fs: handle failed audit_log_start properly\n\naudit_log_start() may return NULL, this is unchecked by the caller in\naudit_log_link_denied() and could cause a NULL ptr deref.\n\nIntroduced by commit a51d9eaa (\"fs: add link restriction audit reporting\").\n\nSigned-off-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "42859eea96ba6beabfb0369a1eeffa3c7d2bd9cb",
      "tree": "fa38aeda0d6e7a4c48a882b166b8643594a1ad50",
      "parents": [
        "f59b51fe3d3092c08d7d554ecb40db24011b2ebc",
        "f322220d6159455da2b5a8a596d802c8695fed30"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 10 12:02:25 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 10 12:02:25 2012 +0900"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull generic execve() changes from Al Viro:\n \"This introduces the generic kernel_thread() and kernel_execve()\n  functions, and switches x86, arm, alpha, um and s390 over to them.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (26 commits)\n  s390: convert to generic kernel_execve()\n  s390: switch to generic kernel_thread()\n  s390: fold kernel_thread_helper() into ret_from_fork()\n  s390: fold execve_tail() into start_thread(), convert to generic sys_execve()\n  um: switch to generic kernel_thread()\n  x86, um/x86: switch to generic sys_execve and kernel_execve\n  x86: split ret_from_fork\n  alpha: introduce ret_from_kernel_execve(), switch to generic kernel_execve()\n  alpha: switch to generic kernel_thread()\n  alpha: switch to generic sys_execve()\n  arm: get rid of execve wrapper, switch to generic execve() implementation\n  arm: optimized current_pt_regs()\n  arm: introduce ret_from_kernel_execve(), switch to generic kernel_execve()\n  arm: split ret_from_fork, simplify kernel_thread() [based on patch by rmk]\n  generic sys_execve()\n  generic kernel_execve()\n  new helper: current_pt_regs()\n  preparation for generic kernel_thread()\n  um: kill thread-\u003eforking\n  um: let signal_delivered() do SIGTRAP on singlestepping into handler\n  ...\n"
    },
    {
      "commit": "5b3900cd409466c0070b234d941650685ad0c791",
      "tree": "1a381a23d3d06cfc8941ee2e5dd400ba6cea6f21",
      "parents": [
        "26cff4e2aa4d666dc6a120ea34336b5057e3e187"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Tue Oct 09 10:18:23 2012 +0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 09 21:27:14 2012 +0200"
      },
      "message": "timekeeping: Cast raw_interval to u64 to avoid shift overflow\n\nWe fixed a bunch of integer overflows in timekeeping code during the 3.6\ncycle.  I did an audit based on that and found this potential overflow.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20121009071823.GA19159@elgon.mountain\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "26cff4e2aa4d666dc6a120ea34336b5057e3e187",
      "tree": "be3f9c189519e4e42bb825d15adefb4d238a7214",
      "parents": [
        "db8c246937713e60b7628661ccc187eeb81f2bae"
      ],
      "author": {
        "name": "Hildner, Christian",
        "email": "christian.hildner@siemens.com",
        "time": "Mon Oct 08 15:49:03 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 09 21:27:14 2012 +0200"
      },
      "message": "timers: Fix endless looping between cascade() and internal_add_timer()\n\nAdding two (or more) timers with large values for \"expires\" (they have\nto reside within tv5 in the same list) leads to endless looping\nbetween cascade() and internal_add_timer() in case CONFIG_BASE_SMALL\nis one and jiffies are crossing the value 1 \u003c\u003c 18. The bug was\nintroduced between 2.6.11 and 2.6.12 (and survived for quite some\ntime).\n\nThis patch ensures that when cascade() is called timers within tv5 are\nnot added endlessly to their own list again, instead they are added to\nthe next lower tv level tv4 (as expected).\n\nSigned-off-by: Christian Hildner \u003cchristian.hildner@siemens.com\u003e\nReviewed-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nLink: http://lkml.kernel.org/r/98673C87CB31274881CFFE0B65ECC87B0F5FC1963E@DEFTHW99EA4MSX.ww902.siemens.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "db8c246937713e60b7628661ccc187eeb81f2bae",
      "tree": "6351e8bca23eef40fce85396d1c6f6cfffbd4b66",
      "parents": [
        "c5f66e99b7cb091e3d51ae8e8156892e8feb7fa3",
        "28f2b02bc581ffc835bc1691b18d03f62fcf0395"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 09 21:20:05 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 09 21:20:05 2012 +0200"
      },
      "message": "Merge branch \u0027fortglx/3.7/time\u0027 of git://git.linaro.org/people/jstultz/linux into timers/core\n"
    },
    {
      "commit": "6bdb913f0a70a4dfb7f066fb15e2d6f960701d00",
      "tree": "9a61960b27bf801794104b8bb8fccee1813f1b4b",
      "parents": [
        "2ec74c3ef2d8c58d71e0e00336fb6b891192155a"
      ],
      "author": {
        "name": "Haggai Eran",
        "email": "haggaie@mellanox.com",
        "time": "Mon Oct 08 16:33:35 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:58 2012 +0900"
      },
      "message": "mm: wrap calls to set_pte_at_notify with invalidate_range_start and invalidate_range_end\n\nIn order to allow sleeping during invalidate_page mmu notifier calls, we\nneed to avoid calling when holding the PT lock.  In addition to its direct\ncalls, invalidate_page can also be called as a substitute for a change_pte\ncall, in case the notifier client hasn\u0027t implemented change_pte.\n\nThis patch drops the invalidate_page call from change_pte, and instead\nwraps all calls to change_pte with invalidate_range_start and\ninvalidate_range_end calls.\n\nNote that change_pte still cannot sleep after this patch, and that clients\nimplementing change_pte should not take action on it in case the number of\noutstanding invalidate_range_start calls is larger than one, otherwise\nthey might miss a later invalidation.\n\nSigned-off-by: Haggai Eran \u003chaggaie@mellanox.com\u003e\nCc: Andrea Arcangeli \u003candrea@qumranet.com\u003e\nCc: Sagi Grimberg \u003csagig@mellanox.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@linux.vnet.ibm.com\u003e\nCc: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nCc: Haggai Eran \u003chaggaie@mellanox.com\u003e\nCc: Shachar Raindel \u003craindel@mellanox.com\u003e\nCc: Liran Liss \u003cliranl@mellanox.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: 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": "9826a516ff77c5820e591211e4f3e58ff36f46be",
      "tree": "bdec1e2fe5ff95569795069bac73977faba17d57",
      "parents": [
        "9c079add0d0f45220f4bb37febf0621137ec2d38"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Oct 08 16:31:35 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:40 2012 +0900"
      },
      "message": "mm: interval tree updates\n\nUpdate the generic interval tree code that was introduced in \"mm: replace\nvma prio_tree with an interval tree\".\n\nChanges:\n\n- fixed \u0027endpoing\u0027 typo noticed by Andrew Morton\n\n- replaced include/linux/interval_tree_tmpl.h, which was used as a\n  template (including it automatically defined the interval tree\n  functions) with include/linux/interval_tree_generic.h, which only\n  defines a preprocessor macro INTERVAL_TREE_DEFINE(), which itself\n  defines the interval tree functions when invoked. Now that is a very\n  long macro which is unfortunate, but it does make the usage sites\n  (lib/interval_tree.c and mm/interval_tree.c) a bit nicer than previously.\n\n- make use of RB_DECLARE_CALLBACKS() in the INTERVAL_TREE_DEFINE() macro,\n  instead of duplicating that code in the interval tree template.\n\n- replaced vma_interval_tree_add(), which was actually handling the\n  nonlinear and interval tree cases, with vma_interval_tree_insert_after()\n  which handles only the interval tree case and has an API that is more\n  consistent with the other interval tree handling functions.\n  The nonlinear case is now handled explicitly in kernel/fork.c dup_mmap().\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Daniel Santos \u003cdaniel.santos@pobox.com\u003e\nCc: 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": "6b2dbba8b6ac4df26f72eda1e5ea7bab9f950e08",
      "tree": "422ed8d7ac2fe45069f20cfba84a9a097bf444af",
      "parents": [
        "fff3fd8a1210a165252cd7cd01206da7a90d3a06"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Mon Oct 08 16:31:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:39 2012 +0900"
      },
      "message": "mm: replace vma prio_tree with an interval tree\n\nImplement an interval tree as a replacement for the VMA prio_tree.  The\nalgorithms are similar to lib/interval_tree.c; however that code can\u0027t be\ndirectly reused as the interval endpoints are not explicitly stored in the\nVMA.  So instead, the common algorithm is moved into a template and the\ndetails (node type, how to get interval endpoints from the node, etc) are\nfilled in using the C preprocessor.\n\nOnce the interval tree functions are available, using them as a\nreplacement to the VMA prio tree is a relatively simple, mechanical job.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01dc52ebdf472f77cca623ca693ca24cfc0f1bbe",
      "tree": "2d0f35f2aff418d52a84fb50974ad3bacf68d4bd",
      "parents": [
        "d5dc0ad928fb9e972001e552597fd0b794863f34"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave@gnu.org",
        "time": "Mon Oct 08 16:29:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:24 2012 +0900"
      },
      "message": "oom: remove deprecated oom_adj\n\nThe deprecated /proc/\u003cpid\u003e/oom_adj is scheduled for removal this month.\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "314e51b9851b4f4e8ab302243ff5a6fc6147f379",
      "tree": "f757b89206355fd129830782566768693eed23ce",
      "parents": [
        "0103bd16fb90bc741c7a03fd1ea4e8a505abad23"
      ],
      "author": {
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@openvz.org",
        "time": "Mon Oct 08 16:29:02 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:19 2012 +0900"
      },
      "message": "mm: kill vma flag VM_RESERVED and mm-\u003ereserved_vm counter\n\nA long time ago, in v2.4, VM_RESERVED kept swapout process off VMA,\ncurrently it lost original meaning but still has some effects:\n\n | effect                 | alternative flags\n-+------------------------+---------------------------------------------\n1| account as reserved_vm | VM_IO\n2| skip in core dump      | VM_IO, VM_DONTDUMP\n3| do not merge or expand | VM_IO, VM_DONTEXPAND, VM_HUGETLB, VM_PFNMAP\n4| do not mlock           | VM_IO, VM_DONTEXPAND, VM_HUGETLB, VM_PFNMAP\n\nThis patch removes reserved_vm counter from mm_struct.  Seems like nobody\ncares about it, it does not exported into userspace directly, it only\nreduces total_vm showed in proc.\n\nThus VM_RESERVED can be replaced with VM_IO or pair VM_DONTEXPAND | VM_DONTDUMP.\n\nremap_pfn_range() and io_remap_pfn_range() set VM_IO|VM_DONTEXPAND|VM_DONTDUMP.\nremap_vmalloc_range() set VM_DONTEXPAND | VM_DONTDUMP.\n\n[akpm@linux-foundation.org: drivers/vfio/pci/vfio_pci.c fixup]\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Carsten Otte \u003ccotte@de.ibm.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: James Morris \u003cjames.l.morris@oracle.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Kentaro Takeda \u003ctakedakn@nttdata.co.jp\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e9714acf8c439688884234dcac2bfc38bb607d38",
      "tree": "2e21c88f855a9f5168a143fa9948141140ff02a2",
      "parents": [
        "2dd8ad81e31d0d36a5d448329c646ab43eb17788"
      ],
      "author": {
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@openvz.org",
        "time": "Mon Oct 08 16:28:54 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:18 2012 +0900"
      },
      "message": "mm: kill vma flag VM_EXECUTABLE and mm-\u003enum_exe_file_vmas\n\nCurrently the kernel sets mm-\u003eexe_file during sys_execve() and then tracks\nnumber of vmas with VM_EXECUTABLE flag in mm-\u003enum_exe_file_vmas, as soon\nas this counter drops to zero kernel resets mm-\u003eexe_file to NULL.  Plus it\nresets mm-\u003eexe_file at last mmput() when mm-\u003emm_users drops to zero.\n\nVMA with VM_EXECUTABLE flag appears after mapping file with flag\nMAP_EXECUTABLE, such vmas can appears only at sys_execve() or after vma\nsplitting, because sys_mmap ignores this flag.  Usually binfmt module sets\nmm-\u003eexe_file and mmaps executable vmas with this file, they hold\nmm-\u003eexe_file while task is running.\n\ncomment from v2.6.25-6245-g925d1c4 (\"procfs task exe symlink\"),\nwhere all this stuff was introduced:\n\n\u003e The kernel implements readlink of /proc/pid/exe by getting the file from\n\u003e the first executable VMA.  Then the path to the file is reconstructed and\n\u003e reported as the result.\n\u003e\n\u003e Because of the VMA walk the code is slightly different on nommu systems.\n\u003e This patch avoids separate /proc/pid/exe code on nommu systems.  Instead of\n\u003e walking the VMAs to find the first executable file-backed VMA we store a\n\u003e reference to the exec\u0027d file in the mm_struct.\n\u003e\n\u003e That reference would prevent the filesystem holding the executable file\n\u003e from being unmounted even after unmapping the VMAs.  So we track the number\n\u003e of VM_EXECUTABLE VMAs and drop the new reference when the last one is\n\u003e unmapped.  This avoids pinning the mounted filesystem.\n\nexe_file\u0027s vma accounting is hooked into every file mmap/unmmap and vma\nsplit/merge just to fix some hypothetical pinning fs from umounting by mm,\nwhich already unmapped all its executable files, but still alive.\n\nSeems like currently nobody depends on this behaviour.  We can try to\nremove this logic and keep mm-\u003eexe_file until final mmput().\n\nmm-\u003eexe_file is still protected with mm-\u003emmap_sem, because we want to\nchange it via new sys_prctl(PR_SET_MM_EXE_FILE).  Also via this syscall\ntask can change its mm-\u003eexe_file and unpin mountpoint explicitly.\n\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Carsten Otte \u003ccotte@de.ibm.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: James Morris \u003cjames.l.morris@oracle.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Kentaro Takeda \u003ctakedakn@nttdata.co.jp\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2dd8ad81e31d0d36a5d448329c646ab43eb17788",
      "tree": "cd358be45ed8067673edac7f1db6b6a42a96d9db",
      "parents": [
        "0b173bc4daa8f8ec03a85abf5e47b23502ff80af"
      ],
      "author": {
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@openvz.org",
        "time": "Mon Oct 08 16:28:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:18 2012 +0900"
      },
      "message": "mm: use mm-\u003eexe_file instead of first VM_EXECUTABLE vma-\u003evm_file\n\nSome security modules and oprofile still uses VM_EXECUTABLE for retrieving\na task\u0027s executable file.  After this patch they will use mm-\u003eexe_file\ndirectly.  mm-\u003eexe_file is protected with mm-\u003emmap_sem, so locking stays\nthe same.\n\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\t\t\t[arch/tile]\nAcked-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\t[tomoyo]\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Carsten Otte \u003ccotte@de.ibm.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nAcked-by: James Morris \u003cjames.l.morris@oracle.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Kentaro Takeda \u003ctakedakn@nttdata.co.jp\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Nick Piggin \u003cnpiggin@kernel.dk\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "075663d19885eb3738fd2d7dbdb8947e12563b68",
      "tree": "99454962711f19b24b5b4642b6a95a6551731228",
      "parents": [
        "7ac57a89de958fbb5271dc504d0c25e34dbeec32"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Mon Oct 08 16:28:20 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:15 2012 +0900"
      },
      "message": "CPU hotplug, debug: detect imbalance between get_online_cpus() and put_online_cpus()\n\nThe synchronization between CPU hotplug readers and writers is achieved\nby means of refcounting, safeguarded by the cpu_hotplug.lock.\n\nget_online_cpus() increments the refcount, whereas put_online_cpus()\ndecrements it.  If we ever hit an imbalance between the two, we end up\ncompromising the guarantees of the hotplug synchronization i.e, for\nexample, an extra call to put_online_cpus() can end up allowing a\nhotplug reader to execute concurrently with a hotplug writer.\n\nSo, add a WARN_ON() in put_online_cpus() to detect such cases where the\nrefcount can go negative, and also attempt to fix it up, so that we can\ncontinue to run.\n\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nReviewed-by: Yasuaki Ishimatsu \u003cisimatu.yasuaki@jp.fujitsu.com\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ac57a89de958fbb5271dc504d0c25e34dbeec32",
      "tree": "4243b7e9f702e9b48820b62d8572f9aeb6f1cf1c",
      "parents": [
        "9b2a60c484715e2d2f07d8192fd9f18435cbc77c"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Oct 08 16:28:16 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 09 16:22:14 2012 +0900"
      },
      "message": "Kconfig: clean up the \"#if defined(arch)\" list for exception-trace sysctl entry\n\nIntroduce SYSCTL_EXCEPTION_TRACE config option and selec it in the\narchitectures requiring support for the \"exception-trace\" debug_table\nentry in kernel/sysctl.c.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4fbe35a124526e6759be07bd9c7ea796ba1e00d",
      "tree": "cb5c5a1608fcff588ed9a204ea67d5891adb18fb",
      "parents": [
        "cb349ca95407cbc11424d5e9fc7c8e700709041b"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Oct 07 08:36:12 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Oct 08 09:06:38 2012 -0700"
      },
      "message": "rcu: Grace-period initialization excludes only RCU notifier\n\nKirill noted the following deadlock cycle on shutdown involving padata:\n\n\u003e With commit 755609a9087fa983f567dc5452b2fa7b089b591f I\u0027ve got deadlock on\n\u003e poweroff.\n\u003e\n\u003e It guess it happens because of race for cpu_hotplug.lock:\n\u003e\n\u003e       CPU A                                   CPU B\n\u003e disable_nonboot_cpus()\n\u003e _cpu_down()\n\u003e cpu_hotplug_begin()\n\u003e  mutex_lock(\u0026cpu_hotplug.lock);\n\u003e __cpu_notify()\n\u003e padata_cpu_callback()\n\u003e __padata_remove_cpu()\n\u003e padata_replace()\n\u003e synchronize_rcu()\n\u003e                                       rcu_gp_kthread()\n\u003e                                       get_online_cpus();\n\u003e                                       mutex_lock(\u0026cpu_hotplug.lock);\n\nIt would of course be good to eliminate grace-period delays from\nCPU-hotplug notifiers, but that is a separate issue.  Deadlock is\nnot an appropriate diagnostic for excessive CPU-hotplug latency.\n\nFortunately, grace-period initialization does not actually need to\nexclude all of the CPU-hotplug operation, but rather only RCU\u0027s own\nCPU_UP_PREPARE and CPU_DEAD CPU-hotplug notifiers.  This commit therefore\nintroduces a new per-rcu_state onoff_mutex that provides the required\nconcurrency control in place of the get_online_cpus() that was previously\nin rcu_gp_init().\n\nReported-by: \"Kirill A. Shutemov\" \u003ckirill@shutemov.name\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nTested-by: Kirill A. Shutemov \u003ckirill@shutemov.name\u003e\n"
    },
    {
      "commit": "71434f2fcba5c22d6e0d51878ba8e241a5dea5fb",
      "tree": "0a61c5a75390a4eb39f018cc39cf8f40b0103058",
      "parents": [
        "4710f05fd146d4739e57a8832a3abc5bd3bf0997"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Sep 30 21:12:44 2012 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Oct 07 21:19:43 2012 +0200"
      },
      "message": "uprobes: Fix the racy uprobe-\u003eflags manipulation\n\nMultiple threads can manipulate uprobe-\u003eflags, this is obviously\nunsafe. For example mmap can set UPROBE_COPY_INSN while register\ntries to set UPROBE_RUN_HANDLER, the latter can also race with\ncan_skip_sstep() which clears UPROBE_SKIP_SSTEP.\n\nChange this code to use bitops.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "4710f05fd146d4739e57a8832a3abc5bd3bf0997",
      "tree": "459f64b5243d621c85b34abf90e3892cca69e502",
      "parents": [
        "cb9a19fe4aa51afa34786bd383e6614fa0083d58"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Sep 30 20:31:41 2012 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Oct 07 21:19:43 2012 +0200"
      },
      "message": "uprobes: Fix prepare_uprobe() race with itself\n\ninstall_breakpoint() is called under mm-\u003emmap_sem, this protects\nset_swbp() but not prepare_uprobe(). Two or more different tasks\ncan call install_breakpoint()-\u003eprepare_uprobe() at the same time,\nthis leads to numerous problems if UPROBE_COPY_INSN is not set.\n\nJust for example, the second copy_insn() can corrupt the already\nanalyzed/fixuped uprobe-\u003earch.insn and race with handle_swbp().\n\nThis patch simply adds uprobe-\u003ecopy_mutex to serialize this code.\nWe could probably reuse -\u003econsumer_rwsem, but this would mean that\nconsumer-\u003ehandler() can not use mm-\u003emmap_sem, not good.\n\nNote: this is another temporary ugly hack until we move this logic\ninto uprobe_register().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "cb9a19fe4aa51afa34786bd383e6614fa0083d58",
      "tree": "e85fac9d3a69707cd9c3a98361f5cba845d5d260",
      "parents": [
        "142b18ddc81439acda4bc4231b291e99fe67d507"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Sep 30 20:11:45 2012 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Oct 07 21:19:42 2012 +0200"
      },
      "message": "uprobes: Introduce prepare_uprobe()\n\nPreparation. Extract the copy_insn/arch_uprobe_analyze_insn code\nfrom install_breakpoint() into the new helper, prepare_uprobe().\n\nAnd move uprobe-\u003eflags defines from uprobes.h to uprobes.c, nobody\nelse can use them anyway.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "142b18ddc81439acda4bc4231b291e99fe67d507",
      "tree": "2189191c456f93551d58b0f3afc4b53bb3b8949a",
      "parents": [
        "076a365b3da99b68c5d58e394714d0611f1fa002"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sat Sep 29 21:56:57 2012 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Oct 07 21:19:41 2012 +0200"
      },
      "message": "uprobes: Fix handle_swbp() vs unregister() + register() race\n\nStrictly speaking this race was added by me in 56bb4cf6. However\nI think that this bug is just another indication that we should\nmove copy_insn/uprobe_analyze_insn code from install_breakpoint()\nto uprobe_register(), there are a lot of other reasons for that.\nUntil then, add a hack to close the race.\n\nA task can hit uprobe U1, but before it calls find_uprobe() this\nuprobe can be unregistered *AND* another uprobe U2 can be added to\nuprobes_tree at the same inode/offset. In this case handle_swbp()\nwill use the not-fully-initialized U2, in particular its arch.insn\nfor xol.\n\nAdd the additional !UPROBE_COPY_INSN check into handle_swbp(),\nif this flag is not set we simply restart as if the new uprobe was\nnot inserted yet. This is not very nice, we need barriers, but we\nwill remove this hack when we change uprobe_register().\n\nNote: with or without this patch install_breakpoint() can race with\nitself, yet another reson to kill UPROBE_COPY_INSN altogether. And\neven the usage of uprobe-\u003eflags is not safe. See the next patches.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "076a365b3da99b68c5d58e394714d0611f1fa002",
      "tree": "b58ae7da7bfa80200bb9982f344b93cf3f22a7fd",
      "parents": [
        "a5f658b71bc622b731961ea3addcf146ed3c599f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Sep 30 18:54:53 2012 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Oct 07 21:19:41 2012 +0200"
      },
      "message": "uprobes: Do not delete uprobe if uprobe_unregister() fails\n\ndelete_uprobe() must not be called if register_for_each_vma(false)\nfails to remove all breakpoints, __uprobe_unregister() is correct.\nThe problem is that register_for_each_vma(false) always returns 0\nand thus this logic does not work.\n\n1. Change verify_opcode() to return 0 rather than -EINVAL when\n   unregister detects the !is_swbp insn, we can treat this case\n   as success and currently unregister paths ignore the error\n   code anyway.\n\n2. Change remove_breakpoint() to propagate the error code from\n   write_opcode().\n\n3. Change register_for_each_vma(is_register \u003d\u003e false) to remove\n   as much breakpoints as possible but return non-zero if\n   remove_breakpoint() fails at least once.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "a5f658b71bc622b731961ea3addcf146ed3c599f",
      "tree": "52ebe6fb29ef955cee71ded01154d89d77577410",
      "parents": [
        "b64b9c937a533f0bfbfc9f6ac93d3c3e2f97ab02"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Sep 30 18:21:09 2012 +0200"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Oct 07 21:19:41 2012 +0200"
      },
      "message": "uprobes: Don\u0027t return success if alloc_uprobe() fails\n\nIf alloc_uprobe() fails uprobe_register() should return ENOMEM, not 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "dc92b1f9ab1e1665dbbc56911782358e7f9a49f9",
      "tree": "965ccb4a0f2c24a8b24adce415f6506246d07a90",
      "parents": [
        "5e090ed7af10729a396a25df43d69a236e789736",
        "ca16f580a5db7e60bfafe59a50bb133bd3347491"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 07 21:04:56 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 07 21:04:56 2012 +0900"
      },
      "message": "Merge branch \u0027virtio-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull virtio changes from Rusty Russell:\n \"New workflow: same git trees pulled by linux-next get sent straight to\n  Linus.  Git is awkward at shuffling patches compared with quilt or mq,\n  but that doesn\u0027t happen often once things get into my -next branch.\"\n\n* \u0027virtio-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (24 commits)\n  lguest: fix occasional crash in example launcher.\n  virtio-blk: Disable callback in virtblk_done()\n  virtio_mmio: Don\u0027t attempt to create empty virtqueues\n  virtio_mmio: fix off by one error allocating queue\n  drivers/virtio/virtio_pci.c: fix error return code\n  virtio: don\u0027t crash when device is buggy\n  virtio: remove CONFIG_VIRTIO_RING\n  virtio: add help to CONFIG_VIRTIO option.\n  virtio: support reserved vqs\n  virtio: introduce an API to set affinity for a virtqueue\n  virtio-ring: move queue_index to vring_virtqueue\n  virtio_balloon: not EXPERIMENTAL any more.\n  virtio-balloon: dependency fix\n  virtio-blk: fix NULL checking in virtblk_alloc_req()\n  virtio-blk: Add REQ_FLUSH and REQ_FUA support to bio path\n  virtio-blk: Add bio-based IO path for virtio-blk\n  virtio: console: fix error handling in init() function\n  tools: Fix pthread flag for Makefile of trace-agent used by virtio-trace\n  tools: Add guest trace agent as a user tool\n  virtio/console: Allocate scatterlist according to the current pipe size\n  ...\n"
    },
    {
      "commit": "7f60ba388f5b9dd8b0da463b394412dace3ab814",
      "tree": "b97b4fb5c8ad07a435e5b1b559988364764d5e8d",
      "parents": [
        "e665faa424a4a782aa986274920c1fc5b76f5560",
        "80c9d03c22f13a17df67b4b99a83ed5e9acf6093"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 07 17:30:50 2012 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 07 17:30:50 2012 +0900"
      },
      "message": "Merge tag \u0027for-v3.7\u0027 of git://git.infradead.org/users/cbou/linux-pstore\n\nPull pstore changes from Anton Vorontsov:\n\n 1) We no longer ad-hoc to the function tracer \"high level\"\n    infrastructure and no longer use its debugfs knobs.  The change\n    slightly touches kernel/trace directory, but it got the needed ack\n    from Steven Rostedt:\n\n      http://lkml.org/lkml/2012/8/21/688\n\n 2) Added maintainers entry;\n\n 3) A bunch of fixes, nothing special.\n\n* tag \u0027for-v3.7\u0027 of git://git.infradead.org/users/cbou/linux-pstore:\n  pstore: Avoid recursive spinlocks in the oops_in_progress case\n  pstore/ftrace: Convert to its own enable/disable debugfs knob\n  pstore/ram: Add missing platform_device_unregister\n  MAINTAINERS: Add pstore maintainers\n  pstore/ram: Mark ramoops_pstore_write_buf() as notrace\n  pstore/ram: Fix printk format warning\n  pstore/ram: Fix possible NULL dereference\n"
    },
    {
      "commit": "4965f5667f36a95b41cda6638875bc992bd7d18b",
      "tree": "554062719fbe5754197e1042024cceab1db4ddae",
      "parents": [
        "c99b6841d74a5c7d3698cc2a3ec44241fe64b769"
      ],
      "author": {
        "name": "T Makphaibulchoke",
        "email": "tmac@hp.com",
        "time": "Thu Oct 04 17:16:55 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:05:31 2012 +0900"
      },
      "message": "kernel/resource.c: fix stack overflow in __reserve_region_with_split()\n\nUsing a recursive call add a non-conflicting region in\n__reserve_region_with_split() could result in a stack overflow in the case\nthat the recursive calls are too deep.  Convert the recursive calls to an\niterative loop to avoid the problem.\n\nTested on a machine containing 135 regions.  The kernel no longer panicked\nwith stack overflow.\n\nAlso tested with code arbitrarily adding regions with no conflict,\nembedding two consecutive conflicts and embedding two non-consecutive\nconflicts.\n\nSigned-off-by: T Makphaibulchoke \u003ctmac@hp.com\u003e\nReviewed-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@gmail.com\u003e\nCc: Wei Yang \u003cweiyang@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0324b5a450f8a58304e93c5d886add24ca3527bc",
      "tree": "f3e77339d9964f550485e9d9b40897ba1b95b33f",
      "parents": [
        "322c9ec009fdc2bc9ccb8f55afab3f7ab8ac71ab"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Thu Oct 04 17:16:52 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:05:31 2012 +0900"
      },
      "message": "taskstats: cgroupstats_user_cmd() may leak on error\n\nIf prepare_reply() succeeds we have allocated memory for \u0027rep_skb\u0027.  If\nnla_reserve() then subsequently fails and returns NULL we fail to release\nthe memory we allocated, thus causing a leak.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nCc: Balbir Singh \u003cbsingharora@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": "de4ec99c32cca755a11f91abb86ed94ce11f2e60",
      "tree": "ae52a68ef9cd843dfaa6772b0d5117be26c1650d",
      "parents": [
        "9fb88442105f5fce96ea343927500d6307c8c550"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yongjun_wei@trendmicro.com.cn",
        "time": "Thu Oct 04 17:15:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:05:19 2012 +0900"
      },
      "message": "kdump: remove unneeded include\n\nThe inclusion of \u003cgenerated/utsrelease.h\u003e is unnecessary.\n\nSigned-off-by: Wei Yongjun \u003cyongjun_wei@trendmicro.com.cn\u003e\nReviewed-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ab1c309b344880d81494e9eab7fb27682bc6d9d",
      "tree": "9509df6703c921d268db3b4b52c29992bcc24e35",
      "parents": [
        "0f4cfb2e4e7a7e4e97a3e90e2ba1062f07fb2cb1"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Thu Oct 04 17:15:29 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:05:16 2012 +0900"
      },
      "message": "coredump: pass siginfo_t* to do_coredump() and below, not merely signr\n\nThis is a preparatory patch for the introduction of NT_SIGINFO elf note.\n\nWith this patch we pass \"siginfo_t *siginfo\" instead of \"int signr\" to\ndo_coredump() and put it into coredump_params.  It will be used by the\nnext patch.  Most changes are simple s/signr/siginfo-\u003esi_signo/.\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nReviewed-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Amerigo Wang \u003camwang@redhat.com\u003e\nCc: \"Jonathan M. Foote\" \u003cjmfoote@cert.org\u003e\nCc: Roland McGrath \u003croland@hack.frob.com\u003e\nCc: Pedro Alves \u003cpalves@redhat.com\u003e\nCc: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "179899fd5dc780fe3bcd44d0eb7823e3d855c855",
      "tree": "a2e7bf0098162e1fa940cad56bb1e99ec10440ca",
      "parents": [
        "046d662f481830e652ac34cd112249adde16452a"
      ],
      "author": {
        "name": "Alex Kelly",
        "email": "alex.page.kelly@gmail.com",
        "time": "Thu Oct 04 17:15:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:05:15 2012 +0900"
      },
      "message": "coredump: update coredump-related headers\n\nCreate a new header file, fs/coredump.h, which contains functions only\nused by the new coredump.c.  It also moves do_coredump to the\ninclude/linux/coredump.h header file, for consistency.\n\nSigned-off-by: Alex Kelly \u003calex.page.kelly@gmail.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nAcked-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": "046d662f481830e652ac34cd112249adde16452a",
      "tree": "ad13e968b4b02f9e2c35ce45f358477474df80d7",
      "parents": [
        "db9aeca97a58563e1ab927d157c9b5048f233e73"
      ],
      "author": {
        "name": "Alex Kelly",
        "email": "alex.page.kelly@gmail.com",
        "time": "Thu Oct 04 17:15:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:05:15 2012 +0900"
      },
      "message": "coredump: make core dump functionality optional\n\nAdds an expert Kconfig option, CONFIG_COREDUMP, which allows disabling of\ncore dump.  This saves approximately 2.6k in the compiled kernel, and\ncomplements CONFIG_ELF_CORE, which now depends on it.\n\nCONFIG_COREDUMP also disables coredump-related sysctls, except for\nsuid_dumpable and related functions, which are necessary for ptrace.\n\n[akpm@linux-foundation.org: fix binfmt_aout.c build]\nSigned-off-by: Alex Kelly \u003calex.page.kelly@gmail.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c0c0d4d1080840eabb3d055d2fd81911111c5fd",
      "tree": "16d86fae708a4ef2a5ed3180391ba0f45b081cda",
      "parents": [
        "f96972f2dc6365421cf2366ebd61ee4cf060c8d5"
      ],
      "author": {
        "name": "hongfeng",
        "email": "hongfeng@marvell.com",
        "time": "Thu Oct 04 17:12:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:04:48 2012 +0900"
      },
      "message": "poweroff: fix bug in orderly_poweroff()\n\norderly_poweroff is trying to poweroff platform in two steps:\n\nstep 1: Call user space application to poweroff\nstep 2: If user space poweroff fail, then do a force power off if force param\n        is set.\n\nThe bug here is, step 1 is always successful with param UMH_NO_WAIT, which obey\nthe design goal of orderly_poweroff.\n\nWe have two choices here:\nUMH_WAIT_EXEC which means wait for the exec, but not the process;\nUMH_WAIT_PROC which means wait for the process to complete.\nwe need to trade off the two choices:\n\nIf using UMH_WAIT_EXEC, there is potential issue comments by Serge E.\nHallyn: The exec will have started, but may for whatever (very unlikely)\nreason fail.\n\nIf using UMH_WAIT_PROC, there is potential issue comments by Eric W.\nBiederman: If the caller is not running in a kernel thread then we can\neasily get into a case where the user space caller will block waiting for\nus when we are waiting for the user space caller.\n\nThanks for their excellent ideas, based on the above discussion, we\nfinally choose UMH_WAIT_EXEC, which is much more safe, if the user\napplication really fails, we just complain the application itself, it\nseems a better choice here.\n\nSigned-off-by: Feng Hong \u003chongfeng@marvell.com\u003e\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f96972f2dc6365421cf2366ebd61ee4cf060c8d5",
      "tree": "8a8aa56a74371a8b39f55184631ea34030a147a4",
      "parents": [
        "9f6547a3209b78689ab8183630df87ca5e13fec0"
      ],
      "author": {
        "name": "Shawn Guo",
        "email": "shawn.guo@linaro.org",
        "time": "Thu Oct 04 17:12:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 06 03:04:47 2012 +0900"
      },
      "message": "kernel/sys.c: call disable_nonboot_cpus() in kernel_restart()\n\nAs kernel_power_off() calls disable_nonboot_cpus(), we may also want to\nhave kernel_restart() call disable_nonboot_cpus().  Doing so can help\nmachines that require boot cpu be the last alive cpu during reboot to\nsurvive with kernel restart.\n\nThis fixes one reboot issue seen on imx6q (Cortex-A9 Quad).  The machine\nrequires that the restart routine be run on the primary cpu rather than\nsecondary ones.  Otherwise, the secondary core running the restart\nroutine will fail to come to online after reboot.\n\nSigned-off-by: Shawn Guo \u003cshawn.guo@linaro.org\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": "95cf59ea72331d0093010543b8951bb43f262cac",
      "tree": "7d0bc786d071b50217040691c4e1ab5a6ff73296",
      "parents": [
        "3f1f33206c16c7b3839d71372bc2ac3f305aa802"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 02 15:41:23 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 05 13:59:07 2012 +0200"
      },
      "message": "perf: Fix perf_cgroup_switch for sw-events\n\nJiri reported that he could trigger the WARN_ON_ONCE() in\nperf_cgroup_switch() using sw-events. This is because sw-events share\na cpuctx with multiple PMUs.\n\nUse the -\u003eunique_pmu pointer to limit the pmu iteration to unique\ncpuctx instances.\n\nReported-and-Tested-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-so7wi2zf3jjzrwcutm2mkz0j@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "3f1f33206c16c7b3839d71372bc2ac3f305aa802",
      "tree": "683e2af07cb49e9a333f982e72088929027881c1",
      "parents": [
        "2e132b12f78d88672711ae1d87624951de1089ca"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 02 15:38:52 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 05 13:59:06 2012 +0200"
      },
      "message": "perf: Clarify perf_cpu_context::active_pmu usage by renaming it to ::unique_pmu\n\nStephane thought the perf_cpu_context::active_pmu name confusing and\nsuggested using \u0027unique_pmu\u0027 instead.\n\nThis pointer is a pointer to a \u0027random\u0027 pmu sharing the cpuctx\ninstance, therefore limiting a for_each_pmu loop to those where\ncpuctx-\u003eunique_pmu matches the pmu we get a loop over unique cpuctx\ninstances.\n\nSuggested-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-kxyjqpfj2fn9gt7kwu5ag9ks@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "301a5cba2887d1f640e6d5184b05a6d7132017d5",
      "tree": "a1fd9a6d2308734c9ed19d136a623f3923322d28",
      "parents": [
        "5f7865f3e44db4c73fdc454fb2af40806212a7ca"
      ],
      "author": {
        "name": "Tang Chen",
        "email": "tangchen@cn.fujitsu.com",
        "time": "Tue Sep 25 21:12:31 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 05 13:54:48 2012 +0200"
      },
      "message": "sched: Update sched_domains_numa_masks[][] when new cpus are onlined\n\nOnce array sched_domains_numa_masks[] []is defined, it is never updated.\n\nWhen a new cpu on a new node is onlined, the coincident member in\nsched_domains_numa_masks[][] is not initialized, and all the masks are 0.\nAs a result, the build_overlap_sched_groups() will initialize a NULL\nsched_group for the new cpu on the new node, which will lead to kernel panic:\n\n[ 3189.403280] Call Trace:\n[ 3189.403286]  [\u003cffffffff8106c36f\u003e] warn_slowpath_common+0x7f/0xc0\n[ 3189.403289]  [\u003cffffffff8106c3ca\u003e] warn_slowpath_null+0x1a/0x20\n[ 3189.403292]  [\u003cffffffff810b1d57\u003e] build_sched_domains+0x467/0x470\n[ 3189.403296]  [\u003cffffffff810b2067\u003e] partition_sched_domains+0x307/0x510\n[ 3189.403299]  [\u003cffffffff810b1ea2\u003e] ? partition_sched_domains+0x142/0x510\n[ 3189.403305]  [\u003cffffffff810fcc93\u003e] cpuset_update_active_cpus+0x83/0x90\n[ 3189.403308]  [\u003cffffffff810b22a8\u003e] cpuset_cpu_active+0x38/0x70\n[ 3189.403316]  [\u003cffffffff81674b87\u003e] notifier_call_chain+0x67/0x150\n[ 3189.403320]  [\u003cffffffff81664647\u003e] ? native_cpu_up+0x18a/0x1b5\n[ 3189.403328]  [\u003cffffffff810a044e\u003e] __raw_notifier_call_chain+0xe/0x10\n[ 3189.403333]  [\u003cffffffff81070470\u003e] __cpu_notify+0x20/0x40\n[ 3189.403337]  [\u003cffffffff8166663e\u003e] _cpu_up+0xe9/0x131\n[ 3189.403340]  [\u003cffffffff81666761\u003e] cpu_up+0xdb/0xee\n[ 3189.403348]  [\u003cffffffff8165667c\u003e] store_online+0x9c/0xd0\n[ 3189.403355]  [\u003cffffffff81437640\u003e] dev_attr_store+0x20/0x30\n[ 3189.403361]  [\u003cffffffff8124aa63\u003e] sysfs_write_file+0xa3/0x100\n[ 3189.403368]  [\u003cffffffff811ccbe0\u003e] vfs_write+0xd0/0x1a0\n[ 3189.403371]  [\u003cffffffff811ccdb4\u003e] sys_write+0x54/0xa0\n[ 3189.403375]  [\u003cffffffff81679c69\u003e] system_call_fastpath+0x16/0x1b\n[ 3189.403377] ---[ end trace 1e6cf85d0859c941 ]---\n[ 3189.403398] BUG: unable to handle kernel NULL pointer dereference at 0000000000000018\n\nThis patch registers a new notifier for cpu hotplug notify chain, and\nupdates sched_domains_numa_masks every time a new cpu is onlined or offlined.\n\nSigned-off-by: Tang Chen \u003ctangchen@cn.fujitsu.com\u003e\nSigned-off-by: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\n[ fixed compile warning ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1348578751-16904-3-git-send-email-tangchen@cn.fujitsu.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "5f7865f3e44db4c73fdc454fb2af40806212a7ca",
      "tree": "279a1f2588b875019c80e2ae779bd66bb6544137",
      "parents": [
        "2b17c545a4cdbbbadcd7f1e9684c2d7db8f085a6"
      ],
      "author": {
        "name": "Tang Chen",
        "email": "tangchen@cn.fujitsu.com",
        "time": "Tue Sep 25 21:12:30 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 05 13:54:46 2012 +0200"
      },
      "message": "sched: Ensure \u0027sched_domains_numa_levels\u0027 is safe to use in other functions\n\nWe should temporarily reset \u0027sched_domains_numa_levels\u0027 to 0 after\nit is reset to \u0027level\u0027 in sched_init_numa(). If it fails to allocate\nmemory for array sched_domains_numa_masks[][], the array will contain\nless then \u0027level\u0027 members. This could be dangerous when we use it to\niterate array sched_domains_numa_masks[][] in other functions.\n\nThis patch set sched_domains_numa_levels to 0 before initializing\narray sched_domains_numa_masks[][], and reset it to \u0027level\u0027 when\nsched_domains_numa_masks[][] is fully initialized.\n\nSigned-off-by: Tang Chen \u003ctangchen@cn.fujitsu.com\u003e\nSigned-off-by: Wen Congyang \u003cwency@cn.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1348578751-16904-2-git-send-email-tangchen@cn.fujitsu.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "2b17c545a4cdbbbadcd7f1e9684c2d7db8f085a6",
      "tree": "a783e9c98438f0028ef4411a81eb0ca2a8387f55",
      "parents": [
        "b3eda8d05c1afe722dc19be3fee7eeadc75e25e2"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Oct 04 01:46:44 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Oct 05 10:22:20 2012 +0200"
      },
      "message": "nohz: Fix one jiffy count too far in idle cputime\n\nWhen we stop the tick in idle, we save the current jiffies value\nin ts-\u003eidle_jiffies. This snapshot is substracted from the later\nvalue of jiffies when the tick is restarted and the resulting\ndelta is accounted as idle cputime. This is how we handle the\nidle cputime accounting without the tick.\n\nBut sometimes we need to schedule the next tick to some time in\nthe future instead of completely stopping it. In this case, a\ntick may happen before we restart the periodic behaviour and\nfrom that tick we account one jiffy to idle cputime as usual but\nwe also increment the ts-\u003eidle_jiffies snapshot by one so that\nwhen we compute the delta to account, we substract the one jiffy\nwe just accounted.\n\nTo prepare for stopping the tick outside idle, we introduced a\ncheck that prevents from fixing up that ts-\u003eidle_jiffies if we\nare not running the idle task. But we use idle_cpu() for that\nand this is a problem if we run the tick while another CPU\nremotely enqueues a ttwu to our runqueue:\n\nCPU 0:                            CPU 1:\n\ntick_sched_timer() {              ttwu_queue_remote()\n       if (idle_cpu(CPU 0))\n           ts-\u003eidle_jiffies++;\n}\n\nHere, idle_cpu() notes that \u0026rq-\u003ewake_list is not empty and\nhence won\u0027t consider the CPU as idle. As a result,\nts-\u003eidle_jiffies won\u0027t be incremented. But this is wrong because\nwe actually account the current jiffy to idle cputime. And that\njiffy won\u0027t get substracted from the nohz time delta. So in the\nend, this jiffy is accounted twice.\n\nFix this by changing idle_cpu(smp_processor_id()) with\nis_idle_task(current). This way the jiffy is substracted\ncorrectly even if a ttwu operation is enqueued on the CPU.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: \u003cstable@vger.kernel.org\u003e # 3.5+\nLink: http://lkml.kernel.org/r/1349308004-3482-1-git-send-email-fweisbec@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "ecefbd94b834fa32559d854646d777c56749ef1c",
      "tree": "ca8958900ad9e208a8e5fb7704f1b66dc76131b4",
      "parents": [
        "ce57e981f2b996aaca2031003b3f866368307766",
        "3d11df7abbff013b811d5615320580cd5d9d7d31"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 04 09:30:33 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 04 09:30:33 2012 -0700"
      },
      "message": "Merge tag \u0027kvm-3.7-1\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\nPull KVM updates from Avi Kivity:\n \"Highlights of the changes for this release include support for vfio\n  level triggered interrupts, improved big real mode support on older\n  Intels, a streamlines guest page table walker, guest APIC speedups,\n  PIO optimizations, better overcommit handling, and read-only memory.\"\n\n* tag \u0027kvm-3.7-1\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (138 commits)\n  KVM: s390: Fix vcpu_load handling in interrupt code\n  KVM: x86: Fix guest debug across vcpu INIT reset\n  KVM: Add resampling irqfds for level triggered interrupts\n  KVM: optimize apic interrupt delivery\n  KVM: MMU: Eliminate pointless temporary \u0027ac\u0027\n  KVM: MMU: Avoid access/dirty update loop if all is well\n  KVM: MMU: Eliminate eperm temporary\n  KVM: MMU: Optimize is_last_gpte()\n  KVM: MMU: Simplify walk_addr_generic() loop\n  KVM: MMU: Optimize pte permission checks\n  KVM: MMU: Update accessed and dirty bits after guest pagetable walk\n  KVM: MMU: Move gpte_access() out of paging_tmpl.h\n  KVM: MMU: Optimize gpte_access() slightly\n  KVM: MMU: Push clean gpte write protection out of gpte_access()\n  KVM: clarify kvmclock documentation\n  KVM: make processes waiting on vcpu mutex killable\n  KVM: SVM: Make use of asm.h\n  KVM: VMX: Make use of asm.h\n  KVM: VMX: Make lto-friendly\n  KVM: x86: lapic: Clean up find_highest_vector() and count_vectors()\n  ...\n\nConflicts:\n\tarch/s390/include/asm/processor.h\n\tarch/x86/kvm/i8259.c\n"
    },
    {
      "commit": "88265322c14cce39f7afbc416726ef4fac413298",
      "tree": "e4956f905ef617971f87788d8f8a09dbb66b70a3",
      "parents": [
        "65b99c74fdd325d1ffa2e5663295888704712604",
        "bf5308344527d015ac9a6d2bda4ad4d40fd7d943"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 21:38:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 21:38:48 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates from James Morris:\n \"Highlights:\n\n   - Integrity: add local fs integrity verification to detect offline\n     attacks\n   - Integrity: add digital signature verification\n   - Simple stacking of Yama with other LSMs (per LSS discussions)\n   - IBM vTPM support on ppc64\n   - Add new driver for Infineon I2C TIS TPM\n   - Smack: add rule revocation for subject labels\"\n\nFixed conflicts with the user namespace support in kernel/auditsc.c and\nsecurity/integrity/ima/ima_policy.c.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (39 commits)\n  Documentation: Update git repository URL for Smack userland tools\n  ima: change flags container data type\n  Smack: setprocattr memory leak fix\n  Smack: implement revoking all rules for a subject label\n  Smack: remove task_wait() hook.\n  ima: audit log hashes\n  ima: generic IMA action flag handling\n  ima: rename ima_must_appraise_or_measure\n  audit: export audit_log_task_info\n  tpm: fix tpm_acpi sparse warning on different address spaces\n  samples/seccomp: fix 31 bit build on s390\n  ima: digital signature verification support\n  ima: add support for different security.ima data types\n  ima: add ima_inode_setxattr/removexattr function and calls\n  ima: add inode_post_setattr call\n  ima: replace iint spinblock with rwlock/read_lock\n  ima: allocating iint improvements\n  ima: add appraise action keywords and default rules\n  ima: integrity appraisal extension\n  vfs: move ima_file_free before releasing the file\n  ...\n"
    },
    {
      "commit": "aab174f0df5d72d31caccf281af5f614fa254578",
      "tree": "2a172c5009c4ac8755e858593154c258ce7709a0",
      "parents": [
        "ca41cc96b2813221b05af57d0355157924de5a07",
        "2bd2c1941f141ad780135ccc1cd08ca71a24f10a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 20:25:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 20:25:04 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs update from Al Viro:\n\n - big one - consolidation of descriptor-related logics; almost all of\n   that is moved to fs/file.c\n\n   (BTW, I\u0027m seriously tempted to rename the result to fd.c.  As it is,\n   we have a situation when file_table.c is about handling of struct\n   file and file.c is about handling of descriptor tables; the reasons\n   are historical - file_table.c used to be about a static array of\n   struct file we used to have way back).\n\n   A lot of stray ends got cleaned up and converted to saner primitives,\n   disgusting mess in android/binder.c is still disgusting, but at least\n   doesn\u0027t poke so much in descriptor table guts anymore.  A bunch of\n   relatively minor races got fixed in process, plus an ext4 struct file\n   leak.\n\n - related thing - fget_light() partially unuglified; see fdget() in\n   there (and yes, it generates the code as good as we used to have).\n\n - also related - bits of Cyrill\u0027s procfs stuff that got entangled into\n   that work; _not_ all of it, just the initial move to fs/proc/fd.c and\n   switch of fdinfo to seq_file.\n\n - Alex\u0027s fs/coredump.c spiltoff - the same story, had been easier to\n   take that commit than mess with conflicts.  The rest is a separate\n   pile, this was just a mechanical code movement.\n\n - a few misc patches all over the place.  Not all for this cycle,\n   there\u0027ll be more (and quite a few currently sit in akpm\u0027s tree).\"\n\nFix up trivial conflicts in the android binder driver, and some fairly\nsimple conflicts due to two different changes to the sock_alloc_file()\ninterface (\"take descriptor handling from sock_alloc_file() to callers\"\nvs \"net: Providing protocol type via system.sockprotoname xattr of\n/proc/PID/fd entries\" adding a dentry name to the socket)\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (72 commits)\n  MAX_LFS_FILESIZE should be a loff_t\n  compat: fs: Generic compat_sys_sendfile implementation\n  fs: push rcu_barrier() from deactivate_locked_super() to filesystems\n  btrfs: reada_extent doesn\u0027t need kref for refcount\n  coredump: move core dump functionality into its own file\n  coredump: prevent double-free on an error path in core dumper\n  usb/gadget: fix misannotations\n  fcntl: fix misannotations\n  ceph: don\u0027t abuse d_delete() on failure exits\n  hypfs: -\u003ed_parent is never NULL or negative\n  vfs: delete surplus inode NULL check\n  switch simple cases of fget_light to fdget\n  new helpers: fdget()/fdput()\n  switch o2hb_region_dev_write() to fget_light()\n  proc_map_files_readdir(): don\u0027t bother with grabbing files\n  make get_file() return its argument\n  vhost_set_vring(): turn pollstart/pollstop into bool\n  switch prctl_set_mm_exe_file() to fget_light()\n  switch xfs_find_handle() to fget_light()\n  switch xfs_swapext() to fget_light()\n  ...\n"
    },
    {
      "commit": "16642a2e7be23bbda013fc32d8f6c68982eab603",
      "tree": "346ae485f485f6901e5d8150f0d34d178a7dd448",
      "parents": [
        "51562cba98939da0a1d10fe7c25359b77a069033",
        "b9142167a2bb979b58b98ffcd928a311b55cbd9f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 18:32:35 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 18:32:35 2012 -0700"
      },
      "message": "Merge tag \u0027pm-for-3.7-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management updates from Rafael J Wysocki:\n\n - Improved system suspend/resume and runtime PM handling for the SH\n   TMU, CMT and MTU2 clock event devices (also used by ARM/shmobile).\n\n - Generic PM domains framework extensions related to cpuidle support\n   and domain objects lookup using names.\n\n - ARM/shmobile power management updates including improved support for\n   the SH7372\u0027s A4S power domain containing the CPU core.\n\n - cpufreq changes related to AMD CPUs support from Matthew Garrett,\n   Andre Przywara and Borislav Petkov.\n\n - cpu0 cpufreq driver from Shawn Guo.\n\n - cpufreq governor fixes related to the relaxing of limit from Michal\n   Pecio.\n\n - OMAP cpufreq updates from Axel Lin and Richard Zhao.\n\n - cpuidle ladder governor fixes related to the disabling of states from\n   Carsten Emde and me.\n\n - Runtime PM core updates related to the interactions with the system\n   suspend core from Alan Stern and Kevin Hilman.\n\n - Wakeup sources modification allowing more helper functions to be\n   called from interrupt context from John Stultz and additional\n   diagnostic code from Todd Poynor.\n\n - System suspend error code path fix from Feng Hong.\n\nFixed up conflicts in cpufreq/powernow-k8 that stemmed from the\nworkqueue fixes conflicting fairly badly with the removal of support for\nhardware P-state chips.  The changes were independent but somewhat\nintertwined.\n\n* tag \u0027pm-for-3.7-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (76 commits)\n  Revert \"PM QoS: Use spinlock in the per-device PM QoS constraints code\"\n  PM / Runtime: let rpm_resume() succeed if RPM_ACTIVE, even when disabled, v2\n  cpuidle: rename function name \"__cpuidle_register_driver\", v2\n  cpufreq: OMAP: Check IS_ERR() instead of NULL for omap_device_get_by_hwmod_name\n  cpuidle: remove some empty lines\n  PM: Prevent runtime suspend during system resume\n  PM QoS: Use spinlock in the per-device PM QoS constraints code\n  PM / Sleep: use resume event when call dpm_resume_early\n  cpuidle / ACPI : move cpuidle_device field out of the acpi_processor_power structure\n  ACPI / processor: remove pointless variable initialization\n  ACPI / processor: remove unused function parameter\n  cpufreq: OMAP: remove loops_per_jiffy recalculate for smp\n  sections: fix section conflicts in drivers/cpufreq\n  cpufreq: conservative: update frequency when limits are relaxed\n  cpufreq / ondemand: update frequency when limits are relaxed\n  properly __init-annotate pm_sysrq_init()\n  cpufreq: Add a generic cpufreq-cpu0 driver\n  PM / OPP: Initialize OPP table from device tree\n  ARM: add cpufreq transiton notifier to adjust loops_per_jiffy for smp\n  cpufreq: Remove support for hardware P-state chips from powernow-k8\n  ...\n"
    },
    {
      "commit": "aecdc33e111b2c447b622e287c6003726daa1426",
      "tree": "3e7657eae4b785e1a1fb5dfb225dbae0b2f0cfc6",
      "parents": [
        "a20acf99f75e49271381d65db097c9763060a1e8",
        "a3a6cab5ea10cca64d036851fe0d932448f2fe4f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 13:38:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 13:38:27 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking changes from David Miller:\n\n 1) GRE now works over ipv6, from Dmitry Kozlov.\n\n 2) Make SCTP more network namespace aware, from Eric Biederman.\n\n 3) TEAM driver now works with non-ethernet devices, from Jiri Pirko.\n\n 4) Make openvswitch network namespace aware, from Pravin B Shelar.\n\n 5) IPV6 NAT implementation, from Patrick McHardy.\n\n 6) Server side support for TCP Fast Open, from Jerry Chu and others.\n\n 7) Packet BPF filter supports MOD and XOR, from Eric Dumazet and Daniel\n    Borkmann.\n\n 8) Increate the loopback default MTU to 64K, from Eric Dumazet.\n\n 9) Use a per-task rather than per-socket page fragment allocator for\n    outgoing networking traffic.  This benefits processes that have very\n    many mostly idle sockets, which is quite common.\n\n    From Eric Dumazet.\n\n10) Use up to 32K for page fragment allocations, with fallbacks to\n    smaller sizes when higher order page allocations fail.  Benefits are\n    a) less segments for driver to process b) less calls to page\n    allocator c) less waste of space.\n\n    From Eric Dumazet.\n\n11) Allow GRO to be used on GRE tunnels, from Eric Dumazet.\n\n12) VXLAN device driver, one way to handle VLAN issues such as the\n    limitation of 4096 VLAN IDs yet still have some level of isolation.\n    From Stephen Hemminger.\n\n13) As usual there is a large boatload of driver changes, with the scale\n    perhaps tilted towards the wireless side this time around.\n\nFix up various fairly trivial conflicts, mostly caused by the user\nnamespace changes.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1012 commits)\n  hyperv: Add buffer for extended info after the RNDIS response message.\n  hyperv: Report actual status in receive completion packet\n  hyperv: Remove extra allocated space for recv_pkt_list elements\n  hyperv: Fix page buffer handling in rndis_filter_send_request()\n  hyperv: Fix the missing return value in rndis_filter_set_packet_filter()\n  hyperv: Fix the max_xfer_size in RNDIS initialization\n  vxlan: put UDP socket in correct namespace\n  vxlan: Depend on CONFIG_INET\n  sfc: Fix the reported priorities of different filter types\n  sfc: Remove EFX_FILTER_FLAG_RX_OVERRIDE_IP\n  sfc: Fix loopback self-test with separate_tx_channels\u003d1\n  sfc: Fix MCDI structure field lookup\n  sfc: Add parentheses around use of bitfield macro arguments\n  sfc: Fix null function pointer in efx_sriov_channel_type\n  vxlan: virtual extensible lan\n  igmp: export symbol ip_mc_leave_group\n  netlink: add attributes to fdb interface\n  tg3: unconditionally select HWMON support when tg3 is enabled.\n  Revert \"net: ti cpsw ethernet: allow reading phy interface mode from DT\"\n  gre: fix sparse warning\n  ...\n"
    },
    {
      "commit": "437589a74b6a590d175f86cf9f7b2efcee7765e7",
      "tree": "37bf8635b1356d80ef002b00e84f3faf3d555a63",
      "parents": [
        "68d47a137c3bef754923bccf73fb639c9b0bbd5e",
        "72235465864d84cedb2d9f26f8e1de824ee20339"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 11:11:09 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 02 11:11:09 2012 -0700"
      },
      "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 \"This is a mostly modest set of changes to enable basic user namespace\n  support.  This allows the code to code to compile with user namespaces\n  enabled and removes the assumption there is only the initial user\n  namespace.  Everything is converted except for the most complex of the\n  filesystems: autofs4, 9p, afs, ceph, cifs, coda, fuse, gfs2, ncpfs,\n  nfs, ocfs2 and xfs as those patches need a bit more review.\n\n  The strategy is to push kuid_t and kgid_t values are far down into\n  subsystems and filesystems as reasonable.  Leaving the make_kuid and\n  from_kuid operations to happen at the edge of userspace, as the values\n  come off the disk, and as the values come in from the network.\n  Letting compile type incompatible compile errors (present when user\n  namespaces are enabled) guide me to find the issues.\n\n  The most tricky areas have been the places where we had an implicit\n  union of uid and gid values and were storing them in an unsigned int.\n  Those places were converted into explicit unions.  I made certain to\n  handle those places with simple trivial patches.\n\n  Out of that work I discovered we have generic interfaces for storing\n  quota by projid.  I had never heard of the project identifiers before.\n  Adding full user namespace support for project identifiers accounts\n  for most of the code size growth in my git tree.\n\n  Ultimately there will be work to relax privlige checks from\n  \"capable(FOO)\" to \"ns_capable(user_ns, FOO)\" where it is safe allowing\n  root in a user names to do those things that today we only forbid to\n  non-root users because it will confuse suid root applications.\n\n  While I was pushing kuid_t and kgid_t changes deep into the audit code\n  I made a few other cleanups.  I capitalized on the fact we process\n  netlink messages in the context of the message sender.  I removed\n  usage of NETLINK_CRED, and started directly using current-\u003etty.\n\n  Some of these patches have also made it into maintainer trees, with no\n  problems from identical code from different trees showing up in\n  linux-next.\n\n  After reading through all of this code I feel like I might be able to\n  win a game of kernel trivial pursuit.\"\n\nFix up some fairly trivial conflicts in netfilter uid/git logging code.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (107 commits)\n  userns: Convert the ufs filesystem to use kuid/kgid where appropriate\n  userns: Convert the udf filesystem to use kuid/kgid where appropriate\n  userns: Convert ubifs to use kuid/kgid\n  userns: Convert squashfs to use kuid/kgid where appropriate\n  userns: Convert reiserfs to use kuid and kgid where appropriate\n  userns: Convert jfs to use kuid/kgid where appropriate\n  userns: Convert jffs2 to use kuid and kgid where appropriate\n  userns: Convert hpfs to use kuid and kgid where appropriate\n  userns: Convert btrfs to use kuid/kgid where appropriate\n  userns: Convert bfs to use kuid/kgid where appropriate\n  userns: Convert affs to use kuid/kgid wherwe appropriate\n  userns: On alpha modify linux_to_osf_stat to use convert from kuids and kgids\n  userns: On ia64 deal with current_uid and current_gid being kuid and kgid\n  userns: On ppc convert current_uid from a kuid before printing.\n  userns: Convert s390 getting uid and gid system calls to use kuid and kgid\n  userns: Convert s390 hypfs to use kuid and kgid where appropriate\n  userns: Convert binder ipc to use kuids\n  userns: Teach security_path_chown to take kuids and kgids\n  userns: Add user namespace support to IMA\n  userns: Convert EVM to deal with kuids and kgids in it\u0027s hmac computation\n  ...\n"
    }
  ],
  "next": "68d47a137c3bef754923bccf73fb639c9b0bbd5e"
}
