)]}'
{
  "log": [
    {
      "commit": "1456c75a80dfd3fd02b9ea44d1223bb51a5683d5",
      "tree": "b883150562354c25aa4ddff37e8cc054e5c76751",
      "parents": [
        "a6b881a5b8d4fa2135e55a74be6d6b1e17e445dd",
        "b3e8692b4dde5cf5fc60e4b95385229a72623182"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 21 12:25:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 21 12:25:24 2012 -0700"
      },
      "message": "Merge branch \u0027audit-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs\n\nPull audit-tree fixes from Miklos Szeredi:\n \"The audit subsystem maintainers (Al and Eric) are not responding to\n  repeated resends.  Eric did ack them a while ago, but no response\n  since then.  So I\u0027m sending these directly to you.\"\n\n* \u0027audit-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:\n  audit: clean up refcounting in audit-tree\n  audit: fix refcounting in audit-tree\n  audit: don\u0027t free_chunk() after fsnotify_add_mark()\n"
    },
    {
      "commit": "f341861fb0b701139849f8a85c2d3cdff466e8e8",
      "tree": "a6e6fedd03fdb923828fa7143a0363738cd7dfcb",
      "parents": [
        "ec5da7f8dc023fc4dcbdd42e87dad231d2c2812d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Aug 21 15:05:14 2012 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 21 09:11:44 2012 -0700"
      },
      "message": "task_work: add a scheduling point in task_work_run()\n\nIt seems commit 4a9d4b024a31 (\"switch fput to task_work_add\") re-\nintroduced the problem addressed in 944be0b22472 (\"close_files(): add\nscheduling point\")\n\nIf a server process with a lot of files (say 2 million tcp sockets) is\nkilled, we can spend a lot of time in task_work_run() and trigger a soft\nlockup.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "53795ced6e270fbb5cef7b527a71ffbb69657c78",
      "tree": "0e0532682837493bb84a38df10bc115521226c81",
      "parents": [
        "f78602ab7cbc902559406d2e8e21517056708295",
        "8f6189684eb4e85e6c593cd710693f09c944450a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 20 10:35:05 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 20 10:35:05 2012 -0700"
      },
      "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\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Fix migration thread runtime bogosity\n  sched,rt: fix isolated CPUs leaving root_task_group indefinitely throttled\n  sched,cgroup: Fix up task_groups list\n  sched: fix divide by zero at {thread_group,task}_times\n  sched, cgroup: Reduce rq-\u003elock hold times for large cgroup hierarchies\n"
    },
    {
      "commit": "90785be317dabdef6e9763e75e370991a6a46c91",
      "tree": "39335e323aab2ca9eb5ff5fe4a0646070acd0364",
      "parents": [
        "6dab7ede9390d4d937cb89feca932e4fd575d2da",
        "d1b5153f3ec83789b71d64efaf2a880c8fe6358e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 19 08:41:29 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 19 08:41:29 2012 -0700"
      },
      "message": "Merge branch \u0027alpha\u0027 (alpha architecture patches)\n\nMerge alpha architecture update from Michael Cree:\n \"The Alpha Maintainer, Matt Turner, is currently unavailable, so I have\n  collected up patches that have been posted to the linux-alpha mailing\n  list over the last couple of months, and are forwarding them to you in\n  the hope that you are prepared to accept them via me.\n\n  The patches by Al Viro and myself I have been running against kernels\n  for two months now so have had quite a bit of testing.  All except one\n  patch were intended for the 3.5 kernel but because of Matt\u0027s\n  unavailability never got forwarded to you.\"\n\n* emailed patches from Michael Cree \u003cmcree@orcon.net.nz\u003e: (9 commits)\n  alpha: Fix fall-out from disintegrating asm/system.h\n  Redefine ATOMIC_INIT and ATOMIC64_INIT to drop the casts\n  alpha: fix fpu.h usage in userspace\n  alpha/mm/fault.c: Port OOM changes to do_page_fault\n  alpha: take kernel_execve() out of entry.S\n  alpha: take a bunch of syscalls into osf_sys.c\n  alpha: Use new generic strncpy_from_user() and strnlen_user()\n  alpha: Wire up cross memory attach syscalls\n  alpha: Don\u0027t export SOCK_NONBLOCK to user space.\n"
    },
    {
      "commit": "be53db6e4edd9dc013b21a929ad2b142dea8b9c0",
      "tree": "7c4604295375f432071c2077362df2e6c278af53",
      "parents": [
        "f2db633d301b4b50f5f93de0e8314cc81e9bc7de"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sun Aug 19 14:40:59 2012 +1200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 19 08:41:19 2012 -0700"
      },
      "message": "alpha: take a bunch of syscalls into osf_sys.c\n\nNew helper: current_thread_info().  Allows to do a bunch of odd syscalls\nin C. While we are at it, there had never been a reason to do\nosf_getpriority() in assembler.  We also get \"namespace\"-aware (read:\nconsistent with getuid(2), etc.) behaviour from getx?id() syscalls now.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Michael Cree \u003cmcree@orcon.net.nz\u003e\nAcked-by: Matt Turner \u003cmattst88@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b3e8692b4dde5cf5fc60e4b95385229a72623182",
      "tree": "5145a92e403b7faa54ac47b24d0791ca9c6c01bc",
      "parents": [
        "a2140fc0cb0325bb6384e788edd27b9a568714e2"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Aug 15 12:55:22 2012 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Aug 15 12:55:22 2012 +0200"
      },
      "message": "audit: clean up refcounting in audit-tree\n\nDrop the initial reference by fsnotify_init_mark early instead of\naudit_tree_freeing_mark() at destroy time.\n\nIn the cases we destroy the mark before we drop the initial reference we need to\nget rid of the get_mark that balances the put_mark in audit_tree_freeing_mark().\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\n"
    },
    {
      "commit": "a2140fc0cb0325bb6384e788edd27b9a568714e2",
      "tree": "2dfe6d8a064d478f1bd376241ecee42af10d6cf1",
      "parents": [
        "0fe33aae0e94b4097dd433c9399e16e17d638cd8"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Aug 15 12:55:22 2012 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Aug 15 12:55:22 2012 +0200"
      },
      "message": "audit: fix refcounting in audit-tree\n\nRefcounting of fsnotify_mark in audit tree is broken.  E.g:\n\n                              refcount\ncreate_chunk\n  alloc_chunk                 1\n  fsnotify_add_mark           2\n\nuntag_chunk\n  fsnotify_get_mark           3\n  fsnotify_destroy_mark\n    audit_tree_freeing_mark   2\n  fsnotify_put_mark           1\n  fsnotify_put_mark           0\n  via destroy_list\n    fsnotify_mark_destroy    -1\n\nThis was reported by various people as triggering Oops when stopping auditd.\n\nWe could just remove the put_mark from audit_tree_freeing_mark() but that would\nbreak freeing via inode destruction.  So this patch simply omits a put_mark\nafter calling destroy_mark or adds a get_mark before.\n\nThe additional get_mark is necessary where there\u0027s no other put_mark after\nfsnotify_destroy_mark() since it assumes that the caller is holding a reference\n(or the inode is keeping the mark pinned, not the case here AFAICS).\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nReported-by: Valentin Avram \u003caval13@gmail.com\u003e\nReported-by: Peter Moody \u003cpmoody@google.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nCC: stable@vger.kernel.org\n"
    },
    {
      "commit": "0fe33aae0e94b4097dd433c9399e16e17d638cd8",
      "tree": "799d8107cc7b000c1fba87f87b59cb6d467dc9a2",
      "parents": [
        "ddf343f635fe4440cad528e12f96f28bd50aa099"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Aug 15 12:55:22 2012 +0200"
      },
      "committer": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Aug 15 12:55:22 2012 +0200"
      },
      "message": "audit: don\u0027t free_chunk() after fsnotify_add_mark()\n\nDon\u0027t do free_chunk() after fsnotify_add_mark().  That one does a delayed unref\nvia the destroy list and this results in use-after-free.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nCC: stable@vger.kernel.org\n"
    },
    {
      "commit": "8f6189684eb4e85e6c593cd710693f09c944450a",
      "tree": "a733526c634f4a7ea1366dc0da69371650c1d1d2",
      "parents": [
        "e221d028bb08b47e624c5f0a31732c642db9d19a"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "mgalbraith@suse.de",
        "time": "Sat Aug 04 05:44:14 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:55 2012 +0200"
      },
      "message": "sched: Fix migration thread runtime bogosity\n\nMake stop scheduler class do the same accounting as other classes,\n\nMigration threads can be caught in the act while doing exec balancing,\nleading to the below due to use of unmaintained -\u003ese.exec_start.  The\nload that triggered this particular instance was an apparently out of\ncontrol heavily threaded application that does system monitoring in\nwhat equated to an exec bomb, with one of the VERY frequently migrated\ntasks being ps.\n\n%CPU   PID USER     CMD\n99.3    45 root     [migration/10]\n97.7    53 root     [migration/12]\n97.0    57 root     [migration/13]\n90.1    49 root     [migration/11]\n89.6    65 root     [migration/15]\n88.7    17 root     [migration/3]\n80.4    37 root     [migration/8]\n78.1    41 root     [migration/9]\n44.2    13 root     [migration/2]\n\nSigned-off-by: Mike Galbraith \u003cmgalbraith@suse.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344051854.6739.19.camel@marge.simpson.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e221d028bb08b47e624c5f0a31732c642db9d19a",
      "tree": "0bfe6324f58c7c27fcd7b3dafd749903ab598ecc",
      "parents": [
        "35cf4e50b16331def6cfcbee11e49270b6db07f5"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 07 10:02:38 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:55 2012 +0200"
      },
      "message": "sched,rt: fix isolated CPUs leaving root_task_group indefinitely throttled\n\nRoot task group bandwidth replenishment must service all CPUs, regardless of\nwhere the timer was last started, and regardless of the isolation mechanism,\nlest \u0027Quoth the Raven, \"Nevermore\"\u0027 become rt scheduling policy.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344326558.6968.25.camel@marge.simpson.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "35cf4e50b16331def6cfcbee11e49270b6db07f5",
      "tree": "0db0da974b4c4a563811bbf734a8d7cf116ae597",
      "parents": [
        "bea6832cc8c4a0a9a65dd17da6aaa657fe27bc3e"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Aug 07 05:00:13 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:54 2012 +0200"
      },
      "message": "sched,cgroup: Fix up task_groups list\n\nWith multiple instances of task_groups, for_each_rt_rq() is a noop,\nno task groups having been added to the rt.c list instance.  This\nrenders __enable/disable_runtime() and print_rt_stats() noop, the\nuser (non) visible effect being that rt task groups are missing in\n/proc/sched_debug.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: stable@kernel.org # v3.3+\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1344308413.6846.7.camel@marge.simpson.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bea6832cc8c4a0a9a65dd17da6aaa657fe27bc3e",
      "tree": "b5b28462080ba5900d4318858a7318997063ea96",
      "parents": [
        "a35b6466aabb051568b844e8c63f87a356d3d129"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "sgruszka@redhat.com",
        "time": "Wed Aug 08 11:27:15 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:54 2012 +0200"
      },
      "message": "sched: fix divide by zero at {thread_group,task}_times\n\nOn architectures where cputime_t is 64 bit type, is possible to trigger\ndivide by zero on do_div(temp, (__force u32) total) line, if total is a\nnon zero number but has lower 32 bit\u0027s zeroed. Removing casting is not\na good solution since some do_div() implementations do cast to u32\ninternally.\n\nThis problem can be triggered in practice on very long lived processes:\n\n  PID: 2331   TASK: ffff880472814b00  CPU: 2   COMMAND: \"oraagent.bin\"\n   #0 [ffff880472a51b70] machine_kexec at ffffffff8103214b\n   #1 [ffff880472a51bd0] crash_kexec at ffffffff810b91c2\n   #2 [ffff880472a51ca0] oops_end at ffffffff814f0b00\n   #3 [ffff880472a51cd0] die at ffffffff8100f26b\n   #4 [ffff880472a51d00] do_trap at ffffffff814f03f4\n   #5 [ffff880472a51d60] do_divide_error at ffffffff8100cfff\n   #6 [ffff880472a51e00] divide_error at ffffffff8100be7b\n      [exception RIP: thread_group_times+0x56]\n      RIP: ffffffff81056a16  RSP: ffff880472a51eb8  RFLAGS: 00010046\n      RAX: bc3572c9fe12d194  RBX: ffff880874150800  RCX: 0000000110266fad\n      RDX: 0000000000000000  RSI: ffff880472a51eb8  RDI: 001038ae7d9633dc\n      RBP: ffff880472a51ef8   R8: 00000000b10a3a64   R9: ffff880874150800\n      R10: 00007fcba27ab680  R11: 0000000000000202  R12: ffff880472a51f08\n      R13: ffff880472a51f10  R14: 0000000000000000  R15: 0000000000000007\n      ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018\n   #7 [ffff880472a51f00] do_sys_times at ffffffff8108845d\n   #8 [ffff880472a51f40] sys_times at ffffffff81088524\n   #9 [ffff880472a51f80] system_call_fastpath at ffffffff8100b0f2\n      RIP: 0000003808caac3a  RSP: 00007fcba27ab6d8  RFLAGS: 00000202\n      RAX: 0000000000000064  RBX: ffffffff8100b0f2  RCX: 0000000000000000\n      RDX: 00007fcba27ab6e0  RSI: 000000000076d58e  RDI: 00007fcba27ab6e0\n      RBP: 00007fcba27ab700   R8: 0000000000000020   R9: 000000000000091b\n      R10: 00007fcba27ab680  R11: 0000000000000202  R12: 00007fff9ca41940\n      R13: 0000000000000000  R14: 00007fcba27ac9c0  R15: 00007fff9ca41940\n      ORIG_RAX: 0000000000000064  CS: 0033  SS: 002b\n\nCc: stable@vger.kernel.org\nSigned-off-by: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120808092714.GA3580@redhat.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a35b6466aabb051568b844e8c63f87a356d3d129",
      "tree": "a5d38cce8290a60f6729f97591cfa25d545c6474",
      "parents": [
        "b9403130a5350fca59a50ed11c198cb8c7e54119"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Aug 08 21:46:40 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 18:41:54 2012 +0200"
      },
      "message": "sched, cgroup: Reduce rq-\u003elock hold times for large cgroup hierarchies\n\nPeter Portante reported that for large cgroup hierarchies (and or on\nlarge CPU counts) we get immense lock contention on rq-\u003elock and stuff\nstops working properly.\n\nHis workload was a ton of processes, each in their own cgroup,\neverybody idling except for a sporadic wakeup once every so often.\n\nIt was found that:\n\n  schedule()\n    idle_balance()\n      load_balance()\n        local_irq_save()\n        double_rq_lock()\n        update_h_load()\n          walk_tg_tree(tg_load_down)\n            tg_load_down()\n\nResults in an entire cgroup hierarchy walk under rq-\u003elock for every\nnew-idle balance and since new-idle balance isn\u0027t throttled this\nresults in a lot of work while holding the rq-\u003elock.\n\nThis patch does two things, it removes the work from under rq-\u003elock\nbased on the good principle of race and pray which is widely employed\nin the load-balancer as a whole. And secondly it throttles the\nupdate_h_load() calculation to max once per jiffy.\n\nI considered excluding update_h_load() for new-idle balance\nall-together, but purely relying on regular balance passes to update\nthis data might not work out under some rare circumstances where the\nnew-idle busiest isn\u0027t the regular busiest for a while (unlikely, but\na nightmare to debug if someone hits it and suffers).\n\nCc: pjt@google.com\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nReported-by: Peter Portante \u003cpportant@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-aaarrzfpnaam7pqrekofu8a6@git.kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e4e139bebd9cc2c867950ad8ea6814e542dbcc6f",
      "tree": "269b6fa6014b06aac70b4e2fbfc2299b2fd09fbc",
      "parents": [
        "88de3d0d714bff03b2e0a3fcd5b8b346a392e9ea",
        "07368d32f1a67e797def08cf2ee3ea1647b204b6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 12 21:34:09 2012 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 12 21:34:09 2012 +0300"
      },
      "message": "Merge tag \u0027pm-for-3.6-rc2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPull power management fixes from Rafael J. Wysocki:\n\n - Fix for two recent regressions in the generic PM domains framework.\n\n - Revert of a commit that introduced a resume regression and is\n   conceptually incorrect in my opinion.\n\n - Fix for a return value in pcc-cpufreq.c from Julia Lawall.\n\n - RTC wakeup signaling fix from Neil Brown.\n\n - Suppression of compiler warnings for CONFIG_PM_SLEEP unset in ACPI,\n   platform/x86 and TPM drivers.\n\n* tag \u0027pm-for-3.6-rc2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  tpm_tis / PM: Fix unused function warning for CONFIG_PM_SLEEP\n  platform / x86 / PM: Fix unused function warnings for CONFIG_PM_SLEEP\n  ACPI / PM: Fix unused function warnings for CONFIG_PM_SLEEP\n  Revert \"NMI watchdog: fix for lockup detector breakage on resume\"\n  PM: Make dev_pm_get_subsys_data() always return 0 on success\n  drivers/cpufreq/pcc-cpufreq.c: fix error return code\n  RTC: Avoid races between RTC alarm wakeup and suspend.\n"
    },
    {
      "commit": "e3756477aec028427fec767957c0d4b6cfb87208",
      "tree": "c92974b2e75dea5f050b2060cf181a44c2d49643",
      "parents": [
        "f4ba394c1b02e7fc2179fda8d3941a5b3b65efb6"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Fri Aug 10 15:07:09 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 12 21:25:50 2012 +0300"
      },
      "message": "printk: Fix calculation of length used to discard records\n\nWhile tracking down a weird buffer overflow issue in a program that\nlooked to be sane, I started double checking the length returned by\nsyslog(SYSLOG_ACTION_READ_ALL, ...) to make sure it wasn\u0027t overflowing\nthe buffer.\n\nSure enough, it was.  I saw this in strace:\n\n  11339 syslog(SYSLOG_ACTION_READ_ALL, \"\u003c5\u003e[244017.708129] REISERFS (dev\"..., 8192) \u003d 8279\n\nIt turns out that the loops that calculate how much space the entries\nwill take when they\u0027re copied don\u0027t include the newlines and prefixes\nthat will be included in the final output since prev flags is passed as\nzero.\n\nThis patch properly accounts for it and fixes the overflow.\n\nCC: stable@kernel.org\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "300d3739e873d50d4c6e3656f89007a217fb1d29",
      "tree": "05ed9e06da5920926e0048ee0591a724ee487968",
      "parents": [
        "77254950bb174d637cd88d1a74e137ecf3185a65"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Aug 07 13:50:22 2012 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Aug 08 20:49:45 2012 +0200"
      },
      "message": "Revert \"NMI watchdog: fix for lockup detector breakage on resume\"\n\nRevert commit 45226e9 (NMI watchdog: fix for lockup detector breakage\non resume) which breaks resume from system suspend on my SH7372\nMackerel board (by causing a NULL pointer dereference to happen) and\nis generally wrong, because it abuses the CPU hotplug functionality\nin a shamelessly blatant way.\n\nThe original issue should be addressed through appropriate syscore\nresume callback instead.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "1d17d17484d40f2d5b35c79518597a2b25296996",
      "tree": "a11000cb9a7197b5d70573d0faa417cb36ba0e4b",
      "parents": [
        "e7882d6c40874a5b5033ca85f7508a602a60b662"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sat Aug 04 21:21:14 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Sun Aug 05 12:37:14 2012 +0200"
      },
      "message": "time: Fix adjustment cleanup bug in timekeeping_adjust()\n\nTetsuo Handa reported that sporadically the system clock starts\ncounting up too quickly which is enough to confuse the hangcheck\ntimer to print a bogus stall warning.\n\nCommit 2a8c0883 \"time: Move xtime_nsec adjustment underflow handling\ntimekeeping_adjust\" overlooked this exit path:\n\n        } else\n                return;\n\nwhich should really be a proper exit sequence, fixing the bug as a\nside effect.\n\nAlso make the flow more readable by properly balancing curly\nbraces.\n\nReported-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e wrote:\nTested-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e wrote:\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: john.stultz@linaro.org\nCc: a.p.zijlstra@chello.nl\nCc: richardcochran@gmail.com\nCc: prarit@redhat.com\nLink: http://lkml.kernel.org/r/20120804192114.GA28347@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c4e62d67854e247b09ffe763163057237c8b1614",
      "tree": "ddcdca15427671ab44334320e91b67877aa95f1a",
      "parents": [
        "1ca0049f2c8b28611f30798aa75858763c9fcbea",
        "6f7b0a2a5c0fb03be7c25bd1745baa50582348ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 11:00:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 11:00:26 2012 -0700"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull futex fixes from Ingo Molnar:\n \"A couple of futex fixes from Darren Hart: two bugs reported by Dave\n  Jones (found with his trinity test) and Dan Carpenter through static\n  analysis.  The third found while debugging the first two.\"\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  futex: Forbid uaddr \u003d\u003d uaddr2 in futex_wait_requeue_pi()\n  futex: Fix bug in WARN_ON for NULL q.pi_state\n  futex: Test for pi_mutex on fault in futex_wait_requeue_pi()\n"
    },
    {
      "commit": "ddc5057c1c1fb3e99afeeef45d2b8ff9597e6707",
      "tree": "801e4842f3a4dce2d777336b54f3caf075975025",
      "parents": [
        "fcc1d2a9cea4ba97c9800e1de0748003bba07335",
        "4e250fdde9be50581c7dd5fed88c9b9960615314"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:58:57 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:58:57 2012 -0700"
      },
      "message": "Merge branch \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer fixes from Ingo Molnar:\n \"One regression fix, and a couple of cleanups that clean up the code\n  flow in areas that had high-profile bugs recently.\"\n\n* \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  time: Remove all direct references to timekeeper\n  time: Clean up offs_real/wall_to_mono and offs_boot/total_sleep_time updates\n  time: Clean up stray newlines\n  time/jiffies: Rename ACTHZ to SHIFTED_HZ\n  time/jiffies: Allow CLOCK_TICK_RATE to be undefined\n  time: Fix casting issue in tk_set_xtime and tk_xtime_add\n"
    },
    {
      "commit": "fcc1d2a9cea4ba97c9800e1de0748003bba07335",
      "tree": "c27c56275048e33e61097202cabaa48ef49f1314",
      "parents": [
        "bd463a06064c4bc8497f6aa6dfb4437be8f07a3b",
        "b9403130a5350fca59a50ed11c198cb8c7e54119"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:58:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:58:13 2012 -0700"
      },
      "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 \"Fixes and two late cleanups\"\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/cleanups: Add load balance cpumask pointer to \u0027struct lb_env\u0027\n  sched: Fix comment about PREEMPT_ACTIVE bit location\n  sched: Fix minor code style issues\n  sched: Use task_rq_unlock() in __sched_setscheduler()\n  sched/numa: Add SD_PERFER_SIBLING to CPU domain\n"
    },
    {
      "commit": "bd463a06064c4bc8497f6aa6dfb4437be8f07a3b",
      "tree": "3499f105c565d977d0ae9486f0a4572cd5fcbd2e",
      "parents": [
        "148311d2ade909a79afb85a853c7979eb499563f",
        "e6dab5ffab59e910ec0e3355f4a6f29f7a7be474"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:57:20 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:57:20 2012 -0700"
      },
      "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 \"Fix merge window fallout and fix sleep profiling (this was always\n  broken, so it\u0027s not a fix for the merge window - we can skip this one\n  from the head of the tree).\"\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf/trace: Add ability to set a target task for events\n  perf/x86: Fix USER/KERNEL tagging of samples properly\n  perf/x86/intel/uncore: Make UNCORE_PMU_HRTIMER_INTERVAL 64-bit\n"
    },
    {
      "commit": "148311d2ade909a79afb85a853c7979eb499563f",
      "tree": "6dde0ac8804b729e084c3bef7226b10d661f12da",
      "parents": [
        "d97e1dcde5e19ed1f828baff4ab5fd0e517c8dae",
        "dc9b229a58dc0dfed34272ff26c6d5fd17c674e0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:56:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:56:44 2012 -0700"
      },
      "message": "Merge branch \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull irq fix from Ingo Molnar.\n\n* \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Allow irq chips to mark themself oneshot safe\n"
    },
    {
      "commit": "d97e1dcde5e19ed1f828baff4ab5fd0e517c8dae",
      "tree": "b383820ad8075479d31168cc35aabbb3bed35736",
      "parents": [
        "587a9e1f95794c05419d3bdb4c409a3274849f93",
        "f96a4216e85050c0a9d41a41ecb0ae9d8e39b509"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:53:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 03 10:53:47 2012 -0700"
      },
      "message": "Merge tag \u0027for_linux-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb\n\nPull KGDB/KDB/usb-dbgp fixes and cleanups from Jason Wessel:\n \"There are no new features, those will be delayed to the 3.7 window.\n  There are only fixes/cleanup against the usual kernel churn and we are\n  removing more lines than we add:\n\n   - usb-dbgp - increase the controller wait time to come out of halt.\n   - kdb - Remove unused KDB_FLAG_ONLY_DO_DUMP code and cpu in more prompt\n   - debug core - pass NMI type on archs that provide NMI types\"\n\n* tag \u0027for_linux-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb:\n  USB: echi-dbgp: increase the controller wait time to come out of halt.\n  kernel/debug: Make use of KGDB_REASON_NMI\n  kdb: Remove cpu from the more prompt\n  kdb: Remove unused KDB_FLAG_ONLY_DO_DUMP\n"
    },
    {
      "commit": "a0e881b7c189fa2bd76c024dbff91e79511c971d",
      "tree": "0c801918565b08921d21aceee5b326f64d998f5f",
      "parents": [
        "eff0d13f3823f35d70228cd151d2a2c89288ff32",
        "dbc6e0222d79e78925fe20733844a796a4b72cf9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 01 10:26:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 01 10:26:23 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull second vfs pile from Al Viro:\n \"The stuff in there: fsfreeze deadlock fixes by Jan (essentially, the\n  deadlock reproduced by xfstests 068), symlink and hardlink restriction\n  patches, plus assorted cleanups and fixes.\n\n  Note that another fsfreeze deadlock (emergency thaw one) is *not*\n  dealt with - the series by Fernando conflicts a lot with Jan\u0027s, breaks\n  userland ABI (FIFREEZE semantics gets changed) and trades the deadlock\n  for massive vfsmount leak; this is going to be handled next cycle.\n  There probably will be another pull request, but that stuff won\u0027t be\n  in it.\"\n\nFix up trivial conflicts due to unrelated changes next to each other in\ndrivers/{staging/gdm72xx/usb_boot.c, usb/gadget/storage_common.c}\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (54 commits)\n  delousing target_core_file a bit\n  Documentation: Correct s_umount state for freeze_fs/unfreeze_fs\n  fs: Remove old freezing mechanism\n  ext2: Implement freezing\n  btrfs: Convert to new freezing mechanism\n  nilfs2: Convert to new freezing mechanism\n  ntfs: Convert to new freezing mechanism\n  fuse: Convert to new freezing mechanism\n  gfs2: Convert to new freezing mechanism\n  ocfs2: Convert to new freezing mechanism\n  xfs: Convert to new freezing code\n  ext4: Convert to new freezing mechanism\n  fs: Protect write paths by sb_start_write - sb_end_write\n  fs: Skip atime update on frozen filesystem\n  fs: Add freezing handling to mnt_want_write() / mnt_drop_write()\n  fs: Improve filesystem freezing handling\n  switch the protection of percpu_counter list to spinlock\n  nfsd: Push mnt_want_write() outside of i_mutex\n  btrfs: Push mnt_want_write() outside of i_mutex\n  fat: Push mnt_want_write() outside of i_mutex\n  ...\n"
    },
    {
      "commit": "2d534926205db9ffce4bbbde67cb9b2cee4b835c",
      "tree": "b906e41009b54d9a286df3454a841fd2b3f170cc",
      "parents": [
        "ac694dbdbc403c00e2c14d10bc7b8412cc378259",
        "f5a1ad057e6da5d0fc9c5677ff44797d193d3e62"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 20:44:03 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 20:44:03 2012 -0700"
      },
      "message": "Merge tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull irqdomain changes from Grant Likely:\n \"Round of refactoring and enhancements to irq_domain infrastructure.\n  This series starts the process of simplifying irqdomain.  The ultimate\n  goal is to merge LEGACY, LINEAR and TREE mappings into a single\n  system, but had to back off from that after some last minute bugs.\n  Instead it mainly reorganizes the code and ensures that the reverse\n  map gets populated when the irq is mapped instead of the first time it\n  is looked up.\n\n  Merging of the irq_domain types is deferred to v3.7\n\n  In other news, this series adds helpers for creating static mappings\n  on a linear or tree mapping.\"\n\n* tag \u0027irqdomain-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  irqdomain: Improve diagnostics when a domain mapping fails\n  irqdomain: eliminate slow-path revmap lookups\n  irqdomain: Fix irq_create_direct_mapping() to test irq_domain type.\n  irqdomain: Eliminate dedicated radix lookup functions\n  irqdomain: Support for static IRQ mapping and association.\n  irqdomain: Always update revmap when setting up a virq\n  irqdomain: Split disassociating code into separate function\n  irq_domain: correct a minor wrong comment for linear revmap\n  irq_domain: Standardise legacy/linear domain selection\n  irqdomain: Make ops-\u003emap hook optional\n  irqdomain: Remove unnecessary test for IRQ_DOMAIN_MAP_LEGACY\n  irqdomain: Simple NUMA awareness.\n  devicetree: add helper inline for retrieving a node\u0027s full name\n"
    },
    {
      "commit": "ac694dbdbc403c00e2c14d10bc7b8412cc378259",
      "tree": "e37328cfbeaf43716dd5914cad9179e57e84df76",
      "parents": [
        "a40a1d3d0a2fd613fdec6d89d3c053268ced76ed",
        "437ea90cc3afdca5229b41c6b1d38c4842756cb9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 19:25:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 19:25:39 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge Andrew\u0027s second set of patches:\n - MM\n - a few random fixes\n - a couple of RTC leftovers\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (120 commits)\n  rtc/rtc-88pm80x: remove unneed devm_kfree\n  rtc/rtc-88pm80x: assign ret only when rtc_register_driver fails\n  mm: hugetlbfs: close race during teardown of hugetlbfs shared page tables\n  tmpfs: distribute interleave better across nodes\n  mm: remove redundant initialization\n  mm: warn if pg_data_t isn\u0027t initialized with zero\n  mips: zero out pg_data_t when it\u0027s allocated\n  memcg: gix memory accounting scalability in shrink_page_list\n  mm/sparse: remove index_init_lock\n  mm/sparse: more checks on mem_section number\n  mm/sparse: optimize sparse_index_alloc\n  memcg: add mem_cgroup_from_css() helper\n  memcg: further prevent OOM with too many dirty pages\n  memcg: prevent OOM with too many dirty pages\n  mm: mmu_notifier: fix freed page still mapped in secondary MMU\n  mm: memcg: only check anon swapin page charges for swap cache\n  mm: memcg: only check swap cache pages for repeated charging\n  mm: memcg: split swapin charge function into private and public part\n  mm: memcg: remove needless !mm fixup to init_mm when charging\n  mm: memcg: remove unneeded shmem charge type\n  ...\n"
    },
    {
      "commit": "3e9a97082fa639394e905e1fc4a0a7f719ca7644",
      "tree": "9985cfa26e0597128eae03a2ee7e4614efea571f",
      "parents": [
        "941c8726e4e737e74d418ccec3d8e7b946a65541",
        "d2e7c96af1e54b507ae2a6a7dd2baf588417a7e5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 19:07:42 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 19:07:42 2012 -0700"
      },
      "message": "Merge tag \u0027random_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random\n\nPull random subsystem patches from Ted Ts\u0027o:\n \"This patch series contains a major revamp of how we collect entropy\n  from interrupts for /dev/random and /dev/urandom.\n\n  The goal is to addresses weaknesses discussed in the paper \"Mining\n  your Ps and Qs: Detection of Widespread Weak Keys in Network Devices\",\n  by Nadia Heninger, Zakir Durumeric, Eric Wustrow, J.  Alex Halderman,\n  which will be published in the Proceedings of the 21st Usenix Security\n  Symposium, August 2012.  (See https://factorable.net for more\n  information and an extended version of the paper.)\"\n\nFix up trivial conflicts due to nearby changes in\ndrivers/{mfd/ab3100-core.c, usb/gadget/omap_udc.c}\n\n* tag \u0027random_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random: (33 commits)\n  random: mix in architectural randomness in extract_buf()\n  dmi: Feed DMI table to /dev/random driver\n  random: Add comment to random_initialize()\n  random: final removal of IRQF_SAMPLE_RANDOM\n  um: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  sparc/ldc: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  [ARM] pxa: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  board-palmz71: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  isp1301_omap: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  pxa25x_udc: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  omap_udc: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  goku_udc: remove IRQF_SAMPLE_RANDOM which was commented out\n  uartlite: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  drivers: hv: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  xen-blkfront: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  n2_crypto: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  pda_power: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  i2c-pmcmsp: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  input/serio/hp_sdc.c: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  mfd: remove IRQF_SAMPLE_RANDOM which is now a no-op\n  ...\n"
    },
    {
      "commit": "907aed48f65efeecf91575397e3d79335d93a466",
      "tree": "8e06d29e71888f65a7217880c55472125d1b88d4",
      "parents": [
        "b37f1dd0f543d9714f96c2f9b9f74f7bdfdfdf31"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Tue Jul 31 16:44:07 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:45 2012 -0700"
      },
      "message": "mm: allow PF_MEMALLOC from softirq context\n\nThis is needed to allow network softirq packet processing to make use of\nPF_MEMALLOC.\n\nCurrently softirq context cannot use PF_MEMALLOC due to it not being\nassociated with a task, and therefore not having task flags to fiddle with\n- thus the gfp to alloc flag mapping ignores the task flags when in\ninterrupts (hard or soft) context.\n\nAllowing softirqs to make use of PF_MEMALLOC therefore requires some\ntrickery.  This patch borrows the task flags from whatever process happens\nto be preempted by the softirq.  It then modifies the gfp to alloc flags\nmapping to not exclude task flags in softirq context, and modify the\nsoftirq code to save, clear and restore the PF_MEMALLOC flag.\n\nThe save and clear, ensures the preempted task\u0027s PF_MEMALLOC flag doesn\u0027t\nleak into the softirq.  The restore ensures a softirq\u0027s PF_MEMALLOC flag\ncannot leak back into the preempted process.  This should be safe due to\nthe following reasons\n\nSoftirqs can run on multiple CPUs sure but the same task should not be\n\texecuting the same softirq code. Neither should the softirq\n\thandler be preempted by any other softirq handler so the flags\n\tshould not leak to an unrelated softirq.\n\nSoftirqs re-enable hardware interrupts in __do_softirq() so can be\n\tpreempted by hardware interrupts so PF_MEMALLOC is inherited\n\tby the hard IRQ. However, this is similar to a process in\n\treclaim being preempted by a hardirq. While PF_MEMALLOC is\n\tset, gfp_to_alloc_flags() distinguishes between hard and\n\tsoft irqs and avoids giving a hardirq the ALLOC_NO_WATERMARKS\n\tflag.\n\nIf the softirq is deferred to ksoftirq then its flags may be used\n        instead of a normal tasks but as the softirq cannot be preempted,\n        the PF_MEMALLOC flag does not leak to other code by accident.\n\n[davem@davemloft.net: Document why PF_MEMALLOC is safe]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nCc: Eric B Munson \u003cemunson@mgebm.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9adb62a5df9c0fbef7b4665919329f73a34651ed",
      "tree": "8372c9c1202adac889714ea99319346279107f33",
      "parents": [
        "da92c47d069890106484cb6605df701a54d24499"
      ],
      "author": {
        "name": "Jiang Liu",
        "email": "jiang.liu@huawei.com",
        "time": "Tue Jul 31 16:43:28 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:44 2012 -0700"
      },
      "message": "mm/hotplug: correctly setup fallback zonelists when creating new pgdat\n\nWhen hotadd_new_pgdat() is called to create new pgdat for a new node, a\nfallback zonelist should be created for the new node.  There\u0027s code to try\nto achieve that in hotadd_new_pgdat() as below:\n\n\t/*\n\t * The node we allocated has no zone fallback lists. For avoiding\n\t * to access not-initialized zonelist, build here.\n\t */\n\tmutex_lock(\u0026zonelists_mutex);\n\tbuild_all_zonelists(pgdat, NULL);\n\tmutex_unlock(\u0026zonelists_mutex);\n\nBut it doesn\u0027t work as expected.  When hotadd_new_pgdat() is called, the\nnew node is still in offline state because node_set_online(nid) hasn\u0027t\nbeen called yet.  And build_all_zonelists() only builds zonelists for\nonline nodes as:\n\n        for_each_online_node(nid) {\n                pg_data_t *pgdat \u003d NODE_DATA(nid);\n\n                build_zonelists(pgdat);\n                build_zonelist_cache(pgdat);\n        }\n\nThough we hope to create zonelist for the new pgdat, but it doesn\u0027t.  So\nadd a new parameter \"pgdat\" the build_all_zonelists() to build pgdat for\nthe new pgdat too.\n\nSigned-off-by: Jiang Liu \u003cliuj97@gmail.com\u003e\nSigned-off-by: Xishi Qiu \u003cqiuxishi@huawei.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Minchan Kim \u003cminchan@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Keping Chen \u003cchenkeping@huawei.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c255a458055e459f65eb7b7f51dc5dbdd0caf1d8",
      "tree": "b143b1914eeb6f27f53e30f9f0275d0f1ca5480b",
      "parents": [
        "80934513b230bfcf70265f2ef0fdae89fb391633"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Jul 31 16:43:02 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:43 2012 -0700"
      },
      "message": "memcg: rename config variables\n\nSanity:\n\nCONFIG_CGROUP_MEM_RES_CTLR -\u003e CONFIG_MEMCG\nCONFIG_CGROUP_MEM_RES_CTLR_SWAP -\u003e CONFIG_MEMCG_SWAP\nCONFIG_CGROUP_MEM_RES_CTLR_SWAP_ENABLED -\u003e CONFIG_MEMCG_SWAP_ENABLED\nCONFIG_CGROUP_MEM_RES_CTLR_KMEM -\u003e CONFIG_MEMCG_KMEM\n\n[mhocko@suse.cz: fix missed bits]\nCc: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: 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": "3965c9ae47d64aadf6f13b6fcd37767b83c0689a",
      "tree": "9896fbd841edbaa8e374b593ad0f7b96191cda5d",
      "parents": [
        "deaf386ee58d5336bbef8959bf304573afb67c20"
      ],
      "author": {
        "name": "Wanpeng Li",
        "email": "liwp@linux.vnet.ibm.com",
        "time": "Tue Jul 31 16:41:52 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:40 2012 -0700"
      },
      "message": "mm: prepare for removal of obsolete /proc/sys/vm/nr_pdflush_threads\n\nSince per-BDI flusher threads were introduced in 2.6, the pdflush\nmechanism is not used any more.  But the old interface exported through\n/proc/sys/vm/nr_pdflush_threads still exists and is obviously useless.\n\nFor back-compatibility, printk warning information and return 2 to notify\nthe users that the interface is removed.\n\nSigned-off-by: Wanpeng Li \u003cliwp@linux.vnet.ibm.com\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "44de9d0cad41f2c51ef26916842be046b582dcc9",
      "tree": "a9ce576f28e5038e9e3ae2e360cadf176dc74898",
      "parents": [
        "df858fa8276f85106f2f5c3cd49c1fa524058070"
      ],
      "author": {
        "name": "Huang Shijie",
        "email": "shijie8@gmail.com",
        "time": "Tue Jul 31 16:41:49 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 18:42:39 2012 -0700"
      },
      "message": "mm: account the total_vm in the vm_stat_account()\n\nvm_stat_account() accounts the shared_vm, stack_vm and reserved_vm now.\nBut we can also account for total_vm in the vm_stat_account() which makes\nthe code tidy.\n\nEven for mprotect_fixup(), we can get the right result in the end.\n\nSigned-off-by: Huang Shijie \u003cshijie8@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": "bca1a5c0eabe0f17081760c61e8d08e73dd6b6a6",
      "tree": "f939c6f42bf459786eb0050578044fdde56fec90",
      "parents": [
        "ec7a19bfec544aa73e347369232f9bd654954aa3",
        "194f8dcbe9629d8e9346cf96345a9c0bbf0e67ae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 15:34:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 31 15:34:13 2012 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf updates from Ingo Molnar:\n \"The biggest changes are Intel Nehalem-EX PMU uncore support, uprobes\n  updates/cleanups/fixes from Oleg and diverse tooling updates (mostly\n  fixes) now that Arnaldo is back from vacation.\"\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)\n  uprobes: __replace_page() needs munlock_vma_page()\n  uprobes: Rename vma_address() and make it return \"unsigned long\"\n  uprobes: Fix register_for_each_vma()-\u003evma_address() check\n  uprobes: Introduce vaddr_to_offset(vma, vaddr)\n  uprobes: Teach build_probe_list() to consider the range\n  uprobes: Remove insert_vm_struct()-\u003euprobe_mmap()\n  uprobes: Remove copy_vma()-\u003euprobe_mmap()\n  uprobes: Fix overflow in vma_address()/find_active_uprobe()\n  uprobes: Suppress uprobe_munmap() from mmput()\n  uprobes: Uprobe_mmap/munmap needs list_for_each_entry_safe()\n  uprobes: Clean up and document write_opcode()-\u003elock_page(old_page)\n  uprobes: Kill write_opcode()-\u003elock_page(new_page)\n  uprobes: __replace_page() should not use page_address_in_vma()\n  uprobes: Don\u0027t recheck vma/f_mapping in write_opcode()\n  perf/x86: Fix missing struct before structure name\n  perf/x86: Fix format definition of SNB-EP uncore QPI box\n  perf/x86: Make bitfield unsigned\n  perf/x86: Fix LLC-* and node-* events on Intel SandyBridge\n  perf/x86: Add Intel Nehalem-EX uncore support\n  perf/x86: Fix typo in format definition of uncore PCU filter\n  ...\n"
    },
    {
      "commit": "4e250fdde9be50581c7dd5fed88c9b9960615314",
      "tree": "12f19a5c6f55f67d2b8dc2f24d9efa25faaa8eab",
      "parents": [
        "6d0ef903e2bda70da124c10d8ad89f2382c87991"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Jul 27 14:48:13 2012 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:09:14 2012 +0200"
      },
      "message": "time: Remove all direct references to timekeeper\n\nIngo noted that the numerous timekeeper.value references made\nthe timekeeping code ugly and caused many long lines that\nhad to be broken up. He recommended replacing timekeeper.value\nreferences with tk-\u003evalue.\n\nThis patch provides a local tk value for all top level time\nfunctions and sets it to \u0026timekeeper. Then all timekeeper\naccess is done via a tk pointer.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Prarit Bhargava \u003cprarit@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1343414893-45779-6-git-send-email-john.stultz@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "6d0ef903e2bda70da124c10d8ad89f2382c87991",
      "tree": "fae52a865dbe0757e4e5ff49ce4a7f65447e0343",
      "parents": [
        "d4e3ab384b2343c7074f713ac330f839c38c52ee"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Jul 27 14:48:12 2012 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:09:14 2012 +0200"
      },
      "message": "time: Clean up offs_real/wall_to_mono and offs_boot/total_sleep_time updates\n\nFor performance reasons, we maintain ktime_t based duplicates of\nwall_to_monotonic (offs_real) and total_sleep_time (offs_boot).\n\nSince large problems could occur (such as the resume regression\non 3.5-rc7, or the leapsecond hrtimer issue) if these value\npairs were to be inconsistently updated, this patch this cleans\nup how we modify these value pairs to ensure we are always\nconsistent.\n\nAs a side-effect this is also more efficient as we only\ncaulculate the duplicate values when they are changed,\nrather then every update_wall_time call.\n\nThis also provides WARN_ONs to detect if future changes break\nthe invariants.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Richard Cochran \u003crichardcochran@gmail.com\u003e\nCc: Prarit Bhargava \u003cprarit@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1343414893-45779-5-git-send-email-john.stultz@linaro.org\n[ Cleaned up minor style issues. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "d4e3ab384b2343c7074f713ac330f839c38c52ee",
      "tree": "f5e387e160533e7bb6a7b6fb70b9564b7aa31283",
      "parents": [
        "02ab20ae38337b99b5c29c81090f594b8fd61283"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Jul 27 14:48:11 2012 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:09:13 2012 +0200"
      },
      "message": "time: Clean up stray newlines\n\nIngo noted inconsistent newline usage between functions.\nThis patch cleans those up.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Prarit Bhargava \u003cprarit@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1343414893-45779-4-git-send-email-john.stultz@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "02ab20ae38337b99b5c29c81090f594b8fd61283",
      "tree": "c64ac720c8af5230e4f9e2aa7c56ede8f86b31f3",
      "parents": [
        "a7ea3bbf5d58f4df2265d312f91d5769eabc8144"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Jul 27 14:48:10 2012 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:09:12 2012 +0200"
      },
      "message": "time/jiffies: Rename ACTHZ to SHIFTED_HZ\n\nIngo noted that ACTHZ is a confusing name, and requested it\nbe renamed, so this patch renames ACTHZ to SHIFTED_HZ to\nbetter describe it.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Prarit Bhargava \u003cprarit@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1343414893-45779-3-git-send-email-john.stultz@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "1f815faec46e83bc96039797151846b60875bb06",
      "tree": "41a874f8090e3f69c8a9f13e3c85dd7a371e569b",
      "parents": [
        "b44d50dcacea0d485ca2ff9140f8cc28ee22f28d",
        "e2b34e311be3a57c9abcb927e37a57e38913714c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:05:27 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:05:27 2012 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into timers/urgent\n\nMerge in Linus\u0027s branch which already has timers/core merged.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "e6dab5ffab59e910ec0e3355f4a6f29f7a7be474",
      "tree": "87acf0fb071b8d09794ac7d834cb256de030cceb",
      "parents": [
        "d07bdfd322d307789f15b427dbcc39257665356f"
      ],
      "author": {
        "name": "Andrew Vagin",
        "email": "avagin@openvz.org",
        "time": "Wed Jul 11 18:14:58 2012 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:02:05 2012 +0200"
      },
      "message": "perf/trace: Add ability to set a target task for events\n\nA few events are interesting not only for a current task.\nFor example, sched_stat_* events are interesting for a task\nwhich wakes up. For this reason, it will be good if such\nevents will be delivered to a target task too.\n\nNow a target task can be set by using __perf_task().\n\nThe original idea and a draft patch belongs to Peter Zijlstra.\n\nI need these events for profiling sleep times. sched_switch is used for\ngetting callchains and sched_stat_* is used for getting time periods.\nThese events are combined in user space, then it can be analyzed by\nperf tools.\n\nInspired-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arun Sharma \u003casharma@fb.com\u003e\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1342016098-213063-1-git-send-email-avagin@openvz.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "b9403130a5350fca59a50ed11c198cb8c7e54119",
      "tree": "68a4a4c6c270c14e7bbfa4c928e0e2a864ac4127",
      "parents": [
        "a7e4786b937a3ae918a7520cfdba557a80915fa7"
      ],
      "author": {
        "name": "Michael Wang",
        "email": "wangyun@linux.vnet.ibm.com",
        "time": "Thu Jul 12 16:10:13 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 31 17:00:16 2012 +0200"
      },
      "message": "sched/cleanups: Add load balance cpumask pointer to \u0027struct lb_env\u0027\n\nWith this patch struct ld_env will have a pointer of the load balancing\ncpumask and we don\u0027t need to pass a cpumask around anymore.\n\nSigned-off-by: Michael Wang \u003cwangyun@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FFE8665.3080705@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "b10d22d6e8f76b9e94871aebe0fc62aab2748200",
      "tree": "fd2452bd709147091ac03f7d458d974e1f8d5ab4",
      "parents": [
        "07cd27bbd4d07af6c3e24ae479316a69e7935e1e"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "anton.vorontsov@linaro.org",
        "time": "Mon Jul 30 04:58:10 2012 -0700"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jul 31 08:16:43 2012 -0500"
      },
      "message": "kernel/debug: Make use of KGDB_REASON_NMI\n\nCurrently kernel never set KGDB_REASON_NMI. We do now, when we enter\nKGDB/KDB from an NMI.\n\nThis is not to be confused with kgdb_nmicallback(), NMI callback is\nan entry for the slave CPUs during CPUs roundup, but REASON_NMI is the\nentry for the master CPU.\n\nSigned-off-by: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "07cd27bbd4d07af6c3e24ae479316a69e7935e1e",
      "tree": "74eb5854bcd9d8d838031c0359c82c6621b79363",
      "parents": [
        "0f26d0e0a715556270d85b7946b99546a2f92888"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Jul 30 22:44:41 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jul 31 08:16:43 2012 -0500"
      },
      "message": "kdb: Remove cpu from the more prompt\n\nHaving the CPU in the more prompt is completely redundent vs the\nstandard kdb prompt, and it also wastes 32 bytes on the stack.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "0f26d0e0a715556270d85b7946b99546a2f92888",
      "tree": "4dcfb4d8e509d958badde6f099650b382e7b7733",
      "parents": [
        "28a33cbc24e4256c143dce96c7d93bf423229f92"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Jul 30 22:44:41 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jul 31 08:16:42 2012 -0500"
      },
      "message": "kdb: Remove unused KDB_FLAG_ONLY_DO_DUMP\n\nThis code cleanup was missed in the original kdb merge, and this code\nis simply not used at all.  The code that was previously used to set\nthe KDB_FLAG_ONLY_DO_DUMP was removed prior to the initial kdb merge.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "65fed8f6f23070b56d0ed3841173ddd410130a89",
      "tree": "d9549d5cc05f74789bd34a400ce3275c9c224c01",
      "parents": [
        "f7e1becb078c2b996420a61f2a411ef19335e2da"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "octavian.purdila@intel.com",
        "time": "Mon Jul 30 14:42:58 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:21 2012 -0700"
      },
      "message": "resource: make sure requested range is included in the root range\n\nWhen the requested range is outside of the root range the logic in\n__reserve_region_with_split will cause an infinite recursion which will\noverflow the stack as seen in the warning bellow.\n\nThis particular stack overflow was caused by requesting the\n(100000000-107ffffff) range while the root range was (0-ffffffff).  In\nthis case __request_resource would return the whole root range as\nconflict range (i.e.  0-ffffffff).  Then, the logic in\n__reserve_region_with_split would continue the recursion requesting the\nnew range as (conflict-\u003eend+1, end) which incidentally in this case\nequals the originally requested range.\n\nThis patch aborts looking for an usable range when the request does not\nintersect with the root range.  When the request partially overlaps with\nthe root range, it ajust the request to fall in the root range and then\ncontinues with the new request.\n\nWhen the request is modified or aborted errors and a stack trace are\nlogged to allow catching the errors in the upper layers.\n\n[    5.968374] WARNING: at kernel/sched.c:4129 sub_preempt_count+0x63/0x89()\n[    5.975150] Modules linked in:\n[    5.978184] Pid: 1, comm: swapper Not tainted 3.0.22-mid27-00004-gb72c817 #46\n[    5.985324] Call Trace:\n[    5.987759]  [\u003cc1039dfc\u003e] ? console_unlock+0x17b/0x18d\n[    5.992891]  [\u003cc1039620\u003e] warn_slowpath_common+0x48/0x5d\n[    5.998194]  [\u003cc1031758\u003e] ? sub_preempt_count+0x63/0x89\n[    6.003412]  [\u003cc1039644\u003e] warn_slowpath_null+0xf/0x13\n[    6.008453]  [\u003cc1031758\u003e] sub_preempt_count+0x63/0x89\n[    6.013499]  [\u003cc14d60c4\u003e] _raw_spin_unlock+0x27/0x3f\n[    6.018453]  [\u003cc10c6349\u003e] add_partial+0x36/0x3b\n[    6.022973]  [\u003cc10c7c0a\u003e] deactivate_slab+0x96/0xb4\n[    6.027842]  [\u003cc14cf9d9\u003e] __slab_alloc.isra.54.constprop.63+0x204/0x241\n[    6.034456]  [\u003cc103f78f\u003e] ? kzalloc.constprop.5+0x29/0x38\n[    6.039842]  [\u003cc103f78f\u003e] ? kzalloc.constprop.5+0x29/0x38\n[    6.045232]  [\u003cc10c7dc9\u003e] kmem_cache_alloc_trace+0x51/0xb0\n[    6.050710]  [\u003cc103f78f\u003e] ? kzalloc.constprop.5+0x29/0x38\n[    6.056100]  [\u003cc103f78f\u003e] kzalloc.constprop.5+0x29/0x38\n[    6.061320]  [\u003cc17b45e9\u003e] __reserve_region_with_split+0x1c/0xd1\n[    6.067230]  [\u003cc17b4693\u003e] __reserve_region_with_split+0xc6/0xd1\n...\n[    7.179057]  [\u003cc17b4693\u003e] __reserve_region_with_split+0xc6/0xd1\n[    7.184970]  [\u003cc17b4779\u003e] reserve_region_with_split+0x30/0x42\n[    7.190709]  [\u003cc17a8ebf\u003e] e820_reserve_resources_late+0xd1/0xe9\n[    7.196623]  [\u003cc17c9526\u003e] pcibios_resource_survey+0x23/0x2a\n[    7.202184]  [\u003cc17cad8a\u003e] pcibios_init+0x23/0x35\n[    7.206789]  [\u003cc17ca574\u003e] pci_subsys_init+0x3f/0x44\n[    7.211659]  [\u003cc1002088\u003e] do_one_initcall+0x72/0x122\n[    7.216615]  [\u003cc17ca535\u003e] ? pci_legacy_init+0x3d/0x3d\n[    7.221659]  [\u003cc17a27ff\u003e] kernel_init+0xa6/0x118\n[    7.226265]  [\u003cc17a2759\u003e] ? start_kernel+0x334/0x334\n[    7.231223]  [\u003cc14d7482\u003e] kernel_thread_helper+0x6/0x10\n\nSigned-off-by: Octavian Purdila \u003coctavian.purdila@intel.com\u003e\nSigned-off-by: Ram Pai \u003clinuxram@us.ibm.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "25353b3377d5a75d4b830477bb90a3691155de72",
      "tree": "fc1227929cb2cf7c5356e19c5adbb238bcfb14bb",
      "parents": [
        "fd4b616b0fbb77e3f349e7d60914f2b7c7e39f9c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Mon Jul 30 14:42:49 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:21 2012 -0700"
      },
      "message": "taskstats: check nla_reserve() return\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d44621\n\nReported-by: \u003crucsoftsec@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd4b616b0fbb77e3f349e7d60914f2b7c7e39f9c",
      "tree": "a0cc595c7680bd08467fb803738d534cfa8f150e",
      "parents": [
        "c1d7e01d7877a397655277a920aeaa3830ed9461"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 30 14:42:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:21 2012 -0700"
      },
      "message": "sysctl: suppress kmemleak messages\n\nregister_sysctl_table() is a strange function, as it makes internal\nallocations (a header) to register a sysctl_table.  This header is a\nhandle to the table that is created, and can be used to unregister the\ntable.  But if the table is permanent and never unregistered, the header\nacts the same as a static variable.\n\nUnfortunately, this allocation of memory that is never expected to be\nfreed fools kmemleak in thinking that we have leaked memory.  For those\nsysctl tables that are never unregistered, and have no pointer referencing\nthem, kmemleak will think that these are memory leaks:\n\nunreferenced object 0xffff880079fb9d40 (size 192):\n  comm \"swapper/0\", pid 0, jiffies 4294667316 (age 12614.152s)\n  hex dump (first 32 bytes):\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [\u003cffffffff8146b590\u003e] kmemleak_alloc+0x73/0x98\n    [\u003cffffffff8110a935\u003e] kmemleak_alloc_recursive.constprop.42+0x16/0x18\n    [\u003cffffffff8110b852\u003e] __kmalloc+0x107/0x153\n    [\u003cffffffff8116fa72\u003e] kzalloc.constprop.8+0xe/0x10\n    [\u003cffffffff811703c9\u003e] __register_sysctl_paths+0xe1/0x160\n    [\u003cffffffff81170463\u003e] register_sysctl_paths+0x1b/0x1d\n    [\u003cffffffff8117047d\u003e] register_sysctl_table+0x18/0x1a\n    [\u003cffffffff81afb0a1\u003e] sysctl_init+0x10/0x14\n    [\u003cffffffff81b05a6f\u003e] proc_sys_init+0x2f/0x31\n    [\u003cffffffff81b0584c\u003e] proc_root_init+0xa5/0xa7\n    [\u003cffffffff81ae5b7e\u003e] start_kernel+0x3d0/0x40a\n    [\u003cffffffff81ae52a7\u003e] x86_64_start_reservations+0xae/0xb2\n    [\u003cffffffff81ae53ad\u003e] x86_64_start_kernel+0x102/0x111\n    [\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\nThe sysctl_base_table used by sysctl itself is one such instance that\nregisters the table to never be unregistered.\n\nUse kmemleak_not_leak() to suppress the kmemleak false positive.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "63dca8d5b5ef7effb58b8d6892a024125c0fab0b",
      "tree": "057bc9465bada7c101114c3aaee24f3b50dfd4db",
      "parents": [
        "f19b9f74b7ea3b21ddcee55d852a6488239608a4"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@redhat.com",
        "time": "Mon Jul 30 14:42:36 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:20 2012 -0700"
      },
      "message": "kdump: append newline to the last lien of vmcoreinfo note\n\nThe last line of vmcoreinfo note does not end with \\n.  Parsing all the\nlines in note becomes easier if all lines end with \\n instead of trying to\nspecial case the last line.\n\nI know at least one tool, vmcore-dmesg in kexec-tools tree which made the\nassumption that all lines end with \\n.  I think it is a good idea to fix\nit.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Atsushi Kumagai \u003ckumagai-atsushi@mxc.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f19b9f74b7ea3b21ddcee55d852a6488239608a4",
      "tree": "d57515cb110bc8b30043e1ab67c962ab78898e2f",
      "parents": [
        "87bec58a52652e2eb2a575692a40f9466c7bd31b"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 30 14:42:33 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:20 2012 -0700"
      },
      "message": "fork: fix error handling in dup_task()\n\nThe function dup_task() may fail at the following function calls in the\nfollowing order.\n\n0) alloc_task_struct_node()\n1) alloc_thread_info_node()\n2) arch_dup_task_struct()\n\nError by 0) is not a matter, it can just return.  But error by 1) requires\nreleasing task_struct allocated by 0) before it returns.  Likewise, error\nby 2) requires releasing task_struct and thread_info allocated by 0) and\n1).\n\nThe existing error handling calls free_task_struct() and\nfree_thread_info() which do not only release task_struct and thread_info,\nbut also call architecture specific arch_release_task_struct() and\narch_release_thread_info().\n\nThe problem is that task_struct and thread_info are not fully initialized\nyet at this point, but arch_release_task_struct() and\narch_release_thread_info() are called with them.\n\nFor example, x86 defines its own arch_release_task_struct() that releases\na task_xstate.  If alloc_thread_info_node() fails in dup_task(),\narch_release_task_struct() is called with task_struct which is just\nallocated and filled with garbage in this error handling.\n\nThis actually happened with tools/testing/fault-injection/failcmd.sh\n\n\t# env FAILCMD_TYPE\u003dfail_page_alloc \\\n\t\t./tools/testing/fault-injection/failcmd.sh --times\u003d100 \\\n\t\t--min-order\u003d0 --ignore-gfp-wait\u003d0 \\\n\t\t-- make -C tools/testing/selftests/ run_tests\n\nIn order to fix this issue, make free_{task_struct,thread_info}() not to\ncall arch_release_{task_struct,thread_info}() and call\narch_release_{task_struct,thread_info}() implicitly where needed.\n\nDefault arch_release_task_struct() and arch_release_thread_info() are\ndefined as empty by default.  So this change only affects the\narchitectures which implement their own arch_release_task_struct() or\narch_release_thread_info() as listed below.\n\narch_release_task_struct(): x86, sh\narch_release_thread_info(): mn10300, tile\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Koichi Yasutake \u003cyasutake.koichi@jp.panasonic.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Salman Qazi \u003csqazi@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "87bec58a52652e2eb2a575692a40f9466c7bd31b",
      "tree": "bd7d6408b61ee2c1ad6df9f0b44277fb08e75034",
      "parents": [
        "b2412b7fa7a3816fa8633dc2ff19f1a90aabe423"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 30 14:42:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:20 2012 -0700"
      },
      "message": "revert \"sched: Fix fork() error path to not crash\"\n\nTo make way for \"fork: fix error handling in dup_task()\", which fixes the\nerrors more completely.\n\nCc: Salman Qazi \u003csqazi@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Akinobu Mita \u003cakinobu.mita@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": "b2412b7fa7a3816fa8633dc2ff19f1a90aabe423",
      "tree": "5059c916b993726b3b208859f35c8b59761f2656",
      "parents": [
        "bc452b4b65bd589083a7a7ba4f14f85dfc8454fa"
      ],
      "author": {
        "name": "Huang Shijie",
        "email": "shijie8@gmail.com",
        "time": "Mon Jul 30 14:42:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:20 2012 -0700"
      },
      "message": "fork: use vma_pages() to simplify the code\n\nThe current code can be replaced by vma_pages().  So use it to simplify\nthe code.\n\n[akpm@linux-foundation.org: initialise `len\u0027 at its definition site]\nSigned-off-by: Huang Shijie \u003cshijie8@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": "0f20784d4ba3f88ca33b703b23372d8ccf6dbd42",
      "tree": "3cb33ac4afdf3679e12520f579e2e1a607f33670",
      "parents": [
        "79c743dd1e8de61c31f484c0a1b48930543044b3"
      ],
      "author": {
        "name": "Tetsuo Handa",
        "email": "penguin-kernel@i-love.sakura.ne.jp",
        "time": "Mon Jul 30 14:42:20 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:20 2012 -0700"
      },
      "message": "kmod: avoid deadlock from recursive kmod call\n\nThe system deadlocks (at least since 2.6.10) when\ncall_usermodehelper(UMH_WAIT_EXEC) request triggers\ncall_usermodehelper(UMH_WAIT_PROC) request.\n\nThis is because \"khelper thread is waiting for the worker thread at\nwait_for_completion() in do_fork() since the worker thread was created\nwith CLONE_VFORK flag\" and \"the worker thread cannot call complete()\nbecause do_execve() is blocked at UMH_WAIT_PROC request\" and \"the khelper\nthread cannot start processing UMH_WAIT_PROC request because the khelper\nthread is waiting for the worker thread at wait_for_completion() in\ndo_fork()\".\n\nThe easiest example to observe this deadlock is to use a corrupted\n/sbin/hotplug binary (like shown below).\n\n  # : \u003e /tmp/dummy\n  # chmod 755 /tmp/dummy\n  # echo /tmp/dummy \u003e /proc/sys/kernel/hotplug\n  # modprobe whatever\n\ncall_usermodehelper(\"/tmp/dummy\", UMH_WAIT_EXEC) is called from\nkobject_uevent_env() in lib/kobject_uevent.c upon loading/unloading a\nmodule.  do_execve(\"/tmp/dummy\") triggers a call to\nrequest_module(\"binfmt-0000\") from search_binary_handler() which in turn\ncalls call_usermodehelper(UMH_WAIT_PROC).\n\nIn order to avoid deadlock, as a for-now and easy-to-backport solution, do\nnot try to call wait_for_completion() in call_usermodehelper_exec() if the\nworker thread was created by khelper thread with CLONE_VFORK flag.  Future\nand fundamental solution might be replacing singleton khelper thread with\nsome workqueue so that recursive calls up to max_active dependency loop\ncan be handled without deadlock.\n\n[akpm@linux-foundation.org: add comment to kmod_thread_locker]\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "79c743dd1e8de61c31f484c0a1b48930543044b3",
      "tree": "ba52350fdd587f56182e9d92f94c37f0519c79a2",
      "parents": [
        "deb8274a0cf44827ec260330cc1d94d0f3dcfb94"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 30 14:42:17 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:20 2012 -0700"
      },
      "message": "kernel/kmod.c: document call_usermodehelper_fns() a bit\n\nThis function\u0027s interface is, uh, subtle.  Attempt to apologise for it.\n\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "088a52aac810655c1db1e40331e4936946701e9c",
      "tree": "51ad8938a70c0bd3a08c74379dbec3107037d602",
      "parents": [
        "04d2c8c83d0e3ac5f78aeede51babb3236200112"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 30 14:40:19 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:14 2012 -0700"
      },
      "message": "printk: only look for prefix levels in kernel messages\n\nvprintk_emit() prefix parsing should only be done for internal kernel\nmessages.  This allows existing behavior to be kept in all cases.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Kay Sievers \u003ckay@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acc8fa41ad31c576cdbc569cc3e0e443b1b98b44",
      "tree": "74b4072203646bd7432249e57f5a1505fa346b5e",
      "parents": [
        "cdf53441368cc02ee4aa8a8343a5dc25132836f0"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 30 14:40:09 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:13 2012 -0700"
      },
      "message": "printk: add generic functions to find KERN_\u003cLEVEL\u003e headers\n\nThe current form of a KERN_\u003cLEVEL\u003e is \"\u003c.\u003e\".\n\nAdd printk_get_level and printk_skip_level functions to handle these\nformats.\n\nThese functions centralize tests of KERN_\u003cLEVEL\u003e so a future modification\ncan change the KERN_\u003cLEVEL\u003e style and shorten the number of bytes consumed\nby these headers.\n\n[akpm@linux-foundation.org: fix build error and warning]\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Wu Fengguang \u003cwfg@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cdf53441368cc02ee4aa8a8343a5dc25132836f0",
      "tree": "3867dc7e3a4477f7d2ed9ed5990b6d71f075c0d2",
      "parents": [
        "5353cf089bb32b69a7515be909c14bf05fe2e81e"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay@vrfy.org",
        "time": "Mon Jul 30 14:40:08 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:13 2012 -0700"
      },
      "message": "kmsg: /dev/kmsg - properly return possible copy_from_user() failure\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Kay Sievers \u003ckay@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b57b44ae698944ffc6161352b8ff5c9cf9c592e2",
      "tree": "15d8d4c9681c2cba7c882f29b1b4f88378928095",
      "parents": [
        "45226e944ce071d0231949f2fea90969437cd2dc"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 30 14:40:03 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:13 2012 -0700"
      },
      "message": "kernel/sys.c: avoid argv_free(NULL)\n\nIf argv_split() failed, the code will end up calling argv_free(NULL).  Fix\nit up and clean things up a bit.\n\nAddresses Coverity report 703573.\n\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Alan Cox \u003calan@linux.intel.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45226e944ce071d0231949f2fea90969437cd2dc",
      "tree": "6f323df1f61d028f77175525ae54948820cd09a1",
      "parents": [
        "190320c3b6640d4104650f55ff69611e050ea06b"
      ],
      "author": {
        "name": "Sameer Nanda",
        "email": "snanda@chromium.org",
        "time": "Mon Jul 30 14:40:00 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:13 2012 -0700"
      },
      "message": "NMI watchdog: fix for lockup detector breakage on resume\n\nOn the suspend/resume path the boot CPU does not go though an\noffline-\u003eonline transition.  This breaks the NMI detector post-resume\nsince it depends on PMU state that is lost when the system gets\nsuspended.\n\nFix this by forcing a CPU offline-\u003eonline transition for the lockup\ndetector on the boot CPU during resume.\n\nTo provide more context, we enable NMI watchdog on Chrome OS.  We have\nseen several reports of systems freezing up completely which indicated\nthat the NMI watchdog was not firing for some reason.\n\nDebugging further, we found a simple way of repro\u0027ing system freezes --\nissuing the command \u0027tasket 1 sh -c \"echo nmilockup \u003e /proc/breakme\"\u0027\nafter the system has been suspended/resumed one or more times.\n\nWith this patch in place, the system freeze result in panics, as\nexpected.\n\nThese panics provide a nice stack trace for us to debug the actual issue\ncausing the freeze.\n\n[akpm@linux-foundation.org: fiddle with code comment]\n[akpm@linux-foundation.org: make lockup_detector_bootcpu_resume() conditional on CONFIG_SUSPEND]\n[akpm@linux-foundation.org: fix section errors]\nSigned-off-by: Sameer Nanda \u003csnanda@chromium.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Mandeep Singh Baines \u003cmsb@chromium.org\u003e\nCc: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Anshuman Khandual \u003ckhandual@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": "190320c3b6640d4104650f55ff69611e050ea06b",
      "tree": "94d43c11e025e4b4efc577a2cf88a29250d4f510",
      "parents": [
        "6c55845e71ba7a862395f504a240a5b62632e0d6"
      ],
      "author": {
        "name": "Vikram Mulukutla",
        "email": "markivx@codeaurora.org",
        "time": "Mon Jul 30 14:39:58 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:13 2012 -0700"
      },
      "message": "panic: fix a possible deadlock in panic()\n\npanic_lock is meant to ensure that panic processing takes place only on\none cpu; if any of the other cpus encounter a panic, they will spin\nwaiting to be shut down.\n\nHowever, this causes a regression in this scenario:\n\n1. Cpu 0 encounters a panic and acquires the panic_lock\n   and proceeds with the panic processing.\n2. There is an interrupt on cpu 0 that also encounters\n   an error condition and invokes panic.\n3. This second invocation fails to acquire the panic_lock\n   and enters the infinite while loop in panic_smp_self_stop.\n\nThus all panic processing is stopped, and the cpu is stuck for eternity\nin the while(1) inside panic_smp_self_stop.\n\nTo address this, disable local interrupts with local_irq_disable before\nacquiring the panic_lock.  This will prevent interrupt handlers from\nexecuting during the panic processing, thus avoiding this particular\nproblem.\n\nSigned-off-by: Vikram Mulukutla \u003cmarkivx@codeaurora.org\u003e\nReviewed-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Michael Holzheu \u003cholzheu@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": "54b501992dd2a839e94e76aa392c392b55080ce8",
      "tree": "6d174fb95516f01e385d31d5ef87a248d8740fd2",
      "parents": [
        "9520628e8ceb69fa9a4aee6b57f22675d9e1b709"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Jul 30 14:39:18 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:11 2012 -0700"
      },
      "message": "coredump: warn about unsafe suid_dumpable / core_pattern combo\n\nWhen suid_dumpable\u003d2, detect unsafe core_pattern settings and warn when\nthey are seen.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSuggested-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Alan Cox \u003calan@linux.intel.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Doug Ledford \u003cdledford@redhat.com\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: James Morris \u003cjames.l.morris@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1fd75bfa07822b1de314062baff3280419a8bf4",
      "tree": "7f5b234b6554dfa1459c32e3f941b3481700b044",
      "parents": [
        "6c4088ac3a4d82779903433bcd5f048c58fb1aca"
      ],
      "author": {
        "name": "Sasikantha babu",
        "email": "sasikanth.v19@gmail.com",
        "time": "Mon Jul 30 14:39:08 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 30 17:25:11 2012 -0700"
      },
      "message": "prctl: remove redunant assignment of \"error\" to zero\n\nJust setting the \"error\" to error number is enough on failure and It\ndoesn\u0027t require to set \"error\" variable to zero in each switch case,\nsince it was already initialized with zero.  And also removed return 0\nin switch case with break statement\n\nSigned-off-by: Sasikantha babu \u003csasikanth.v19@gmail.com\u003e\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "194f8dcbe9629d8e9346cf96345a9c0bbf0e67ae",
      "tree": "10aac2913ee4f9263af68c42682c456788d990fe",
      "parents": [
        "57683f72b8c01c53c85fe13e82fe1feb3a06bcd5"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:49 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:25 2012 +0200"
      },
      "message": "uprobes: __replace_page() needs munlock_vma_page()\n\nLike do_wp_page(), __replace_page() should do munlock_vma_page()\nfor the case when the old page still has other !VM_LOCKED\nmappings. Unfortunately this needs mm/internal.h.\n\nAlso, move put_page() outside of ptl lock. This doesn\u0027t really\nmatter but looks a bit better.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182249.GA20372@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "57683f72b8c01c53c85fe13e82fe1feb3a06bcd5",
      "tree": "87014149ef710e9f3c0af87cd6ec3118fc4eb723",
      "parents": [
        "f4d6dfe55115efe981b4b5f37183ddccaaa792f0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:47 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:25 2012 +0200"
      },
      "message": "uprobes: Rename vma_address() and make it return \"unsigned long\"\n\n1. vma_address() returns loff_t, this looks confusing and this\n   is unnecessary after the previous change. Make it return \"ulong\",\n   all callers truncate the result anyway.\n\n2. Its name conflicts with mm/rmap.c:vma_address(), rename it to\n   offset_to_vaddr(), this matches vaddr_to_offset().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182247.GA20365@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f4d6dfe55115efe981b4b5f37183ddccaaa792f0",
      "tree": "2d81b1b5a17334895282b42de6134b4e2dcf9f24",
      "parents": [
        "cb113b47d098185f3f1f67e8300d05ddce842b66"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:44 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:24 2012 +0200"
      },
      "message": "uprobes: Fix register_for_each_vma()-\u003evma_address() check\n\n1. register_for_each_vma() checks that vma_address() \u003d\u003d vaddr,\n   but this is not enough. We should also ensure that\n   vaddr \u003e\u003d vm_start, find_vma() guarantees \"vaddr \u003c vm_end\" only.\n\n2. After the prevous changes, register_for_each_vma() is the\n   only reason why vma_address() has to return loff_t, all other\n   users know that we have the valid mapping at this offset and\n   thus the overflow is not possible.\n\n   Change the code to use vaddr_to_offset() instead, imho this looks\n   more clean/understandable and now we can change vma_address().\n\n3. While at it, remove the unnecessary type-cast.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182244.GA20362@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "cb113b47d098185f3f1f67e8300d05ddce842b66",
      "tree": "86601eb6728a4142e94e4cc3e45697840f6b0768",
      "parents": [
        "891c39708144bbe401b4aa151bffd0fe41b1dafd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:42 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:24 2012 +0200"
      },
      "message": "uprobes: Introduce vaddr_to_offset(vma, vaddr)\n\nAdd the new helper, vaddr_to_offset(vma, vaddr) which returns\nthe offset in vma-\u003evm_file this vaddr is mapped at.\n\nChange build_probe_list() and find_active_uprobe() to use the\nnew helper, the next patch adds another user.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182242.GA20355@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "891c39708144bbe401b4aa151bffd0fe41b1dafd",
      "tree": "4d49f2169a6f1e7051fd1b88a8a0fbe612a9224e",
      "parents": [
        "89133786f9408d53361874a8c784fff150fc7f7c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:40 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:23 2012 +0200"
      },
      "message": "uprobes: Teach build_probe_list() to consider the range\n\nCurrently build_probe_list() builds the list of all uprobes\nattached to the given inode, and the caller should filter out\nthose who don\u0027t fall into the [start,end) range, this is\nsub-optimal.\n\nThis patch turns find_least_offset_node() into\nfind_node_in_range() which returns the first node inside the\n[min,max] range, and changes build_probe_list() to use this node\nas a starting point for rb_prev() and rb_next() to find all\nother nodes the caller needs. The resulting list is no longer\nsorted but we do not care.\n\nThis can speed up both build_probe_list() and the callers, but\nthere is another reason to introduce find_node_in_range(). It\ncan be used to figure out whether the given vma has uprobes or\nnot, this will be needed soon.\n\nWhile at it, shift INIT_LIST_HEAD(tmp_list) into\nbuild_probe_list().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182240.GA20352@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "aefd8933d445abf7ff0d4027c624737898827bcd",
      "tree": "f32864bfa64158141326ac35bc57204e49b2774f",
      "parents": [
        "2fd611a991391a6050cbd139201a2e12fc306540"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:33 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:21 2012 +0200"
      },
      "message": "uprobes: Fix overflow in vma_address()/find_active_uprobe()\n\nvma-\u003evm_pgoff is \"unsigned long\", it should be promoted to\nloff_t before the multiplication to avoid the overflow.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182233.GA20339@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "2fd611a991391a6050cbd139201a2e12fc306540",
      "tree": "8233d2ba7dd41e29c6477d4905b6fdc1e7a721e0",
      "parents": [
        "665605a2a207dbe1fa429b474f932d6ea138ba92"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:31 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:21 2012 +0200"
      },
      "message": "uprobes: Suppress uprobe_munmap() from mmput()\n\nuprobe_munmap() does get_user_pages() and it is also called from\nthe final mmput()-\u003eexit_mmap() path. This slows down\nexit/mmput() for no reason, and I think  it is simply\ndangerous/wrong to try to fault-in a page into the dying mm. If\nnothing else, this happens after the last sync_mm_rss(), afaics\nhandle_mm_fault() can change the task-\u003erss_stat and make the\nsubsequent check_mm() unhappy.\n\nChange uprobe_munmap() to check mm-\u003emm_users !\u003d 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182231.GA20336@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "665605a2a207dbe1fa429b474f932d6ea138ba92",
      "tree": "a9f99fcb3972a73066af4591dd3e818b8b14ab27",
      "parents": [
        "9f92448ceeea5326db7d114005a7e7ac03904edf"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:29 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:20 2012 +0200"
      },
      "message": "uprobes: Uprobe_mmap/munmap needs list_for_each_entry_safe()\n\nThe bug was introduced by me in 449d0d7c (\"uprobes: Simplify the\nusage of uprobe-\u003epending_list\").\n\nYes, we do not care about uprobe-\u003epending_list after return and\nnobody can remove the current list entry, but put_uprobe(uprobe)\ncan actually free it and thus we need list_for_each_safe().\n\nReported-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20120729182229.GA20329@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "9f92448ceeea5326db7d114005a7e7ac03904edf",
      "tree": "42bd61d15b445d8677806adeadae99767094386c",
      "parents": [
        "089ba999dc881a7549d97c55ac9e0052d061867d"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:20 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:20 2012 +0200"
      },
      "message": "uprobes: Clean up and document write_opcode()-\u003elock_page(old_page)\n\nThe comment above write_opcode()-\u003elock_page(old_page) tells\nabout the race with do_wp_page(). I don\u0027t really understand\nwhich exactly race it means, but afaics this lock_page() was not\nenough to close all races with do_wp_page().\n\nAnyway, since:\n\n   77fc4af1b59d uprobes: Change register_for_each_vma() to take mm-\u003emmap_sem for writing\n\nthis code is always called with -\u003emmap_sem held for writing,\nso we can forget about do_wp_page().\n\nHowever, we can\u0027t simply remove this lock_page(), and the only\n(afaics) reason is __replace_page()-\u003etry_to_free_swap().\n\nNothing in write_opcode() needs it, move it into\n__replace_page() and fix the comment.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182220.GA20322@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "089ba999dc881a7549d97c55ac9e0052d061867d",
      "tree": "e5278f9ecb3a7405545b940b9b64abeb2121b4cc",
      "parents": [
        "c517ee744b96e441d9c731e245f83c6d08dc0a19"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:18 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:19 2012 +0200"
      },
      "message": "uprobes: Kill write_opcode()-\u003elock_page(new_page)\n\nwrite_opcode() does lock_page(new_page) for no reason. Nobody\ncan see this page until __replace_page() exposes it under ptl\nlock, and we do nothing with this page after pte_unmap_unlock().\n\nIf nothing else, the similar code in do_wp_page() doesn\u0027t lock\nthe new page for page_add_new_anon_rmap/set_pte_at_notify.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182218.GA20315@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "c517ee744b96e441d9c731e245f83c6d08dc0a19",
      "tree": "8d7f7b86767ba2d5c62c2d421f388949f0483c85",
      "parents": [
        "f403072c6108e15f319a4a5036b650c77760522c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:16 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:19 2012 +0200"
      },
      "message": "uprobes: __replace_page() should not use page_address_in_vma()\n\npage_address_in_vma(old_page) in __replace_page() is ugly and\nwrong. The caller already knows the correct virtual address,\nthis page was found by get_user_pages(vaddr).\n\nHowever, page_address_in_vma() can actually fail if\npage-\u003emapping was cleared by __delete_from_page_cache() after\nget_user_pages() returns. But this means the race with page\nreclaim, write_opcode() should not fail, it should retry and\nread this page again. Probably the race with remove_mapping() is\nnot possible due to page_freeze_refs() logic, but afaics at\nleast shmem_writepage()-\u003eshmem_delete_from_page_cache() can\nclear -\u003emapping.\n\nWe could change __replace_page() to return -EAGAIN in this case,\nbut it would be better to simply use the caller\u0027s vaddr and rely\non page_check_address().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182216.GA20311@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f403072c6108e15f319a4a5036b650c77760522c",
      "tree": "196781f30871635b7c8fc702a7566b5ed09e525c",
      "parents": [
        "35d56ca9d401d9d0ac8d91e4db1485af5f38f6fd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 29 20:22:12 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Jul 30 11:27:18 2012 +0200"
      },
      "message": "uprobes: Don\u0027t recheck vma/f_mapping in write_opcode()\n\nwrite_opcode() rechecks valid_vma() and -\u003ef_mapping, this is\npointless. The caller, register_for_each_vma() or uprobe_mmap(),\nhas already done these checks under mmap_sem.\n\nTo clarify, uprobe_mmap() checks valid_vma() only, but we can\nrely on build_probe_list(vm_file-\u003ef_mapping-\u003ehost).\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar.vnet.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20120729182212.GA20304@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "a51d9eaa41866ab6b4b6ecad7b621f8b66ece0dc",
      "tree": "f8ab532f946ec7f9ccdabb6a394d952981084122",
      "parents": [
        "800179c9b8a1e796e441674776d11cd4c05d61d7"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Wed Jul 25 17:29:08 2012 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 29 21:43:08 2012 +0400"
      },
      "message": "fs: add link restriction audit reporting\n\nAdds audit messages for unexpected link restriction violations so that\nsystem owners will have some sort of potentially actionable information\nabout misbehaving processes.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "800179c9b8a1e796e441674776d11cd4c05d61d7",
      "tree": "5760992f4453c35b57b2686d8b8d5caee239b637",
      "parents": [
        "3134f37e931d75931bdf6d4eacd82a3fd26eca7c"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Wed Jul 25 17:29:07 2012 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 29 21:37:58 2012 +0400"
      },
      "message": "fs: add link restrictions\n\nThis adds symlink and hardlink restrictions to the Linux VFS.\n\nSymlinks:\n\nA long-standing class of security issues is the symlink-based\ntime-of-check-time-of-use race, most commonly seen in world-writable\ndirectories like /tmp. The common method of exploitation of this flaw\nis to cross privilege boundaries when following a given symlink (i.e. a\nroot process follows a symlink belonging to another user). For a likely\nincomplete list of hundreds of examples across the years, please see:\nhttp://cve.mitre.org/cgi-bin/cvekey.cgi?keyword\u003d/tmp\n\nThe solution is to permit symlinks to only be followed when outside\na sticky world-writable directory, or when the uid of the symlink and\nfollower match, or when the directory owner matches the symlink\u0027s owner.\n\nSome pointers to the history of earlier discussion that I could find:\n\n 1996 Aug, Zygo Blaxell\n  http://marc.info/?l\u003dbugtraq\u0026m\u003d87602167419830\u0026w\u003d2\n 1996 Oct, Andrew Tridgell\n  http://lkml.indiana.edu/hypermail/linux/kernel/9610.2/0086.html\n 1997 Dec, Albert D Cahalan\n  http://lkml.org/lkml/1997/12/16/4\n 2005 Feb, Lorenzo Hernández García-Hierro\n  http://lkml.indiana.edu/hypermail/linux/kernel/0502.0/1896.html\n 2010 May, Kees Cook\n  https://lkml.org/lkml/2010/5/30/144\n\nPast objections and rebuttals could be summarized as:\n\n - Violates POSIX.\n   - POSIX didn\u0027t consider this situation and it\u0027s not useful to follow\n     a broken specification at the cost of security.\n - Might break unknown applications that use this feature.\n   - Applications that break because of the change are easy to spot and\n     fix. Applications that are vulnerable to symlink ToCToU by not having\n     the change aren\u0027t. Additionally, no applications have yet been found\n     that rely on this behavior.\n - Applications should just use mkstemp() or O_CREATE|O_EXCL.\n   - True, but applications are not perfect, and new software is written\n     all the time that makes these mistakes; blocking this flaw at the\n     kernel is a single solution to the entire class of vulnerability.\n - This should live in the core VFS.\n   - This should live in an LSM. (https://lkml.org/lkml/2010/5/31/135)\n - This should live in an LSM.\n   - This should live in the core VFS. (https://lkml.org/lkml/2010/8/2/188)\n\nHardlinks:\n\nOn systems that have user-writable directories on the same partition\nas system files, a long-standing class of security issues is the\nhardlink-based time-of-check-time-of-use race, most commonly seen in\nworld-writable directories like /tmp. The common method of exploitation\nof this flaw is to cross privilege boundaries when following a given\nhardlink (i.e. a root process follows a hardlink created by another\nuser). Additionally, an issue exists where users can \"pin\" a potentially\nvulnerable setuid/setgid file so that an administrator will not actually\nupgrade a system fully.\n\nThe solution is to permit hardlinks to only be created when the user is\nalready the existing file\u0027s owner, or if they already have read/write\naccess to the existing file.\n\nMany Linux users are surprised when they learn they can link to files\nthey have no access to, so this change appears to follow the doctrine\nof \"least surprise\". Additionally, this change does not violate POSIX,\nwhich states \"the implementation may require that the calling process\nhas permission to access the existing file\"[1].\n\nThis change is known to break some implementations of the \"at\" daemon,\nthough the version used by Fedora and Ubuntu has been fixed[2] for\na while. Otherwise, the change has been undisruptive while in use in\nUbuntu for the last 1.5 years.\n\n[1] http://pubs.opengroup.org/onlinepubs/9699919799/functions/linkat.html\n[2] http://anonscm.debian.org/gitweb/?p\u003dcollab-maint/at.git;a\u003dcommitdiff;h\u003df4114656c3a6c6f6070e315ffdf940a49eda3279\n\nThis patch is based on the patches in Openwall and grsecurity, along with\nsuggestions from Al Viro. I have added a sysctl to enable the protected\nbehavior, and documentation.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "8ded2bbc1845e19c771eb55209aab166ef011243",
      "tree": "9ab400cdd407a9426fdfcc3432d7c0e19a0607ed",
      "parents": [
        "4cb38750d49010ae72e718d46605ac9ba5a851b4"
      ],
      "author": {
        "name": "Josh Boyer",
        "email": "jwboyer@redhat.com",
        "time": "Wed Jul 25 10:40:34 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 13:36:43 2012 -0700"
      },
      "message": "posix_types.h: Cleanup stale __NFDBITS and related definitions\n\nRecently, glibc made a change to suppress sign-conversion warnings in\nFD_SET (glibc commit ceb9e56b3d1).  This uncovered an issue with the\nkernel\u0027s definition of __NFDBITS if applications #include\n\u003clinux/types.h\u003e after including \u003csys/select.h\u003e.  A build failure would\nbe seen when passing the -Werror\u003dsign-compare and -D_FORTIFY_SOURCE\u003d2\nflags to gcc.\n\nIt was suggested that the kernel should either match the glibc\ndefinition of __NFDBITS or remove that entirely.  The current in-kernel\nuses of __NFDBITS can be replaced with BITS_PER_LONG, and there are no\nuses of the related __FDELT and __FDMASK defines.  Given that, we\u0027ll\ncontinue the cleanup that was started with commit 8b3d1cda4f5f\n(\"posix_types: Remove fd_set macros\") and drop the remaining unused\nmacros.\n\nAdditionally, linux/time.h has similar macros defined that expand to\nnothing so we\u0027ll remove those at the same time.\n\nReported-by: Jeff Law \u003claw@redhat.com\u003e\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCC: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Josh Boyer \u003cjwboyer@redhat.com\u003e\n[ .. and fix up whitespace as per akpm ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "79071638ce655c1f78a50d05c7dae0ad04a3e92a",
      "tree": "d9e76997c418b78a2485ac50d5970f7d420a5600",
      "parents": [
        "44a6b8442190cf213081060b610dae2e822f802b",
        "8323f26ce3425460769605a6aece7a174edaa7d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 13:08:01 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 13:08:01 2012 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler changes from Ingo Molnar:\n \"The biggest change is a performance improvement on SMP systems:\n\n  | 4 socket 40 core + SMT Westmere box, single 30 sec tbench\n  | runs, higher is better:\n  |\n  | clients     1       2       4        8       16       32       64      128\n  |..........................................................................\n  | pre        30      41     118      645     3769     6214    12233    14312\n  | post      299     603    1211     2418     4697     6847    11606    14557\n  |\n  | A nice increase in performance.\n\n  which speedup is particularly noticeable on heavily interacting\n  few-tasks workloads, so the changes should help desktop-style Xorg\n  workloads and interactivity as well, on multi-core CPUs.\n\n  There are also cpuset suspend behavior fixes/restructuring and various\n  smaller tweaks.\"\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Fix race in task_group()\n  sched: Improve balance_cpu() to consider other cpus in its group as target of (pinned) task\n  sched: Reset loop counters if all tasks are pinned and we need to redo load balance\n  sched: Reorder \u0027struct lb_env\u0027 members to reduce its size\n  sched: Improve scalability via \u0027CPU buddies\u0027, which withstand random perturbations\n  cpusets: Remove/update outdated comments\n  cpusets, hotplug: Restructure functions that are invoked during hotplug\n  cpusets, hotplug: Implement cpuset tree traversal in a helper function\n  CPU hotplug, cpusets, suspend: Don\u0027t modify cpusets during suspend/resume\n  sched/x86: Remove broken power estimation\n"
    },
    {
      "commit": "fa93669a1917f93b09142d4b2298329b82d7d36d",
      "tree": "7f8d6dc9d1fbb086c59a799a3a7137c46fb9959e",
      "parents": [
        "b13bc8dda81c54a66a1c84e66f60b8feba659f28",
        "6791457a090d9a234a40b501c2536f0aefaeae4b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 11:25:33 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 11:25:33 2012 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core changes from Greg Kroah-Hartman:\n \"Here\u0027s the big driver core pull request for 3.6-rc1.\n\n  Unlike 3.5, this kernel should be a lot tamer, with the printk changes\n  now settled down.  All we have here is some extcon driver updates, w1\n  driver updates, a few printk cleanups that weren\u0027t needed for 3.5, but\n  are good to have now, and some other minor fixes/changes in the driver\n  core.\n\n  All of these have been in the linux-next releases for a while now.\n\n  Signed-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\"\n\n* tag \u0027driver-core-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (38 commits)\n  printk: Export struct log size and member offsets through vmcoreinfo\n  Drivers: hv: Change the hex constant to a decimal constant\n  driver core: don\u0027t trigger uevent after failure\n  extcon: MAX77693: Add extcon-max77693 driver to support Maxim MAX77693 MUIC device\n  sysfs: fail dentry revalidation after namespace change fix\n  sysfs: fail dentry revalidation after namespace change\n  extcon: spelling of detach in function doc\n  extcon: arizona: Stop microphone detection if we give up on it\n  extcon: arizona: Update cable reporting calls and split headset\n  PM / Runtime: Do not increment device usage counts before probing\n  kmsg - do not flush partial lines when the console is busy\n  kmsg - export \"continuation record\" flag to /dev/kmsg\n  kmsg - avoid warning for CONFIG_PRINTK\u003dn compilations\n  kmsg - properly print over-long continuation lines\n  driver-core: Use kobj_to_dev instead of re-implementing it\n  driver-core: Move kobj_to_dev from genhd.h to device.h\n  driver core: Move deferred devices to the end of dpm_list before probing\n  driver core: move uevent call to driver_register\n  driver core: fix shutdown races with probe/remove(v3)\n  Extcon: Arizona: Add driver for Wolfson Arizona class devices\n  ...\n"
    },
    {
      "commit": "b13bc8dda81c54a66a1c84e66f60b8feba659f28",
      "tree": "100a26eada424fa5d9b0e5eaaf4e23b8fa036fc8",
      "parents": [
        "9fc377799bc9bfd8d5cb35d0d1ea2e2458cbdbb3",
        "419e9266884fa853179ab726c27a63a9d3ae46e3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 11:14:49 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 26 11:14:49 2012 -0700"
      },
      "message": "Merge tag \u0027staging-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging\n\nPull staging tree patches from Greg Kroah-Hartman:\n \"Here\u0027s the big staging tree merge for the 3.6-rc1 merge window.\n\n  There are some patches in here outside of drivers/staging/, notibly\n  the iio code (which is still stradeling the staging / not staging\n  boundry), the pstore code, and the tracing code.  All of these have\n  gotten acks from the various subsystem maintainers to be included in\n  this tree.  The pstore and tracing patches are related, and are coming\n  here as they replace one of the android staging drivers.\n\n  Otherwise, the normal staging mess.  Lots of cleanups and a few new\n  drivers (some iio drivers, and the large csr wireless driver\n  abomination.)\n\n  Signed-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\"\n\nFixed up trivial conflicts in drivers/staging/comedi/drivers/s626.h and\ndrivers/staging/gdm72xx/netlink_k.c\n\n* tag \u0027staging-3.6-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1108 commits)\n  staging: csr: delete a bunch of unused library functions\n  staging: csr: remove csr_utf16.c\n  staging: csr: remove csr_pmem.h\n  staging: csr: remove CsrPmemAlloc\n  staging: csr: remove CsrPmemFree()\n  staging: csr: remove CsrMemAllocDma()\n  staging: csr: remove CsrMemCalloc()\n  staging: csr: remove CsrMemAlloc()\n  staging: csr: remove CsrMemFree() and CsrMemFreeDma()\n  staging: csr: remove csr_util.h\n  staging: csr: remove CsrOffSetOf()\n  stating: csr: remove unneeded #includes in csr_util.c\n  staging: csr: make CsrUInt16ToHex static\n  staging: csr: remove CsrMemCpy()\n  staging: csr: remove CsrStrLen()\n  staging: csr: remove CsrVsnprintf()\n  staging: csr: remove CsrStrDup\n  staging: csr: remove CsrStrChr()\n  staging: csr: remove CsrStrNCmp\n  staging: csr: remove CsrStrCmp\n  ...\n"
    },
    {
      "commit": "895dd92c032e1604aa0d7afaef7716e058343b67",
      "tree": "8662091be28c24a44287fc43790cf92547499a83",
      "parents": [
        "045e7e6047037d93824d265cc30c33eb631f8883"
      ],
      "author": {
        "name": "Andrew Vagin",
        "email": "avagin@openvz.org",
        "time": "Thu Jul 12 14:14:29 2012 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 26 12:23:10 2012 +0200"
      },
      "message": "sched: Deliver sched_switch events to the current task\n\nOtherwise they can\u0027t be filtered for a defined task:\n\n  perf record -e sched:sched_switch ./foo\n\nThis command doesn\u0027t report any events without this patch.\n\nI think it isn\u0027t a security concern if someone knows who will\nbe executed next - this can already be observed by polling /proc\nstate. By default perf is disabled for non-root users in any case.\n\nI need these events for profiling sleep times.  sched_switch is used for\ngetting callchains and sched_stat_* is used for getting time periods.\nThese events are combined in user space, then it can be analyzed by\nperf tools.\n\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Arun Sharma \u003casharma@fb.com\u003e\nLink: http://lkml.kernel.org/r/1342088069-1005148-1-git-send-email-avagin@openvz.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "014acbf0d5c8445e0ff88ae60edd676dd9cc461c",
      "tree": "673eabcb0330688967e97f1311749262d7bc41b4",
      "parents": [
        "45afb1734fa6323a8ba08bd6c392ee227df67dde"
      ],
      "author": {
        "name": "Ying Xue",
        "email": "ying.xue0@gmail.com",
        "time": "Thu Jul 12 15:03:42 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 26 11:47:00 2012 +0200"
      },
      "message": "sched: Fix minor code style issues\n\nDelete redudant spaces between type name and data name or operators.\n\nSigned-off-by: Ying Xue \u003cying.xue0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1342076622-6606-1-git-send-email-ying.xue0@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "45afb1734fa6323a8ba08bd6c392ee227df67dde",
      "tree": "88aa89649c152f50924cd8e5fc49962b6834d727",
      "parents": [
        "6956dc568f34107f1d02b24f87efe7250803fc87"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Sat Jul 07 16:49:02 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Thu Jul 26 11:46:59 2012 +0200"
      },
      "message": "sched: Use task_rq_unlock() in __sched_setscheduler()\n\nIt seems there\u0027s no specific reason to open-code it.  I guess\ncommit 0122ec5b02f76 (\"sched: Add p-\u003epi_lock to task_rq_lock()\")\nsimply missed it.  Let\u0027s be consistent with others.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1341647342-6742-1-git-send-email-namhyung@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "dc9b229a58dc0dfed34272ff26c6d5fd17c674e0",
      "tree": "722795c29e6037d971e76d52d607d7a70cbbefaf",
      "parents": [
        "e2b34e311be3a57c9abcb927e37a57e38913714c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jul 13 19:29:45 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jul 25 12:46:38 2012 +0200"
      },
      "message": "genirq: Allow irq chips to mark themself oneshot safe\n\nSome interrupt chips like MSI are oneshot safe by implementation. For\nthose interrupts we can avoid the mask/unmask sequence for threaded\ninterrupt handlers.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/alpine.LFD.2.02.1207132056540.32033@ionos\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Jan Kiszka \u003cjan.kiszka@web.de\u003e\n"
    },
    {
      "commit": "f5a1ad057e6da5d0fc9c5677ff44797d193d3e62",
      "tree": "41eba9c89a1792d07db9110177fe62187a717f4e",
      "parents": [
        "4c0946c47463defa681b83294383dc996d255bb7"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Fri Jul 20 10:33:19 2012 +0100"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 24 22:37:30 2012 -0600"
      },
      "message": "irqdomain: Improve diagnostics when a domain mapping fails\n\nWhen the map operation fails log the error code we get and add a WARN_ON()\nso we get a backtrace (which should help work out which interrupt is the\nsource of the issue).\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "4c0946c47463defa681b83294383dc996d255bb7",
      "tree": "97443f85088db0aac64bda73d3e7e4d2261623ba",
      "parents": [
        "6aeea3ecc33b1f36dbc3b80461d15a7052ae424f"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Sun Jun 03 22:04:39 2012 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 24 22:37:23 2012 -0600"
      },
      "message": "irqdomain: eliminate slow-path revmap lookups\n\nWith the current state of irq_domain, the reverse map is always updated\nwhen new IRQs get mapped.  This means that the irq_find_mapping() function\ncan be simplified to execute the revmap lookup functions unconditionally\n\nThis patch adds lookup functions for the revmaps that don\u0027t yet have one\nand removes the slow path lookup code path.\n\nv8: Broke out unrelated changes into separate patches.  Rebased on Paul\u0027s irq\n    association patches.\nv7: Rebased to irqdomain/next for v3.4 and applied before the removal of \u0027hint\u0027\nv6: Remove the slow path entirely.  The only place where the slow path\n    could get called is for a linear mapping if the hwirq number is larger\n    than the linear revmap size.  There shouldn\u0027t be any interrupt\n    controllers that do that.\nv5: rewrite to not use a -\u003erevmap() callback.  It is simpler, smaller,\n    safer and faster to open code each of the revmap lookups directly into\n    irq_find_mapping() via a switch statement.\nv4: Fix build failure on incorrect variable reference.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\n"
    },
    {
      "commit": "6aeea3ecc33b1f36dbc3b80461d15a7052ae424f",
      "tree": "bbd273e3e0ca76094aed8e9c77e5adfe2b07f779",
      "parents": [
        "9844a5524ec532aee826c35e3031637c7fc8287b",
        "bdc0077af574800d24318b6945cf2344e8dbb050"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 24 22:31:09 2012 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 24 22:34:40 2012 -0600"
      },
      "message": "Merge remote-tracking branch \u0027origin\u0027 into irqdomain/next\n"
    },
    {
      "commit": "bdc0077af574800d24318b6945cf2344e8dbb050",
      "tree": "efbcb8f2d8c2f1e42130e983405e49f2b95246f7",
      "parents": [
        "801b03653fc04de2cc5bc83c06de504d41345b63",
        "e96eb23d82b4246cce4eeb14a7eedbbdcf37b3d4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 18:11:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 18:11:22 2012 -0700"
      },
      "message": "Merge tag \u0027scsi-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi\n\nPull first round of SCSI updates from James Bottomley:\n \"The most important feature of this patch set is the new async\n  infrastructure that makes sure async_synchronize_full() synchronizes\n  all domains and allows us to remove all the hacks (like having\n  scsi_complete_async_scans() in the device base code) and means that\n  the async infrastructure will \"just work\" in future.\n\n  The rest is assorted driver updates (aacraid, bnx2fc, virto-scsi,\n  megaraid, bfa, lpfc, qla2xxx, qla4xxx) plus a lot of infrastructure\n  work in sas and FC.\n\n  Signed-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\"\n\n* tag \u0027scsi-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (97 commits)\n  [SCSI] Revert \"[SCSI] fix async probe regression\"\n  [SCSI] cleanup usages of scsi_complete_async_scans\n  [SCSI] queue async scan work to an async_schedule domain\n  [SCSI] async: make async_synchronize_full() flush all work regardless of domain\n  [SCSI] async: introduce \u0027async_domain\u0027 type\n  [SCSI] bfa: Fix to set correct return error codes and misc cleanup.\n  [SCSI] aacraid: Series 7 Async. (performance) mode support\n  [SCSI] aha152x: Allow use on 64bit systems\n  [SCSI] virtio-scsi: Add vdrv-\u003escan for post VIRTIO_CONFIG_S_DRIVER_OK LUN scanning\n  [SCSI] bfa: squelch lockdep complaint with a spin_lock_init\n  [SCSI] qla2xxx: remove unnecessary reads of PCI_CAP_ID_EXP\n  [SCSI] qla4xxx: remove unnecessary read of PCI_CAP_ID_EXP\n  [SCSI] ufs: fix incorrect return value about SUCCESS and FAILED\n  [SCSI] ufs: reverse the ufshcd_is_device_present logic\n  [SCSI] ufs: use module_pci_driver\n  [SCSI] usb-storage: update usb devices for write cache quirk in quirk list.\n  [SCSI] usb-storage: add support for write cache quirk\n  [SCSI] set to WCE if usb cache quirk is present.\n  [SCSI] virtio-scsi: hotplug support for virtio-scsi\n  [SCSI] virtio-scsi: split scatterlist per target\n  ...\n"
    },
    {
      "commit": "614a6d4341b3760ca98a1c2c09141b71db5d1e90",
      "tree": "6345a6fe908e002f2bd6056427d49b2d0e5652a5",
      "parents": [
        "a08489c569dc174cff97d2cb165aa81e3f1501cc",
        "9a8054aa5d7a98106f72d9ab76e26ebd42320ee0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 17:47:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 17:47:44 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.6\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup changes from Tejun Heo:\n \"Nothing too interesting.  A minor bug fix and some cleanups.\"\n\n* \u0027for-3.6\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  cgroup: Update remount documentation\n  cgroup: cgroup_rm_files() was calling simple_unlink() with the wrong inode\n  cgroup: Remove populate() documentation\n  cgroup: remove hierarchy_mutex\n"
    },
    {
      "commit": "a08489c569dc174cff97d2cb165aa81e3f1501cc",
      "tree": "c583700a11bab82ea864425004dd5bb03bf8a987",
      "parents": [
        "08d9329c29ec98477e8ac2f7a513f2bfa3e9f3c5",
        "6fec10a1a5866dda3cd6a825a521fc7c2f226ba5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 17:46:16 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 17:46:16 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.6\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\nPull workqueue changes from Tejun Heo:\n \"There are three major changes.\n\n   - WQ_HIGHPRI has been reimplemented so that high priority work items\n     are served by worker threads with -20 nice value from dedicated\n     highpri worker pools.\n\n   - CPU hotplug support has been reimplemented such that idle workers\n     are kept across CPU hotplug events.  This makes CPU hotplug cheaper\n     (for PM) and makes the code simpler.\n\n   - flush_kthread_work() has been reimplemented so that a work item can\n     be freed while executing.  This removes an annoying behavior\n     difference between kthread_worker and workqueue.\"\n\n* \u0027for-3.6\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: fix spurious CPU locality WARN from process_one_work()\n  kthread_worker: reimplement flush_kthread_work() to allow freeing the work item being executed\n  kthread_worker: reorganize to prepare for flush_kthread_work() reimplementation\n  workqueue: simplify CPU hotplug code\n  workqueue: remove CPU offline trustee\n  workqueue: don\u0027t butcher idle workers on an offline CPU\n  workqueue: reimplement CPU online rebinding to handle idle workers\n  workqueue: drop @bind from create_worker()\n  workqueue: use mutex for global_cwq manager exclusion\n  workqueue: ROGUE workers are UNBOUND workers\n  workqueue: drop CPU_DYING notifier operation\n  workqueue: perform cpu down operations from low priority cpu_notifier()\n  workqueue: reimplement WQ_HIGHPRI using a separate worker_pool\n  workqueue: introduce NR_WORKER_POOLS and for_each_worker_pool()\n  workqueue: separate out worker_pool flags\n  workqueue: use @pool instead of @gcwq or @cpu where applicable\n  workqueue: factor out worker_pool from global_cwq\n  workqueue: don\u0027t use WQ_HIGHPRI for unbound workqueues\n"
    },
    {
      "commit": "6dd53aa4563a2c69e80a24d2cc68d484b5ea2891",
      "tree": "0cca9f65984b524527910960d972fc6ef85fac88",
      "parents": [
        "f14121ab35912e3d2e57ac9a4ce1f9d4b7baeffb",
        "63b96f7baeba71966c723912c3f8f0274577f877"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 16:17:07 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 16:17:07 2012 -0700"
      },
      "message": "Merge tag \u0027for-3.6\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci\n\nPull PCI changes from Bjorn Helgaas:\n \"Host bridge hotplug:\n    - Add MMCONFIG support for hot-added host bridges (Jiang Liu)\n  Device hotplug:\n    - Move fixups from __init to __devinit (Sebastian Andrzej Siewior)\n    - Call FINAL fixups for hot-added devices, too (Myron Stowe)\n    - Factor out generic code for P2P bridge hot-add (Yinghai Lu)\n    - Remove all functions in a slot, not just those with _EJx (Amos\n      Kong)\n  Dynamic resource management:\n    - Track bus number allocation (struct resource tree per domain)\n      (Yinghai Lu)\n    - Make P2P bridge 1K I/O windows work with resource reassignment\n      (Bjorn Helgaas, Yinghai Lu)\n    - Disable decoding while updating 64-bit BARs (Bjorn Helgaas)\n  Power management:\n    - Add PCIe runtime D3cold support (Huang Ying)\n  Virtualization:\n    - Add VFIO infrastructure (ACS, DMA source ID quirks) (Alex\n      Williamson)\n    - Add quirks for devices with broken INTx masking (Jan Kiszka)\n  Miscellaneous:\n    - Fix some PCI Express capability version issues (Myron Stowe)\n    - Factor out some arch code with a weak, generic, pcibios_setup()\n      (Myron Stowe)\"\n\n* tag \u0027for-3.6\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (122 commits)\n  PCI: hotplug: ensure a consistent return value in error case\n  PCI: fix undefined reference to \u0027pci_fixup_final_inited\u0027\n  PCI: build resource code for M68K architecture\n  PCI: pciehp: remove unused pciehp_get_max_lnk_width(), pciehp_get_cur_lnk_width()\n  PCI: reorder __pci_assign_resource() (no change)\n  PCI: fix truncation of resource size to 32 bits\n  PCI: acpiphp: merge acpiphp_debug and debug\n  PCI: acpiphp: remove unused res_lock\n  sparc/PCI: replace pci_cfg_fake_ranges() with pci_read_bridge_bases()\n  PCI: call final fixups hot-added devices\n  PCI: move final fixups from __init to __devinit\n  x86/PCI: move final fixups from __init to __devinit\n  MIPS/PCI: move final fixups from __init to __devinit\n  PCI: support sizing P2P bridge I/O windows with 1K granularity\n  PCI: reimplement P2P bridge 1K I/O windows (Intel P64H2)\n  PCI: disable MEM decoding while updating 64-bit MEM BARs\n  PCI: leave MEM and IO decoding disabled during 64-bit BAR sizing, too\n  PCI: never discard enable/suspend/resume_early/resume fixups\n  PCI: release temporary reference in __nv_msi_ht_cap_quirk()\n  PCI: restructure \u0027pci_do_fixups()\u0027\n  ...\n"
    },
    {
      "commit": "f14121ab35912e3d2e57ac9a4ce1f9d4b7baeffb",
      "tree": "7d5b4799998760e0a88166185abff1147d4ee04d",
      "parents": [
        "914311c9fb9bc01a215de9d848b72b5449c0e342",
        "e95d8aafa5d911bf523bc47fe89f3336eb8a1b51"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 14:07:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 14:07:22 2012 -0700"
      },
      "message": "Merge tag \u0027dt-for-3.6\u0027 of git://sources.calxeda.com/kernel/linux\n\nPull devicetree updates from Rob Herring:\n \"A small set of changes for devicetree:\n   - Couple of Documentation fixes\n   - Addition of new helper function of_node_full_name\n   - Improve of_parse_phandle_with_args return values\n   - Some NULL related sparse fixes\"\n\nGrant\u0027s busy packing.\n\n* tag \u0027dt-for-3.6\u0027 of git://sources.calxeda.com/kernel/linux:\n  of: mtd: nuke useless const qualifier\n  devicetree: add helper inline for retrieving a node\u0027s full name\n  of: return -ENOENT when no property\n  usage-model.txt: fix typo machine_init-\u003einit_machine\n  of: Fix null pointer related warnings in base.c file\n  LED: Fix missing semicolon in OF documentation\n  of: fix a few typos in the binding documentation\n"
    },
    {
      "commit": "3c4cfadef6a1665d9cd02a543782d03d3e6740c6",
      "tree": "3df72faaacd494d5ac8c9668df4f529b1b5e4457",
      "parents": [
        "e017507f37d5cb8b541df165a824958bc333bec3",
        "320f5ea0cedc08ef65d67e056bcb9d181386ef2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 10:01:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 24 10:01:50 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking changes from David S Miller:\n\n 1) Remove the ipv4 routing cache.  Now lookups go directly into the FIB\n    trie and use prebuilt routes cached there.\n\n    No more garbage collection, no more rDOS attacks on the routing\n    cache.  Instead we now get predictable and consistent performance,\n    no matter what the pattern of traffic we service.\n\n    This has been almost 2 years in the making.  Special thanks to\n    Julian Anastasov, Eric Dumazet, Steffen Klassert, and others who\n    have helped along the way.\n\n    I\u0027m sure that with a change of this magnitude there will be some\n    kind of fallout, but such things ought the be simple to fix at this\n    point.  Luckily I\u0027m not European so I\u0027ll be around all of August to\n    fix things :-)\n\n    The major stages of this work here are each fronted by a forced\n    merge commit whose commit message contains a top-level description\n    of the motivations and implementation issues.\n\n 2) Pre-demux of established ipv4 TCP sockets, saves a route demux on\n    input.\n\n 3) TCP SYN/ACK performance tweaks from Eric Dumazet.\n\n 4) Add namespace support for netfilter L4 conntrack helpers, from Gao\n    Feng.\n\n 5) Add config mechanism for Energy Efficient Ethernet to ethtool, from\n    Yuval Mintz.\n\n 6) Remove quadratic behavior from /proc/net/unix, from Eric Dumazet.\n\n 7) Support for connection tracker helpers in userspace, from Pablo\n    Neira Ayuso.\n\n 8) Allow userspace driven TX load balancing functions in TEAM driver,\n    from Jiri Pirko.\n\n 9) Kill off NLMSG_PUT and RTA_PUT macros, more gross stuff with\n    embedded gotos.\n\n10) TCP Small Queues, essentially minimize the amount of TCP data queued\n    up in the packet scheduler layer.  Whereas the existing BQL (Byte\n    Queue Limits) limits the pkt_sched --\u003e netdevice queuing levels,\n    this controls the TCP --\u003e pkt_sched queueing levels.\n\n    From Eric Dumazet.\n\n11) Reduce the number of get_page/put_page ops done on SKB fragments,\n    from Alexander Duyck.\n\n12) Implement protection against blind resets in TCP (RFC 5961), from\n    Eric Dumazet.\n\n13) Support the client side of TCP Fast Open, basically the ability to\n    send data in the SYN exchange, from Yuchung Cheng.\n\n    Basically, the sender queues up data with a sendmsg() call using\n    MSG_FASTOPEN, then they do the connect() which emits the queued up\n    fastopen data.\n\n14) Avoid all the problems we get into in TCP when timers or PMTU events\n    hit a locked socket.  The TCP Small Queues changes added a\n    tcp_release_cb() that allows us to queue work up to the\n    release_sock() caller, and that\u0027s what we use here too.  From Eric\n    Dumazet.\n\n15) Zero copy on TX support for TUN driver, from Michael S. Tsirkin.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1870 commits)\n  genetlink: define lockdep_genl_is_held() when CONFIG_LOCKDEP\n  r8169: revert \"add byte queue limit support\".\n  ipv4: Change rt-\u003ert_iif encoding.\n  net: Make skb-\u003eskb_iif always track skb-\u003edev\n  ipv4: Prepare for change of rt-\u003ert_iif encoding.\n  ipv4: Remove all RTCF_DIRECTSRC handliing.\n  ipv4: Really ignore ICMP address requests/replies.\n  decnet: Don\u0027t set RTCF_DIRECTSRC.\n  net/ipv4/ip_vti.c: Fix __rcu warnings detected by sparse.\n  ipv4: Remove redundant assignment\n  rds: set correct msg_namelen\n  openvswitch: potential NULL deref in sample()\n  tcp: dont drop MTU reduction indications\n  bnx2x: Add new 57840 device IDs\n  tcp: avoid oops in tcp_metrics and reset tcpm_stamp\n  niu: Change niu_rbr_fill() to use unlikely() to check niu_rbr_add_page() return value\n  niu: Fix to check for dma mapping errors.\n  net: Fix references to out-of-scope variables in put_cmsg_compat()\n  net: ethernet: davinci_emac: add pm_runtime support\n  net: ethernet: davinci_emac: Remove unnecessary #include\n  ...\n"
    },
    {
      "commit": "b44d50dcacea0d485ca2ff9140f8cc28ee22f28d",
      "tree": "5c1702b71fd15a79381edf6fe83b202212d3b387",
      "parents": [
        "f726a697d06102e7a1fc0a87308cb30a84580205"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Jul 23 16:22:37 2012 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 24 16:48:45 2012 +0200"
      },
      "message": "time: Fix casting issue in tk_set_xtime and tk_xtime_add\n\ncommit 1e75fa8b (time: Condense timekeeper.xtime into xtime_sec)\nintroduced helper functions which apply a timespec to the core\ninternal timekeeper data. The internal storage type is u64. The\ntimespec tv_nsec value must be shifted before set or added to the\ninternal value. tv_nsec is a long, which is 32bit on a 32bit system,\nso without casting tv_nsec to u64 we lose the bits which are shifted\nover the 32bit boundary.\n\nAdd the proper typecasts.\n\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nAcked-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1343074957-16541-1-git-send-email-john.stultz@linaro.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6f7b0a2a5c0fb03be7c25bd1745baa50582348ef",
      "tree": "23bf0f7ccfeea44ef9aa8057d53ade47b69a8a44",
      "parents": [
        "f27071cb7fe3e1d37a9dbe6c0dfc5395cd40fa43"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhart@linux.intel.com",
        "time": "Fri Jul 20 11:53:31 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 24 16:02:57 2012 +0200"
      },
      "message": "futex: Forbid uaddr \u003d\u003d uaddr2 in futex_wait_requeue_pi()\n\nIf uaddr \u003d\u003d uaddr2, then we have broken the rule of only requeueing\nfrom a non-pi futex to a pi futex with this call. If we attempt this,\nas the trinity test suite manages to do, we miss early wakeups as\nq.key is equal to key2 (because they are the same uaddr). We will then\nattempt to dereference the pi_mutex (which would exist had the futex_q\nbeen properly requeued to a pi futex) and trigger a NULL pointer\ndereference.\n\nSigned-off-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/ad82bfe7f7d130247fbe2b5b4275654807774227.1342809673.git.dvhart@linux.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "f27071cb7fe3e1d37a9dbe6c0dfc5395cd40fa43",
      "tree": "8a44c9205cc78556da5847a8310c1749ec248608",
      "parents": [
        "b6070a8d9853eda010a549fa9a09eb8d7269b929"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhart@linux.intel.com",
        "time": "Fri Jul 20 11:53:30 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 24 16:02:57 2012 +0200"
      },
      "message": "futex: Fix bug in WARN_ON for NULL q.pi_state\n\nThe WARN_ON in futex_wait_requeue_pi() for a NULL q.pi_state was testing\nthe address (\u0026q.pi_state) of the pointer instead of the value\n(q.pi_state) of the pointer. Correct it accordingly.\n\nSigned-off-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/1c85d97f6e5f79ec389a4ead3e367363c74bd09a.1342809673.git.dvhart@linux.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b6070a8d9853eda010a549fa9a09eb8d7269b929",
      "tree": "b83d2acd7e1b7de62bb3d6e50c41b24a2184c9b1",
      "parents": [
        "40b3c43f042c2ba8915aff5c63708207ed7639cb"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhart@linux.intel.com",
        "time": "Fri Jul 20 11:53:29 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 24 16:02:56 2012 +0200"
      },
      "message": "futex: Test for pi_mutex on fault in futex_wait_requeue_pi()\n\nIf fixup_pi_state_owner() faults, pi_mutex may be NULL. Test\nfor pi_mutex !\u003d NULL before testing the owner against current\nand possibly unlocking it.\n\nSigned-off-by: Darren Hart \u003cdvhart@linux.intel.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/dc59890338fc413606f04e5c5b131530734dae3d.1342809673.git.dvhart@linux.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8323f26ce3425460769605a6aece7a174edaa7d1",
      "tree": "44daa0dafa49cedc9301efd1417c6c2ac338c1c7",
      "parents": [
        "88b8dac0a14c511ff41486b83a8c3d688936eec0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Jun 22 13:36:05 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:58:20 2012 +0200"
      },
      "message": "sched: Fix race in task_group()\n\nStefan reported a crash on a kernel before a3e5d1091c1 (\"sched:\nDon\u0027t call task_group() too many times in set_task_rq()\"), he\nfound the reason to be that the multiple task_group()\ninvocations in set_task_rq() returned different values.\n\nLooking at all that I found a lack of serialization and plain\nwrong comments.\n\nThe below tries to fix it using an extra pointer which is\nupdated under the appropriate scheduler locks. Its not pretty,\nbut I can\u0027t really see another way given how all the cgroup\nstuff works.\n\nReported-and-tested-by: Stefan Bader \u003cstefan.bader@canonical.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1340364965.18025.71.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "88b8dac0a14c511ff41486b83a8c3d688936eec0",
      "tree": "e98b2c8b1d47b136725f1a2862802e7db0bba927",
      "parents": [
        "bbf18b19495942cc730e8ff11fc3ffadf20cbfe1"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@linux.vnet.ibm.com",
        "time": "Tue Jun 19 17:43:15 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:58:06 2012 +0200"
      },
      "message": "sched: Improve balance_cpu() to consider other cpus in its group as target of (pinned) task\n\nCurrent load balance scheme requires only one cpu in a\nsched_group (balance_cpu) to look at other peer sched_groups for\nimbalance and pull tasks towards itself from a busy cpu. Tasks\nthus pulled by balance_cpu could later get picked up by cpus\nthat are in the same sched_group as that of balance_cpu.\n\nThis scheme however fails to pull tasks that are not allowed to\nrun on balance_cpu (but are allowed to run on other cpus in its\nsched_group). That can affect fairness and in some worst case\nscenarios cause starvation.\n\nConsider a two core (2 threads/core) system running tasks as\nbelow:\n\n          Core0            Core1\n         /     \\          /     \\\n\tC0     C1\t C2     C3\n        |      |         |      |\n        v      v         v      v\n\tF0     T1        F1     [idle]\n\t\t\t T2\n\n F0 \u003d SCHED_FIFO task (pinned to C0)\n F1 \u003d SCHED_FIFO task (pinned to C2)\n T1 \u003d SCHED_OTHER task (pinned to C1)\n T2 \u003d SCHED_OTHER task (pinned to C1 and C2)\n\nF1 could become a cpu hog, which will starve T2 unless C1 pulls\nit. Between C0 and C1 however, C0 is required to look for\nimbalance between cores, which will fail to pull T2 towards\nCore0. T2 will starve eternally in this case. The same scenario\ncan arise in presence of non-rt tasks as well (say we replace F1\nwith high irq load).\n\nWe tackle this problem by having balance_cpu move pinned tasks\nto one of its sibling cpus (where they can run). We first check\nif load balance goal can be met by ignoring pinned tasks,\nfailing which we retry move_tasks() with a new env-\u003edst_cpu.\n\nThis patch modifies load balance semantics on who can move load\ntowards a given cpu in a given sched_domain.\n\nBefore this patch, a given_cpu or a ilb_cpu acting on behalf of\nan idle given_cpu is responsible for moving load to given_cpu.\n\nWith this patch applied, balance_cpu can in addition decide on\nmoving some load to a given_cpu.\n\nThere is a remote possibility that excess load could get moved\nas a result of this (balance_cpu and given_cpu/ilb_cpu deciding\n*independently* and at *same* time to move some load to a\ngiven_cpu). However we should see less of such conflicting\ndecisions in practice and moreover subsequent load balance\ncycles should correct the excess load moved to given_cpu.\n\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FE06CDB.2060605@linux.vnet.ibm.com\n[ minor edits ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "bbf18b19495942cc730e8ff11fc3ffadf20cbfe1",
      "tree": "230cd53d8669da7c3881ded77651422b89615c16",
      "parents": [
        "85c1e7dae165acd004429f81fe52bfbf55b57a98"
      ],
      "author": {
        "name": "Prashanth Nageshappa",
        "email": "prashanth@linux.vnet.ibm.com",
        "time": "Tue Jun 19 17:52:07 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:55:37 2012 +0200"
      },
      "message": "sched: Reset loop counters if all tasks are pinned and we need to redo load balance\n\nWhile load balancing, if all tasks on the source runqueue are pinned,\nwe retry after excluding the corresponding source cpu. However, loop counters\nenv.loop and env.loop_break are not reset before retrying, which can lead\nto failure in moving the tasks. In this patch we reset env.loop and\nenv.loop_break to their inital values before we retry.\n\nSigned-off-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FE06EEF.2090709@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "85c1e7dae165acd004429f81fe52bfbf55b57a98",
      "tree": "e9423a9075004bec44dd09d981300af716f1f89c",
      "parents": [
        "970e178985cadbca660feb02f4d2ee3a09f7fdda"
      ],
      "author": {
        "name": "Prashanth Nageshappa",
        "email": "prashanth@linux.vnet.ibm.com",
        "time": "Tue Jun 19 17:47:34 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:55:20 2012 +0200"
      },
      "message": "sched: Reorder \u0027struct lb_env\u0027 members to reduce its size\n\nMembers of \u0027struct lb_env\u0027 are not in appropriate order to reuse compiler\nadded padding on 64bit architectures. In this patch we reorder those struct\nmembers and help reduce the size of the structure from 96 bytes to 80\nbytes on 64 bit architectures.\n\nSuggested-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4FE06DDE.7000403@linux.vnet.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "970e178985cadbca660feb02f4d2ee3a09f7fdda",
      "tree": "20f47abb069a5d13940e8cdc48dae5f5563eb59a",
      "parents": [
        "a1cd2b13f754b2c56fb87b8c4912c015f8f57c0c"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Jun 12 05:18:32 2012 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Jul 24 13:53:34 2012 +0200"
      },
      "message": "sched: Improve scalability via \u0027CPU buddies\u0027, which withstand random perturbations\n\nTraversing an entire package is not only expensive, it also leads to tasks\nbouncing all over a partially idle and possible quite large package.  Fix\nthat up by assigning a \u0027buddy\u0027 CPU to try to motivate.  Each buddy may try\nto motivate that one other CPU, if it\u0027s busy, tough, it may then try its\nSMT sibling, but that\u0027s all this optimization is allowed to cost.\n\nSibling cache buddies are cross-wired to prevent bouncing.\n\n4 socket 40 core + SMT Westmere box, single 30 sec tbench runs, higher is better:\n\n clients     1       2       4        8       16       32       64      128\n ..........................................................................\n pre        30      41     118      645     3769     6214    12233    14312\n post      299     603    1211     2418     4697     6847    11606    14557\n\nA nice increase in performance.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/1339471112.7352.32.camel@marge.simpson.net\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    }
  ],
  "next": "a1cd2b13f754b2c56fb87b8c4912c015f8f57c0c"
}
